Yanıtlar:
Genellikle, bunu yapmamanız gerekiyor. Mage::getStoreConfig()
alanın yapılandırmasına bağlı olarak mağaza değerini, web sitesi değerini, genel değeri veya varsayılan değeri otomatik olarak döndürür.
Bununla birlikte, mağaza değerini gerçekten göz ardı etmeniz ve web sitesi değerini almanız gerekirse, şu şekilde yapabilirsiniz:
Mage::app()->getWebsite()->getConfig('.../.../...')
Bu, ayarların mağaza seviyesine miras kalması ve genellikle getStoreConfig()
web sitesi ayarlarını dikkate alması nedeniyle nadir görülen bir durumdur .
Kullanabilirsiniz Mage_Core_Model_Website::getConfig()
- ancak Mage_Core_Model_Store::getConfig()
bazı işlemlerin yapıldığı yerde de küçük bir fark olduğunun farkında olun (örneğin yerine koyma {{...}}
) - bu tür bir değiştirme işlemi web sitesi düzeyinde yapılmaz.
Değer yalnızca web sitesi düzeyinde değiştirilebilirse, başka bir seçenek web sitesinin yalnızca rastgele bir mağazasını elde edip kullanmaktır getStoreConfig()
.
Bu, biliniyorsa, belirli bir web sitesi kodu kullanılarak elde edilebilir.
$value = Mage::getConfig()->getNode('websites/[website_code]/section/group/field');
var_dump($value[0]);
Mage::app()->getWebsites()
ve web sitelerinden gelen kodları alabilirsiniz :$website->getCode()
Yanlış olabilirim ama hatırladığım kadarıyla, yapılandırma kapsamı her zaman mağazalara bağlı. Bir web sitesi düzeyinde bir değer belirlerseniz, mağaza düzeyinde farklı bir değer belirlemediğiniz sürece bu web sitesinin herhangi bir mağazasında kullanılabilir.
A web siteniz olduğunu ve A1 ve A2 mağazasının bu web sitesine ait mağazalar olduğunu söyleyin. A'nın verilen bir özellik için 5 değerine sahip olduğunu varsayalım.
Sonra Mage::getStoreConfig()
, bu özellik için hem A1 hem de A2 için 5 değerini döndürür. Özelliği A1 için 3 olarak ayarlarsanız, bu durumda A1 için 3,
Mage::getStoreConfig()
A2 için 5 döndürür.
Mage::app()->getWebsite($websiteId)->getConfig('web/unsecure/base_url')