Risposte:
Di solito, non dovresti farlo. Mage::getStoreConfig()
restituirà automaticamente il valore del negozio, il valore del sito Web, il valore globale o il valore predefinito in base alla configurazione del campo.
Tuttavia, se hai davvero bisogno di ignorare il valore del negozio e ottenere il valore del sito Web, puoi farlo in questo modo:
Mage::app()->getWebsite()->getConfig('.../.../...')
Questo è un caso raro, poiché le impostazioni sono ereditate a livello di negozio e di solito getStoreConfig()
tengono conto delle impostazioni del sito Web.
Puoi utilizzare Mage_Core_Model_Website::getConfig()
- ma tieni presente che esiste una leggera differenza rispetto a Mage_Core_Model_Store::getConfig()
dove viene eseguita anche l'elaborazione (ad esempio la sostituzione di {{...}}
) - questo tipo di sostituzione non viene eseguita a livello di sito Web.
Se il valore può essere modificato solo a livello di sito Web, un'altra opzione sarebbe quella di ottenere solo qualche negozio casuale del sito Web e quindi utilizzare getStoreConfig()
.
Questo può essere derivato utilizzando il codice specifico del sito Web, se noto.
$value = Mage::getConfig()->getNode('websites/[website_code]/section/group/field');
var_dump($value[0]);
Mage::app()->getWebsites()
e il codice dal sito Web:$website->getCode()
Potrei sbagliarmi, ma per quanto ricordo, l'ambito della configurazione è sempre legato ai negozi. Se imposti un valore a livello di sito Web, sarà disponibile in qualsiasi negozio di quel sito Web a meno che non imposti un valore diverso a livello di negozio.
Supponi di avere il sito Web A e il negozio A1 e A2 sono negozi per quel sito Web. Supponiamo che A abbia il valore 5 per una determinata proprietà
Quindi Mage::getStoreConfig()
restituirà 5 per quella proprietà sia per A1 che per A2. Se si imposta la proprietà su 3 per A1,
Mage::getStoreConfig()
verrà restituito 3 per A1 e 5 per A2 per quella proprietà.
Mage::app()->getWebsite($websiteId)->getConfig('web/unsecure/base_url')