我创建了一个Magento扩展,它使用/ etc/dir(对于我的模块)中的system.xml文件向我的配置添加字段.Magento 1.5目前是我的目标系统,但我也打算将兼容性扩展到1.4和.16
<merchantid translate="label">
<label>Merchant ID</label>
<frontend_type>text</frontend_type>
<sort_order>20</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>0</show_in_store>
</merchantid>
Run Code Online (Sandbox Code Playgroud)
我试图在运行时填充此字段的值.目前,我在我的插件中运行它:Mage::getStoreConfig('payment/mymerchant/merchantid');它返回字段中填充的值.
我需要能够以编程方式更新此字段,我试过这个:
$installer = new Mage_Core_Model_Resource_Setup();
$installer->startSetup();
$installer->setConfigData("payment/mymerchant/merchantid", "TEST");
$installer->endSetup();
Run Code Online (Sandbox Code Playgroud)
但没有成功.我也无法通过谷歌搜索问题,因为大多数结果似乎并不相关.
有没有人知道如何设置这些值?
如果您正在寻找默认值,您可以:
<config>
...
<default>
<payment>
<ezimerchant>
<merchantid>TEST</merchantid>
</ezimerchant>
</payment>
</default>
</config>
Run Code Online (Sandbox Code Playgroud)
如果您真的在寻找程序化解决方案,可以执行以下操作:
$configModel = Mage::getModel('core/config');
$configModel->saveConfig('payment/ezimerchant/merchantid','TEST');
Run Code Online (Sandbox Code Playgroud)
第三个参数是应对保存它,'默认','网站','商店'.第四个参数定义要将其保存的网站ID或商店ID.
编辑:您必须在执行此操作时禁用缓存,或者之后刷新/刷新缓存以使更改生效.
| 归档时间: |
|
| 查看次数: |
2773 次 |
| 最近记录: |