たとえば、製品ページの説明ブロックの前に自分のブロックを配置したいと考えています。これらの参照名を見つけるにはどうすればよいですか?
2 に答える
Magento コントロール パネルCurrent Configuration Scope
で、特定の Web サイトに設定します。次に、System -> Configuration -> Advanced -> Developer -> Debug` で Template Path Hints をオンにし、Add Block Names to Hints をオンにします。
その後、ページをリロードすると、目的の効果を得るためにオーバーライドする必要があるブロックが示されます。
あなたの質問とそれに続くコメントに基づいて、私の理解が正しければ、レイアウト内の他のブロックの前にブロックを配置する方法を探していますか?
その場合、レイアウト システムは、まさにこの目的のために、前後のブロック属性を提供します。
一般的な使用法は、配置したいブロックを含む before または after アトリビュートを追加することです - before または after。
例の前
<block type="yourmodule/block_type" name="yourblock" before="the_block_name_to_position_before" />
例の後
<block type="yourmodule/block_type" name="yourblock" after="the_block_name_to_position_before" />
商品説明の前に配置
製品説明ブロックの前にブロックを配置する特定のシナリオでは、製品説明ブロックがレイアウトにどのように含まれているかにより、少し余分な xml が必要になります。
<!-- file: app/design/frontend/your_package/your_theme/layout/local.xml -->
<catalog_product_view>
<reference name="product.info">
<block type="yourmodule/block_type" name="yourblock" template="yourmodule/template.phtml" before="product.description">
<action method="addToParentGroup"><group>detailed_info</group></action>
</block>
</reference>
</catalog_product_view>
ただし、ここで注意すべき重要なことは、元の質問に関して、before
ポジショニングに属性を使用することです。