¿Cuál es la diferencia entre $ _SERVER ['MAGE_RUN_TYPE'] 'store' y 'website'

8

Para la creación de magento multinivel usamos el siguiente código

$mageRunCode = isset($_SERVER['MAGE_RUN_CODE']) ? $_SERVER['MAGE_RUN_CODE'] : '';
$mageRunType = isset($_SERVER['MAGE_RUN_TYPE']) ? $_SERVER['MAGE_RUN_TYPE'] : 'store';
Mage::run($mageRunCode, $mageRunType);

¿Cuál será la diferencia si usamos en websitelugar de storeen $_SERVER['MAGE_RUN_TYPE'] : 'store';código

Mukesh
fuente

Respuestas:

13

Quiero corregir KESHAV_PHP aquí.

$_SERVER['MAGE_RUN_TYPE']define el tipo de entidad que se utiliza para seleccionar la tienda al final. Si define una tienda específica pasando aquí store, la tienda se carga. Esto significa espacialmente (en contradicción con lo que escribió keshav), que no importa si la tienda es parte del sitio web predeterminado o no.

Si aprueba website, se carga la tienda, que es la predeterminada para el sitio web.

$_SERVER['MAGE_RUN_CODE']define el código del sitio web o tienda, como se define en las tablas core_website.codey core_store.code.

Todo el proceso se puede encontrar aquí:

\Mage_Core_Model_App::_initCurrentStore
switch ($scopeType) {
        case 'store':
            $this->_currentStore = $scopeCode;
            break;
        case 'group':
            $this->_currentStore = $this->_getStoreByGroup($scopeCode);
            break;
        case 'website':
            $this->_currentStore = $this->_getStoreByWebsite($scopeCode);
            break;
        default:
            $this->throwStoreException();
    }

Donde getStoreByWebsitesolo obtiene el grupo predeterminado y luego llama, getStoreByGroupque obtiene el almacén predeterminado para el grupo.

Fabian Blechschmidt
fuente
Explicación fabulosa. + 1 para excavar el núcleo :)
Rajeev K Tomy
1

Actualmente también estoy trabajando en un sitio web diferente en el sitio magento. En mi proyecto estoy creando tres sitios web con tiendas específicas para el sitio web.

$ server [mage_run_type]: sitio web significa que cuando el sitio se carga, magento carga el sitio web.

$ server [mage_runtype]: store significa que magento carga la tienda del sitio web predeterminado.

http://www.magentocommerce.com/wiki/4_-_themes_and_template_customization/navigation/multiple-website-setup

Sourav
fuente