Відповіді:
Зазвичай вам цього не слід робити. Mage::getStoreConfig()
автоматично поверне значення магазину, значення веб-сайту, глобальне значення або значення за замовчуванням залежно від конфігурації поля.
Однак якщо вам дійсно потрібно ігнорувати вартість магазину та отримати значення веб-сайту, ви можете зробити це так:
Mage::app()->getWebsite()->getConfig('.../.../...')
Це рідкісний випадок, оскільки налаштування успадковуються для зберігання рівня та зазвичай getStoreConfig()
враховують налаштування веб-сайту.
Ви можете використовувати Mage_Core_Model_Website::getConfig()
- але майте на увазі, що є незначна різниця в тому, Mage_Core_Model_Store::getConfig()
де також проводиться деяка обробка (наприклад, підміна {{...}}
) - такий вид заміни не робиться на рівні веб-сайту.
Якщо значення можна змінити лише на рівні веб-сайту, іншим варіантом було б отримати лише якийсь випадковий магазин веб-сайту, а потім використовувати getStoreConfig()
.
Це можна отримати за допомогою конкретного коду веб-сайту, якщо він відомий.
$value = Mage::getConfig()->getNode('websites/[website_code]/section/group/field');
var_dump($value[0]);
Mage::app()->getWebsites()
та код з веб-сайту:$website->getCode()
Я можу помилятися, але, наскільки я пам’ятаю, область конфігурації завжди прив’язана до магазинів. Якщо ви встановите значення на рівні веб-сайту, воно буде доступне в будь-якому магазині цього веб-сайту, якщо ви не встановите інше значення на рівні магазину.
Скажімо, у вас є веб-сайт A, а магазини A1 і A2 - це магазини для цього веб-сайту. Припустимо, що A має значення 5 для даної властивості
Тоді Mage::getStoreConfig()
поверне 5 для цього властивості як для A1, так і для A2. Якщо ви встановите для властивості 3 для A1, то
Mage::getStoreConfig()
повернете 3 для A1 та 5 для A2 для цього властивості.
Mage::app()->getWebsite($websiteId)->getConfig('web/unsecure/base_url')