Was ist der Unterschied zwischen $ _SERVER ['MAGE_RUN_TYPE'] 'store' und 'website'?


8

Für die Erstellung von Multistore Magento verwenden wir folgenden Code

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

Was ist der Unterschied , wenn wir verwenden , websiteanstatt storein $_SERVER['MAGE_RUN_TYPE'] : 'store';Code

Antworten:


13

Ich möchte KESHAV_PHP hier korrigieren.

$_SERVER['MAGE_RUN_TYPE']Definiert den Entitätstyp, mit dem am Ende das Geschäft ausgewählt wird. Wenn Sie ein bestimmtes Geschäft definieren, indem Sie hier übergeben store, wird das Geschäft geladen. Dies bedeutet insbesondere (im Gegensatz zu dem, was Keshav geschrieben hat), dass es keine Rolle spielt, ob der Store Teil der Standard-Website ist oder nicht.

Wenn Sie bestanden haben website, wird der Store geladen, der für die Website standardmäßig verwendet wird.

$_SERVER['MAGE_RUN_CODE']definiert den Code der Website oder des Geschäfts, wie in den Tabellen core_website.codeund definiert core_store.code.

Den gesamten Prozess finden Sie hier:

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

Wobei getStoreByWebsitenur die Standardgruppe abgerufen wird und dann aufgerufen wird, getStoreByGroupwodurch der Standardspeicher für die Gruppe abgerufen wird.


Fabelhafte Erklärung. + 1 für das Graben des Kerns :)
Rajeev K Tomy

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.