我需要在关闭" body"之前将java脚本跟踪代码添加到我的magento商店的所有页面。标签。有谁知道我需要把这个文件放进去?我是否必须为Magento修改JavaScript或者只是粘贴它?
答案 0 :(得分:3)
回答您的问题:如何向每个页面添加javascript
在模板中,通常会在每个页面上加载页脚块,所以请在此处找到phtml文件;
app/design/frontend/XXX/YYY/template/page/html/footer.phtml
其中xxx / yyy是您的主题目录。在此处添加跟踪代码,它将在每个页面上加载。
关于它是否需要修改 - 这实际上取决于您的期望。如果您需要插入诸如购物篮值,客户编号(如果存在)等变量,那么您需要将这些PHP变量添加到其中,这是您可能遇到麻烦的地方。如果您正在使用缓存,那么页脚可能不是最佳位置,因为您最终可能会在代码段中使用缓存的变量值。如果它动态地为诸如页面网址之类的内容提取值,那么你就可以了。
另一个问题是,这将加载到您的结帐页面 - 因此,如果它从http://位置调用js文件,您的页面将无法通过SSL验证。
答案 1 :(得分:3)
您可以通过向模块配置添加layout
文件来执行此操作:
<config>
...
<frontend>
<layout>
<updates>
<mymodule>
<file>mymodule.xml</file>
</mymodule>
</updates>
</layout>
</frontend>
...
</config>
将mymodule.xml
文件添加到app/design/frontend/base/default/layout/
文件夹中,并将以下内容放入其中:
<layout version="1.0.0">
<default>
<reference name="before_body_end">
<block type="core/template" name="mytracking.block" after="-" template="mynamespace/mymodule/tracking.phtml">
<action method="setCacheLifetime"><s>0</s></action>
</block>
</reference>
</default>
</layout>
现在,您可以在此模板文件app/design/frontend/base/default/template/mynamespace/mymodule/tracking.phtml
中添加跟踪JavaScript代码。它将在所有Magento页面中打印出来。
修改强>
我添加了一段代码来禁用跟踪块的缓存,感谢@PixieMedia让我知道。
答案 2 :(得分:1)
最简单的方法 - 通过后端,有一个专门针对这种需求的配置部分。
System -> Configuration -> General -> Design Section -> Footer Tab -> Miscellaneous HTML
它依赖于你的主题在关闭正文标记之前调用主模板文件中的getAbsoluteFooter()
方法,只是要注意这一点。
<?php echo $this->getAbsoluteFooter() ?>
</body>