我已经使用符号链接将本地开发模块(单独的git repo)添加到了Magento 2,在我点击PHTML模板之前,它一直运行良好。经过大量调试后,我发现Magento 2文件系统类(Magento\Framework\Filesystem\Directory\Read
)使用一种isExists()
结合了getAbsolutePath()
调用的方法来查看PHTML模板是否存在。但是,该getAbsolutePath()
方法检查Magento 2文件系统中是否存在相对路径,如果不存在,则将Magento 2根目录作为前缀。它。就我而言,该模块位于/git/A
Magento所在的单独的存储库中/site/B
,此行为将检查中是否存在PHTML模板/site/B/git/A
。
简而言之:无论系统配置设置“允许符号链接”处于打开状态,都不会拾取Magento 2根文件系统外部的PHTML模板。似乎该设置有效,但前提是该符号链接的源仍在Magento 2文件系统中。
还有其他人遇到过吗?在外部git repo中处理开发的最佳方法是什么?