Actualizar el diseño programáticamente en magento event observador
Estoy tratando de cambiar la plantilla (view.phtml) de un bloque (product.info
) para la página de detalles del producto, para hacer esto, estoy observando un evento (controller_action_layout_generate_blocks_before
), en ella, después de realizar las comprobaciones necesarias, estoy intentando cambiar la plantilla del bloque (product.info
) de la siguiente manera:
$layout = $observer->getEvent()->getLayout();
$layout->getUpdate()->addUpdate('
<reference name="product.info">
<action method="setTemplate">
<template>customlayout/product/view.phtml</template>
</action>
</reference>');
$layout->getUpdate()->load();
$layout->generateXml();
Si pongo"<remove name='product.info'/>"
, se eliminará, pero cuando se intenta hacer lo anterior, no funciona.
Editar:
El requisito es cambiar la plantilla (detalle del producto) dinámicamente a la seleccionada (en CustomModule) con respecto al producto actual.