繁体   English   中英

在Magento网站上查找在header.phtml之前出现的HTML块

[英]Finding a block of HTML appearing before header.phtml on Magento Site

我被要求更新一个Magento网站,但是,我过去在Magento方面经验不足。 到目前为止,我已经能够应用所需的更改,但是我遇到了障碍,无法找到存储某些代码的位置。

有问题的代码就在body部分的开头,但位于header.phtml文件的开头之前。 我也查看了head.phtml文件,但之后。 似乎有大约15个元素(包括Google Analytics(分析)脚本)的块出现在开始body标记之后和header.phtml内容之前。 我已经检查了静态块,但无法在其中找到任何东西。 有人知道其他地方吗?

编辑

我一直在检查其中包含的文件,但到目前为止,我仍无法确定代码位于哪个文件中。我已经进行了测试,以查看其中包含了哪些文件以及何时包含了这些文件,并且确定/Mage/GoogleAnalytics/Helper/Data.php文件,然后是notices.php文件,并且在检查代码时,我可以看到在<!-- END GOOGLE ANALYTICS CODE --> ,并且在notices.php之前包含notices.php文件。

  • 使用Firebug。 检查该HTML元素并查找是否可以识别该类或其他命名事物以知道呈现哪个块

  • 打开模板路径提示,您将知道哪个模板用于显示该HTML。 然后,您可以轻松找到与其相连的模块。

要打开模板路径提示: System >> Configuration >> Developer, change Current Configuration Scope to website >> Debug Template Path Hints, set it to Yes.

终于找到了。 它位于一个名为1columns.phtml的文件中,我假定该文件仅包含页面中某个部分的布局信息,但其中包含名为标头,声明和其他代码的功能。 我用编写的php脚本找到了它,该脚本编写了对Director /app所有文件的递归搜索以搜索唯一标识符

不幸的是,您需要编辑的HTML可能在任何地方。 它可能是通过布局( app/design/ )中的phtml块添加的,也可能来自观察者中的PHP模块代码( app/code/communityapp/code/local ,甚至是app/code/core如果有人放弃了核心技术)。

有几种方法可以解决此问题。 首先,为您的商店视图启用“模板路径提示”(默认配置范围不会显示)

System -> Configuration -> Developer -> Debug

这将使您的前端呈现带有页面大多数块周围的轮廓。

使用grepack或您喜欢的文本搜索程序,从您要编辑的部分中搜索整个源树中唯一的HTML内容,无济于事。

最后,还有更强大的Magento特定调试工具可用。 我出售了一个叫做Commerce Bug( demo )的产品, 本文包括对其功能框图功能的描述,该功能适用​​于您当前面临的问题。 如果您打算做很多Magento的工作,那么值得研究这样的工具。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM