Puoi semplicemente cambiare il nome del cookie adminhtml per i sottodomini.
Due modifiche al file app/code/core/Mage/Core/Controller/Varien/Action.php.
Nelle preDispatchrighe di cambio funzione
/** @var $session Mage_Core_Model_Session */
$session = Mage::getSingleton('core/session', array('name' => $this->_sessionNamespace))->start();
per
$namespace = $this->_sessionNamespace.($_SERVER['SERVER_NAME']=='subdomain.example.com'?'_subdomain':'');
/** @var $session Mage_Core_Model_Session */
$session = Mage::getSingleton('core/session', array('name' => $namespace))->start();
In setRedirectWithCookieCheckcambio di funzione
/** @var $session Mage_Core_Model_Session */
session = Mage::getSingleton('core/session', array('name' => $this->_sessionNamespace));
per
$namespace = $this->_sessionNamespace.($_SERVER['SERVER_NAME']=='subdomain.example.com'?'_subdomain':'');
/** @var $session Mage_Core_Model_Session */
$session = Mage::getSingleton('core/session', array('name' => $namespace));
E dopo quella ricerca di testo
Mage::getSingleton('core/session', array('name' => 'adminhtml'));
in tutti i file e sostituirlo con
Mage::getSingleton('core/session', array('name' => 'adminhtml'.($_SERVER['SERVER_NAME']=='subdomain.example.com'?'_subdomain':'')));
se si verificassero delle occorrenze.
.anteriore del dominio, è importante!