私は最近local.xml
、レイアウトの遊び場としてを使用し始めました。理由があるので、使用することに疑問を感じる前に...
私はそれが利点であることを理解しましたが、今はレンガの壁にぶつかりました。
デフォルトのcatalog.xml
レイアウトファイルには、特定のブロックがあります(名前は重要ではありません)。を使用して、layout.xml
他のブロックを配置したい場所に汎用の子ブロックを追加しました。
<reference name="not.important">
<block type="core/text_list" name="extra.left.menu" as="extra" />
</reference>
ここまでは順調ですね。
しかし、今、私は上記で宣言されたものに子ブロックを追加する必要がある拡張機能を1つ持っています。
この新しいブロックを使用local.xml
すると、うまく機能します。
<block type="core/text_list" name="extra.left.menu" as="extra">
<block type="myextension/some_block" template="some/template.phtml" as="some_name" name="some_name" />
</block>
ただしlocal.xml
、この新しい拡張機能は将来的に無効になる可能性があるため、経由する必要はありません。私は経由でそれを行う場合はlocal.xml
、拡張子を無効ブロックはもう存在しないので、それは私のログファイルをフラッディングします。
だから私の拡張レイアウトファイルにこれを追加します:
<reference name="extra.left.menu">
<block type="myextension/some_block" template="some/template.phtml" as="some_name" name="some_name" />
</reference>
しかし、この方法では機能しません。これは、local.xml
ファイルが最後にロードされたために発生し、モジュールの依存関係を追加できないため、拡張レイアウトファイルがの後にロードされるためと考えられlayout.xml
ます。
これにどのように取り組むべきですか?私は何か間違ったことをしましたか?
または、このようにしたい場合catalog.xml
は、テーマにクローンの「古き良き方法」を使用し、この新しいブロックをテーマに追加する必要がcatalog.xml
ありますか?