2012-07-28 6 views
5

私はマゼンタのテーマをコーディングしています。パスヒントを有効にしましたが、$this->getChildHtml('topContainer'); のヘッダーには、パスヒントは表示されません。 上記呼び出しが行われたときにはどうすればそう、ロードされた .phtmlファイル私は適切な名前と位置 .phtmlカスタムファイルを作成することができ を見つけることができますか?

答えて

11

topContainerは "page/html_wrapper"ブロックです。 テンプレートファイルが関連付けられていないことを意味します。

このブロックの役割は、html要素内のすべてのそれの子のブロックをレンダリングすることです。 'app/code/core/Mage/Page/Html/Wrapper.php'の_toHtml()メソッドを見てください。

敬具、

ジョナサン

---その他の説明:

  1. ベースでレイアウト/ customer.xmlをを(:

    あなたには、完璧なexempleを見てみることができますテーマ)

  2. ベースのテーマにおけるレイアウト/ sales.xml()

あなたは同様のブロックがあります。それは、顧客アカウントの他のすべてのブロックがレンダリングされるエリアです

<block type="page/html_wrapper" name="my.account.wrapper" translate="label"> 

を。 この領域にブロックを配置するには、属性 "name"を "wrapper"の名前に設定した "reference"ノードを作成する必要があります。

sales_order_viewハンドル(sales.xml内)を見ると、<reference name="my.account.wrapper">が表示され、このノード内に他のブロックが表示されます。

これらの他のブロックがclassicsブロック(コア/テンプレート)であり、彼らは、テンプレートファイルを持っています。

だから、「コア/ text_list」ブロックへ「のページ/ html_wrapper」ブロックを比較することができます。 唯一の違いは、最初のレンダリングされた子ブロックをhtml要素にラップすることです。

は、彼らはあなたに大いに役立つだろう、上記mentionned 2つのファイルに見てください。

+0

こんにちは、私はまだ、それらに関連付けられているテンプレートファイルがないこれらのブロックがどのように動作するかは追いません。誰かもう少し説明していただけますか? – user1527429

+0

私はあなたの詳細を更新しました。彼らがあなたを助けてくれることを願っています。 – JonaPkr

+0

'topContainer'ではなく' top.container'を参照することが重要です - 前者はブロックの名前ですが、後者はちょうどエイリアス。 –

関連する問題