有多个开发阶段,我想在文件中保留一些magento配置,而不是在数据库中,所以我可以让我的开发版本和生产版本同步。
所以我需要将“基本网址”放在不同的位置,这不是数据库,因为我想将其从生产导出到开发
有可能吗?
答案 0 :(得分:4)
有可能:
<default>
<web>
<unsecure>
<base_url>https://foo.dev/</base_url>
</unsecure>
<secure>
<base_url>https://foo.dev/</base_url>
</secure>
</web>
</default>
<websites>
<ws_code>
<web>
<unsecure>
<base_url>http://ws.foo.dev/</base_url>
</unsecure>
<secure>
<base_url>https://ws.foo.dev/</base_url>
</secure>
</web>
</ws_code>
</websites>
<stores>
<store_code>
<web>
<unsecure>
<base_url>http://store.foo.dev/</base_url>
</unsecure>
<secure>
<base_url>https://store.foo.dev/</base_url>
</secure>
</web>
</store_code>
</stores>
然而如果有人在管理员中保存(或已保存)System > Configuration > Web
部分,则该范围的配置文件中的值将不适用。
有几种保护条目的策略
使用基于文件的配置方法和通过管理员用户角色禁用对Web部分的访问(适用于所有用户)。 警告:您需要在配置中提供所有配置选项。
使用安装脚本(PHP)将base_url
条目写入core_config_data
表,并通过adminhtml
事件区域下配置的观察者保护它们不被覆盖core_config_data_save_before
事件。
您还可以将策略#2的观察者保护与策略#1中基于文件的配置结合起来。