我正在app / code / local中为magento构建一个模块。我想要这个文件夹里面的一切。但是,在阅读教程时,似乎我的模块目录中没有我的布局xml文件和模板phtml文件,它们必须在app / design /...中。
我是否正确地想到这一点,或者我可以在模块目录中拥有我的设计元素吗?我想把所有东西放在一个地方。
答案 0 :(得分:0)
这是可能的,但需要您创建符号链接到正确的路径。
假设您在app/code/local/Mymodule/design/frontend/mymodule/default
中有模板,那么您可以使用以下内容创建符号链接
ln -s /var/www/web/app/code/local/Mymodule/design/frontend/mymodule /var/www/web/app/design/frontend/mymodule
不幸的是,默认情况下,Magento不允许您使用符号链接文件夹中的模板文件。但是,您可以使用CMS中的选项启用此功能。
转到CMS并选择系统>配置然后选择高级>从侧面菜单开发。
在模板设置下,为“允许符号链接”选择“是”
如果您无法访问CMS,请在数据库核心设置中查找此值。除此以外
您需要临时修改Mage核心文件app/code/core/Mage/Core/Block/Template.php
将第240行编辑为:
// if (strpos($includeFilePath, realpath($this->_viewDir)) === 0 || $this->_getAllowSymlinks()) {
if(strpos($includeFilePath,'..') === false) {
这将允许您访问CMS并更新“允许符号链接”设置,如上所述。然后,您可以撤消更改的文件。