Ядро директивы макет для этого блока устанавливается в качестве дочернего checkout.cart блока:
<checkout_cart_index translate="label">
<!-- ... -->
<reference name="content">
<block type="checkout/cart" name="checkout.cart">
<!-- ... -->
<block type="checkout/cart_crosssell" name="checkout.cart.crosssell" as="crosssell" template="checkout/cart/crosssell.phtml"/>
</block>
</reference>
</checkout_cart_index>
Чтобы добавить его в сноске, вы может нужно только установить другой родитель -child отношения в вашем local.xml:
<checkout_cart_index>
<reference name="footer">
<action method="insert"><!-- or "append" to add to the end -->
<child>checkout.cart.crosssell</child>
</action>
</reference>
</checkout_cart_index>
Этот подход основан на странице акции /HTM l/footer.phtml, который содержит пустой вызов getChildHtml()
, что заставляет его отображать все дочерние блоки.
Обратите внимание, что сноска блок класса Mage_Page_Block_Html_Footer
имеет никогда не истекающий срок службы block_html
кэша, и он не оценивает содержание ребенка для его записи кэша. Возможно, вам придется отключить кеш для этого блока или переписать класс блока для учета разнообразного содержимого блока перекрестных помех.
Это действительно полезно. Благодаря! Чтобы избежать проблемы кэширования, как настроить пользовательский блок? Я понимаю, что мне нужно будет сменить имя ссылки на новое имя блока, но как мне настроить этот блок? – ryanv
Синтаксис перезаписи блока: http://stackoverflow.com/a/13054046/833795 – benmarks