Налаштування віджетів Magento 1 у бекенді - як рухатись вгору


11

У мене встановлення віджетів на всіх сторінках категорії через бекенд -> CMS -> Віджети

Тепер, коли я використовую цей метод, я вибираю блок для сторінок категорій, і блок добре відображається. Він знаходиться внизу всієї іншої інформації в лівій колонці.

Але як мені перемістити блок вгору? (вище шаруватих тощо) ...

Альтернативою є використання local.xml, що я не віддаю перевагу + це також з’являється на ВСІХ моїх веб-сайтах, які використовують ту саму тему.


3
Можливо, спробуйте скористатися custom layout updatesполем у категорії, щоб додати блок та використати before=""або after=""позиціонувати його.
Рік Куйперс

Відповіді:


12

Проблема полягає в тому, що Magento не містить контейнера віджетів у верхній частині лівої колонки. Такий контейнер можна створити в два етапи:

  1. Створіть контейнер блоку віджетів у файлі 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>

    У наступному прикладі catalog_category_default та catalog_category_layered є ручками для сторінок категорій, а ручка custom_top_container включається на ці сторінки за допомогою інструкції щодо макета оновлення . Новий блок left_top - це тип Mage_Core_Block_Text_List , який показує з'єднаний вихід дочірніх блоків, призначених йому, тому він буде порожнім, якщо до нього не додано жодного віджета. Тепер, коли макет готовий до конфігурації віджетів, перевірте наступний крок.

  2. Створіть файл widget.xml в каталозі etc вашої теми (якщо ви не хочете зберегти цю конфігурацію з розширеної теми, вам потрібно скопіювати її з цієї теми у свою). Цей widget.xml повинен містити додаткову інформацію, щоб Magento дізнався, які віджети підтримують ваш щойно створений контейнер:

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

    Цей файл конфігурації дозволяє Magento знати, які блоки можна використовувати для отримання можливого контейнера на панелі адміністратора.

Отже, ви можете зайти на панель адміністратора і вибрати контейнер " Лівий стовпчик" для оновлення макета віджетів.


Дякую Іване. І мій кращий спосіб - якщо ми все-таки будемо редагувати local.xml - це також негайно викликати блок CMS (лише невелике зображення, яке було призначене для лівого верхнього
краю

2

Ви можете спробувати зателефонувати в цей блок за допомогою

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

Вставте вищевказаний код у:

frontend / default / YOURTHEME / шаблон / каталог / навігація / sidebar.phtml

над кодом, який відображає меню каталогу.

Щоб не відображати його на різних веб-сайтах, використовуйте різні теми на веб-сайті.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.