Un caso muy común en cualquier página es necesitar mostrar el bloque de precios de forma distinta en las páginas de categoría y en la página de producto, normalmente para incluir más información en esta última.
El precio de los productos en Magento, se muestra mediante la plantilla:
frontend/<interface>/<tema>/catalog/product/price.phtml
El problema cuando queremos modificarla es que dicha plantilla no se establece mediante el layout, como ocurre en la mayoría de los casos, sino que se establece por código, durante la creación del bloque. En concreto en la clase Mage_Catalog_Block_Product_Abstract.
Si queremos modificar dicha plantilla, por ejemplo sólo en la página de producto configurable, podemos realizarlo por medio del layout, de la siguiente forma:
<PRODUCT_TYPE_configurable> <reference name="product.info.simple"> <action method="setTemplate"> <template>catalog/product/price-configurable.phtml</template> </action> </reference> </PRODUCT_TYPE_configurable>
Para otros tipos de productos, para la vista de categoría, o similar, sólo hemos de cambiar el manejador en el que incluimos el bloque.
Hey! Qué opinas sobre el artículo?