1

Magento インストールでカスタム モジュールを使用しています。これは、レイアウト XML ファイルを使用して、すべてのページのヘッド セクションにいくつかの Javascript ファイルを追加します。

これは問題なく動作しますが、これらの JavaScript ファイルは、page.xml で既に宣言したファイルの後に追加する必要がありますが、XML ファイルは階層的ではなくアルファベット順に処理されるようです!

page/html_head ブロックを調べましたが、アイテムが含まれる順序を設定/変更するネイティブな方法はないようです。私のモジュールのXMLファイルからjavascriptファイルを削除してpage.xmlに配置せずに、page.xml javascriptが最初に追加されるようにする方法を知っている人はいますか?

4

1 に答える 1

5

レイアウト XML ファイルは、モジュールのロード順序の効果としてのみアルファベット順に処理されます。これは、 のアルファベット順に従いglob()ます。

ヘッド ブロックの並べ替え機能がないのは残念ですが、回避策があります。Mage_Pageモジュールのアクティブ化ファイルで、モジュールを依存させることができます。

その他のオプションは次のとおりです。core/templateブロックにブロックを追加headし、JS ファイルへのテーマセーフなリンクを含むテンプレートを使用するか、core/textブロックを追加して JS ファイルへの明示的なリンクを使用して呼び出しsetText()ます (安全性が低く、一般に CDN でホストされるスクリプトに使用されます)。の子ブロックをレンダリングする空のgetChildHtml()呼び出しがあります。page/html/head.phtmlhead

于 2012-07-26T12:18:50.377 に答える