Magento - 以编程方式更改商店基本URL

时间:2012-12-04 16:27:55

标签: magento

我想以编程方式更改magento商店的基本网址(安全和不安全)。

可以在后端手动更改设置,如下图所示:

http://geo.magenting.com/m/kb/images/attachments/change-magento-base-url_1.jpg

我想将值改为4&每个商店都有5个。

这样的事情:

$store = Mage::getModel('core/store')->load($storeId);
$store -> setBaseUrlSecure("xyz.com");
$store -> save();

有关我如何做到的任何帮助?

3 个答案:

答案 0 :(得分:3)

最好在数据设置脚本中完成(不是“普通”安装脚本);见Mage_Core_Model_Resource_Setup::setConfigData()

在设置脚本中,循环存储并按如下方式设置数据:

/*
    ...
    @var $installer Mage_Core_Model_Resource_Setup
*/
$stores = Mage::app()->getStores();
foreach ($stores as $storeId => $store) {
    $installer->setConfigData('web/unsecure/base_url',$value,'stores',$storeId);
    $installer->setConfigData('web/secure/base_url',$sValue,'stores',$storeId);
}

/* ... */

显然,您需要确定如何为每个正确的商店注入URL。

答案 1 :(得分:1)

我知道一种方法是直接在数据库中更新数据,但可能有更好的方法:

SELECT * FROM core_config_data where path like 'web/unsecure/base_url' or path like 'web/secure/base_url';

范围为“store”时,scope_idstore_id。您可以在那里更新或插入值。

答案 2 :(得分:0)

对于生产环境,您可以在路径'web/unsecure/base_url'和路径'web/secure/base_url'只需{{base_url}}的数据库中写入。

所以Magento将你所使用的实际网址作为基本网址。