Configuración del widget Magento 1 en el backend: ¿cómo me muevo hacia arriba?

11

Tengo una configuración de widgets en todas las páginas de categorías a través de backend -> CMS -> Widgets

Ahora, cuando uso este método, selecciono un bloque para las páginas de categoría y el bloque se muestra muy bien. Está en la parte inferior de toda la otra información en la columna izquierda.

Pero, ¿cómo muevo el bloque hacia arriba? (arriba en capas, etc.) ...

La alternativa es usar local.xml, que no prefiero +, luego también aparece en TODOS mis sitios web que usan el mismo tema.

snh_nl
fuente
3
Quizás intente usar el custom layout updatescampo en la categoría para agregar el bloque y usar before=""o after=""para colocarlo.
Rick Kuipers el

Respuestas:

12

El problema es que Magento no tiene un contenedor de widgets en la parte superior de la columna izquierda. Puede crear dicho contenedor en dos pasos:

  1. Cree su contenedor de bloques de widgets en el archivo local.xml :

    <layout>
       <!-- category pages with layered navigation -->
       <catalog_category_layered>
            <update handle="custom_top_container" />
       </catalog_category_layered>
       <!-- category pages without layered navigation -->
       <catalog_category_default>
            <update handle="custom_top_container" />
       </catalog_category_default>
       <!-- custom block container on that page -->
       <custom_top_container>
            <reference name="left">
               <block name="left_top" type="core/text_list" before="-" translate="label">
                    <label>Left Column Top</label>
               </block>
            <reference>
       </custom_top_container>
    </layout>

    En el siguiente ejemplo, catalog_category_default y catalog_category_layered son los identificadores de las páginas de categoría y el identificador custom_top_container se incluye en estas páginas mediante instrucciones de diseño de actualización . El nuevo bloque left_top es un tipo de Mage_Core_Block_Text_List , que muestra la salida concatenada de bloques secundarios asignados a él, por lo que estará vacío si no se le agrega ningún widget. Ahora, cuando el diseño esté listo para la configuración del widget, verifique el siguiente paso.

  2. Cree el archivo widget.xml en el directorio etc. de su tema (si no desea preservar esta configuración del tema que está extendiendo, debe copiarlo de ese tema al suyo) Este widget.xml debe contener información adicional para que Magento sepa qué widgets admiten su contenedor recién creado:

    <widgets>
        <[widget_id]>
            <supported_blocks>
                <left_column_top>
                    <block_name>left_top</block_name>
                </left_column_top>
             </supported_blocks>
        </[widget_id]>
    </widgets>

    Este archivo de configuración le permite a Magento saber qué bloques se pueden usar para recuperar un posible contenedor en el panel de administración.

Por lo tanto, puede ir al panel de administración y elegir el contenedor superior de la columna izquierda para la actualización del diseño del widget.

Ivan Chepurnyi
fuente
Gracias Ivan. Y quizás la mejor manera, si estamos editando local.xml de todos modos, es también llamar inmediatamente al bloque CMS (solo una pequeña imagen que estaba destinada a la parte superior izquierda)
snh_nl
2

Puedes intentar llamar a ese bloque usando

<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('BLOCK_ID_HERE')->toHtml() ?>

Inserte el código anterior en:

frontend / default / YOURTHEME / template / catalog / navigation / sidebar.phtml

encima del código que muestra el menú del catálogo.

Para evitar que se muestre en todos los sitios web, utilice diferentes temas por sitio web.

Thomas Mongan
fuente