Odpowiedzi:
Zwykle nie powinieneś tego robić. Mage::getStoreConfig()
automatycznie zwróci wartość sklepu, wartość strony internetowej, wartość globalną lub wartość domyślną w zależności od konfiguracji pola.
Jeśli jednak naprawdę chcesz zignorować wartość sklepu i uzyskać wartość strony internetowej, możesz to zrobić w ten sposób:
Mage::app()->getWebsite()->getConfig('.../.../...')
Jest to rzadki przypadek, ponieważ ustawienia są dziedziczone do poziomu sklepu i zwykle getStoreConfig()
uwzględniają ustawienia witryny.
Możesz użyć Mage_Core_Model_Website::getConfig()
- ale pamiętaj, że istnieje niewielka różnica w tym, Mage_Core_Model_Store::getConfig()
gdzie odbywa się również przetwarzanie (na przykład podstawienie {{...}}
) - ten rodzaj podstawienia nie jest wykonywany na poziomie witryny.
Jeśli wartość można zmienić tylko na poziomie witryny, inną opcją byłoby uzyskanie tylko losowego sklepu na stronie, a następnie użycie getStoreConfig()
.
Można to uzyskać za pomocą określonego kodu witryny, jeśli jest znany.
$value = Mage::getConfig()->getNode('websites/[website_code]/section/group/field');
var_dump($value[0]);
Mage::app()->getWebsites()
i kod ze strony:$website->getCode()
Mogę się mylić, ale o ile pamiętam, zakres konfiguracji jest zawsze związany ze sklepami. Jeśli ustawisz wartość na poziomie witryny, będzie ona dostępna w dowolnym sklepie tej witryny, chyba że ustawisz inną wartość na poziomie sklepu.
Załóżmy, że masz witrynę A, a sklep A1 i A2 to sklepy tej witryny. Załóżmy, że A ma wartość 5 dla danej właściwości
Następnie Mage::getStoreConfig()
zwróci 5 dla tej właściwości zarówno dla A1, jak i A2. Jeśli ustawisz właściwość na 3 dla A1, wówczas
Mage::getStoreConfig()
zwróci 3 dla A1 i 5 dla A2 dla tej właściwości.
Mage::app()->getWebsite($websiteId)->getConfig('web/unsecure/base_url')