qual é a diferença entre $ _SERVER ['MAGE_RUN_TYPE'] 'store' e 'website'

8

Para a criação de magento de vários armazenamentos, usamos o código a seguir

$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);

Qual será a diferença se usarmos em websitevez de storeno $_SERVER['MAGE_RUN_TYPE'] : 'store';código

Mukesh
fonte

Respostas:

13

Quero corrigir KESHAV_PHP aqui.

$_SERVER['MAGE_RUN_TYPE']define o tipo de entidade que é usada para selecionar a loja no final. Se você definir uma loja específica passando aqui store, a loja será carregada. Isso significa espacialmente (em contradição com o que a keshav escreveu), que não importa se a loja faz parte do site padrão ou não.

Se você for aprovado website, a loja será carregada, o que é o padrão para o site.

$_SERVER['MAGE_RUN_CODE']define o código do site ou loja, conforme definido nas tabelas core_website.codee core_store.code.

Todo o processo pode ser encontrado aqui:

\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();
    }

Onde getStoreByWebsiteapenas obtém o grupo padrão e depois chama o getStoreByGroupque obtém o armazenamento padrão para o grupo.

Fabian Blechschmidt
fonte
Explicação Fabuloso + 1 para escavar núcleo :).
Rajeev K Tomy
1

Atualmente, também estou trabalhando em sites diferentes no site magento.No meu projeto, estou criando três sites com lojas específicas para o site.

$ server [mage_run_type]: website significa que quando o site é carregado, o magento carrega o site.

$ server [mage_runtype]: store significa que o magento carrega a loja do site padrão.

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

Sourav
fonte