<?php echo $ this-> getChildHtml( 'left')?>のコンテンツはどこにありますか?


8

file 2-columns-left.phtml私のテーマLegendaのブログについて質問があります。私は自分のブロックブログカテゴリのタイトルを編集したいのですが、成功しません。

ブロックの内容が

<div class="col-left sidebar col-sm-4 <?php if(Mage::app()->getFrontController()->getRequest()->getModuleName() != 'blog'):  ?>col-md-3<?php endif; ?>">
    <?php echo $this->getChildHtml('left') ?>
</div>

さて、リコールされたファイルはどこにありますgetChildHtml('left')か?「ブログカテゴリ」のタイトルを編集するにはどうすればいいですか?

回答:


5

ブロックleftはMagentoの非常に一般的なブロックです。

これはファイルで定義され、app/design/frontend/base/default/layout/page.xml単にタイプのブロックですcore/text_list

<block type="core/text_list" name="left" as="left" translate="label">
    <label>Left Column</label>
</block>

基本的な考え方は、このブロックを使用して、必要なコンテンツで埋めることができるということです。

単純にそれを参照してアイテムを追加できます。これの完全な例は、ファイル内の顧客ナビゲーションですapp/design/frontend/base/default/layout/customer.xml

<reference name="left">
    <block type="customer/account_navigation" name="customer_account_navigation" before="-" template="customer/account/navigation.phtml">
        <action method="addLink" translate="label" module="customer"><name>account</name><path>customer/account/</path><label>Account Dashboard</label></action>
        <action method="addLink" translate="label" module="customer"><name>account_edit</name><path>customer/account/edit/</path><label>Account Information</label></action>
        <action method="addLink" translate="label" module="customer"><name>address_book</name><path>customer/address/</path><label>Address Book</label></action>
    </block>
    <block type="checkout/cart_sidebar" name="cart_sidebar" template="checkout/cart/sidebar.phtml">
        <action method="addItemRender"><type>simple</type><block>checkout/cart_item_renderer</block><template>checkout/cart/sidebar/default.phtml</template></action>
        <action method="addItemRender"><type>grouped</type><block>checkout/cart_item_renderer_grouped</block><template>checkout/cart/sidebar/default.phtml</template></action>
        <action method="addItemRender"><type>configurable</type><block>checkout/cart_item_renderer_configurable</block><template>checkout/cart/sidebar/default.phtml</template></action>
    </block>
    <block type="catalog/product_compare_sidebar" name="catalog.compare.sidebar" template="catalog/product/compare/sidebar.phtml"/>
    <remove name="tags_popular"/>

</reference>

ここで、Magentoは単純に子ブロックを左側のブロックに追加します。レイアウトファイルで以下を検索すると、コンテンツが追加された場所を正確に確認できます。

<reference name="left">

レイアウトファイルで次を検索して、左の列が削除されたタイミングを確認することもできます。

<remove name="left"/>

このブロックの詳細については、Inchooの構造ブロックのブログ投稿をお勧めします

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.