Especifique actualizaciones de diseño específicas de la categoría sin usar el panel de administración de Magento

¿Hay alguna manera de especificar una actualización de diseño para una categoría específica (por ejemplo, usando el ID de categoría) sin tener que usar el panel de administración y configurar un [Diseño personalizado> Actualización de diseño personalizado]?

Estoy seguro de que puedo crear un módulo que busque una ID de categoría y cambie el diseño en función de eso, pero tenía curiosidad por saber si había un nombre o algún otro tipo de convención para los archivos de diseño que permite este tipo de control granular desde Zend Framwork a veces permite tales convenciones de nomenclatura.

También es posible que dentro del propio archivo catalog.xml haya "diseños" adicionales que permitan tal granularidad, algo más específico que <catalog_category_layered />

preguntado el 16 de mayo de 11 a las 18:05

2 Respuestas

En una instalación estándar de Magento (1.4.2, pero debería aplicarse al resto), Magento emite los siguientes controladores de diseño (los controladores le indican a Magento qué Fragmentos XML de actualización de diseño debe cargar desde el diseño del paquete)

<default />
<catalog_category_layered_nochildren />
<STORE_default />
<THEME_frontend_default_default />
<catalog_category_view />
<catalog_category_layered />
<CATEGORY_4 />
<customer_logged_out />

El siguiente identificador de diseño

<CATEGORY_4 />

se genera en función del ID de una categoría. Esto significa que debería poder agregar algo como lo siguiente a su local.xml, oa un archivo XML de diseño personalizado agregado a través de un módulo personalizado

<layouts>
    <CATEGORY_4>
        <!-- your UPDATE xml here -->
    </CATEGORY_4>
</layouts>

contestado el 17 de mayo de 11 a las 00:05

Al visitar una categoría de catálogo, Magento carga un identificador para CATEGORY_${ID}, que puede utilizar para hacer exactamente lo que está pidiendo.

contestado el 16 de mayo de 11 a las 23:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.