app/code/local/Maglife/Core/etc/config.xml
<?xml version="1.0"?>
<config>
<global>
<models>
<core>
<rewrite>
<store>Maglife_Core_Model_Store</store>
</rewrite>
</core>
</models>
</global>
</config>
app/code/local/Maglife/Core/Model/Store.php
<?php
class Maglife_Core_Model_Store extends Mage_Core_Model_Store
{
protected function _processConfigValue($fullPath, $path, $node)
{
if (isset($this->_configCache[$path])) {
return $this->_configCache[$path];
}
if ($node->hasChildren()) {
$aValue = array();
foreach ($node->children() as $k => $v) {
$aValue[$k] = $this->_processConfigValue($fullPath . '/' . $k, $path . '/' . $k, $v);
}
$this->_configCache[$path] = $aValue;
return $aValue;
}
$sValue = (string) $node;
if (!empty($node['backend_model']) && !empty($sValue)) {
$backend = Mage::getModel((string) $node['backend_model']);
$backend->setPath($path)->setValue($sValue)->afterLoad();
$sValue = $backend->getValue();
}
if (is_string($sValue) && strpos($sValue, '{{') !== false) {
if (strpos($sValue, '{{unsecure_base_url}}') !== false) {
$unsecureBaseUrl = $this->getConfig(self::XML_PATH_UNSECURE_BASE_URL);
$sValue = str_replace('{{unsecure_base_url}}', $unsecureBaseUrl, $sValue);
} elseif (strpos($sValue, '{{secure_base_url}}') !== false) {
$secureBaseUrl = $this->getConfig(self::XML_PATH_SECURE_BASE_URL);
$sValue = str_replace('{{secure_base_url}}', $secureBaseUrl, $sValue);
} elseif (strpos($sValue, '{{base_url}}') !== false) {
$sValue = Mage::getConfig()->substDistroServerVars($sValue);
}
}
if(in_array($path,array('web/unsecure/base_url','web/secure/base_url','{{unsecure_base_url}}','{{secure_base_url}}'))){
$sValue = $_SERVER[HTTP_REFERER].str_replace($_SERVER[HTTP_REFERER],'',$sValue);
}
$this->_configCache[$path] = $sValue;
return $sValue;
}
}
?>
Great post.
ReplyDeletehttps://godotengine.org/qa/user/JeremyThompson