为什么不能只使用 system.xml 文件将此 ftp 路径存储在数据库中的后端可编辑字段中?
然后你只需要在每个后端更改它以获得本地/开发/实时版本。
在模块的 etc 目录中创建一个 system.xml 文件并将其放入其中:
<?xml version="1.0"?>
<config>
<sections>
<ftppath translate="label" module="yourmodule">
<label>Manage </label>
<tab>general</tab>
<sort_order>50</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<groups>
<general translate="label">
<label>General</label>
<frontend_type>text</frontend_type>
<sort_order>10</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
<fields>
<path translate="label">
<label>Path to FTP Server</label>
<frontend_type>text</frontend_type>
<sort_order>1</sort_order>
<show_in_default>1</show_in_default>
<show_in_website>1</show_in_website>
<show_in_store>1</show_in_store>
</path>
</fields>
</general>
</groups>
</ftppath>
</sections>
您可以通过执行 Mage::getStoreConfig('ftppath/general/path'); 来获取此值
如果您需要此部分仅供特定用户组的管理员查看,请在 adminhtml.xml 文件中创建 acl(仍在模块的 etc 目录中)
<?xml version="1.0" encoding="UTF-8"?>
<config>
<acl>
<resources>
<admin>
<children>
<system>
<children>
<config>
<children>
<ftppath translate="title" module="yourmodule">
<title>Manage FTP</title>
<sort_order>50</sort_order>
</ftppath>
</children>
</config>
</children>
</system>
</children>
</admin>
</resources>
</acl>
PS:我曾经在 app/etc/local.xml 文件中制作过类似的东西,但从 1.7 开始它不再工作了:(