Mam więc kod sklepu i naprawdę chciałbym po prostu identyfikator sklepu. Idealnie nie chcę po prostu całkowicie ładować sklepu, ponieważ potrzebuję tylko identyfikatora.
Jednym z pomysłów było załadowanie tego za pośrednictwem kolekcji, ale zastanawiałem się, czy istnieje inny sposób za pośrednictwem pomocnika lub zasobu.
magento-1.9
stores
store-id
David Manners
źródło
źródło
Mage::app()->getStore($storeCode)->getId();
Odpowiedzi:
Nie testowałem tego, ale wydaje mi się, że pamiętam, że możesz uzyskać identyfikator, używając metody
loadConfig
w modeluMage_Core_Model_Store
Następnie możesz uzyskać identyfikator, dzwoniąc
getId()
na model.loadConfig
Metoda wykorzystuje załadowaną konfigurację do pobierania danych sklepuCo daje następujące wartości
źródło
Mage::getConfig()->getNode('stores')->{$code}
Mage::getModel('core/store')->load($storeCode, 'code')->getId()
Czy to nie jest najprostszy sposób?
źródło
Nie wiem, czy to jest coś, co jest charakterystyczne dla 1.9.0.0 ale nie mogłem dostać albo
Mage::getConfig()->getNode()->stores->{$code}
alboMage::getModel('core/store')->loadConfig($code)
(co w rzeczywistości połączeńMage::getConfig()->getNode()->stores->{$code}
), aby powrócić niczego.Pierwszy był bliski ... z subtelną zmianą formy, to daje wynik, chociaż może być więcej informacji niż potrzebujesz:
Dla mnie, aby uzyskać tylko identyfikator sklepu, zadziałało:
... wciąż nieefektywne, ładowanie wszystkich informacji o konfiguracji tylko dla jednej małej liczby. Ale hej, to Magento dla ciebie.
źródło
Następujące powinny działać:
źródło