1

我在我的 Magento 安装中使用了一个自定义模块,它使用布局 XML 文件将一些 Javascript 文件添加到每个页面的头部。

这很好用,但是这些 javascript 文件需要在我已经在 page.xml 中声明的文件之后添加,但是似乎 XML 文件是按字母顺序处理的,而不是按层次结构处理的!

我查看了 page/html_head 块,似乎没有本地方法来设置/更改包含项目的顺序。如果不从我的模块的 XML 文件中删除 javascript 文件并将它们放在 page.xml 中,有没有人知道如何确保首先添加 page.xml javascript?

4

1 回答 1

5

布局 XML 文件仅作为模块加载顺序的影响按字母顺序处理,该顺序受glob().

虽然 head 块缺少排序功能是不幸的,但有一种解决方法。您可以使您的模块依赖Mage_Page于您的模块激活文件。

其他选项是:向块添加core/templatehead并使用带有主题安全链接的模板到您的 JS 文件,或者添加core/text块并调用setText()带有指向 JS 文件的显式链接(不太安全,通常用于 CDN 托管的脚本)。有一个空调getChildHtml()page/html/head.phtml将呈现head.

于 2012-07-26T12:18:50.377 回答