ブロック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の構造ブロックのブログ投稿をお勧めします