我有两个模块。两个模块都需要覆盖包渲染项,两者都做得很好。但我的问题是,当两个模块都处于活动状态时,任何一个渲染项都显示不是另一个。但是我想要显示两个项目在视野中。显示我可以附加块而不是覆盖。
例如,
<sales_email_order_items>
<reference name="items">
<action method="addItemRender">
<type>bundle</type>
<block>booking/sales_order_items_renderer</block>
<template>email/order/items/invoice/default.phtml</template>
</action>
<action method="addItemRender">
<type>bundle</type>
<block>module1/bundle_sales_order_items_renderer</block>
<template>module1/bundle/email/order/items/order/default.phtml</template>
</action>
<action method="addItemRender">
<type>bundle</type>
<block>module2/bundle_sales_order_items_renderer</block>
<template>module2/bundle/email/order/items/order/default.phtml</template>
</action>
</reference>
</sales_email_order_items>
上面的块会在销售订单电子邮件中添加module1和module2中的额外项目。 但是module2覆盖了module1,我需要显示这两个选项对我有帮助!
答案 0 :(得分:0)
其中一个建议是在子类
中更改或覆盖addItemRender
功能
所以它不会替换块,而是添加它。
如果我理解正确的话:
need to show both options
至于我,也许,我会重新设计模块,所以他们不会互相打扰。可能是一些观察者事件模式。