Magento模块布局xml顺序



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

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

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

Layout XML文件仅根据模块加载顺序按字母顺序进行处理,模块加载顺序受glob()的字母顺序约束。

虽然缺少头块的排序功能是令人遗憾的,但有一个解决方法。您可以在模块激活文件中使模块依赖于Mage_Page

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

最新更新