Magento: Добавление структурных блоков

Краткое руководство по созданию нового структурного блока в системе электронной коммерции Magento.

Шаг 1: Создание структурного блока

Откройте файл layout/page.xml, лежащий в папке вашей активной темы. В файле вы найдете такие строки:

  1. <block type="core/text_list" name="left" as="left"/>
  2. <block type="core/text_list" name="content" as="content"/>
  3. <block type="core/text_list" name="right" as="right"/>

Добавляем новый структурный блок.

  1. <block type="core/text_list" name="newreference" as="newreference"/>

Теперь мы объявили Magento, что существует структурный блок с именем "newreference". Но Magento еще не знает, что с ним делать.

Шаг 2: Скажите Magento, куда отобразить блок

Теперь нам нужно указать Magento место, где должно отобразиться содержимое этого нового структурного блока. Давайте вернемся к файлу шаблона в папке нашей активной темы. Вы увидите там разные варианты отображения. Допустим, мы хотим, чтобы новый структурный блок должен появляться только на страницах, которые используют 2-колоночную схему с правой боковой панелью. В этом случае мы должны открыть 2columns-right.phtml файл. Давайте представим, что мы хотим блок "newreference" установить ниже второй колонки, но перед колонтитулом. В этом случае, наш обновленный файл должен выглядеть следующим образом:

  1. <!-- start middle -->
  2. <div class="middle-container">
  3. <div class="middle col-2-right-layout">< ?php getChildHtml('breadcrumbs') ?>
  4. <!-- start center -->
  5. <div id="main" class="col-main"><!-- start global messages -->
  6. <?php  getChildHtml('global_messages') ?>
  7. <!-- end global messages -->
  8. <!-- start content -->
  9. < ?php  getChildHtml('content') ?>
  10. <!-- end content --></div>
  11. <!-- end center -->
  12.  
  13. <!-- start right -->
  14. <div class="col-right side-col">< ?php getChildHtml('right') ?></div>
  15. <!-- end right --></div>
  16. <div>< ?php getChildHtml('newreference') ?></div>
  17. </div>
  18. <!-- end middle -->

Шаг 3: Заполнение структурных блоков

Давайте заполним новый блок чем-нибудь. В качестве примера поставим блок "новые продукты". Перейдите к соответствующему участку XML файла и введите этот блок в ранее определенное нами место в файле layout/page.xml.

  1. <reference name="newreference">
  2. <block type="catalog/product_new" name="home.product.new" template="catalog/product/new.phtml" />
  3. </reference>

Смотрите также:
Мы занимаемся разработкой, поддержкой и продвижением веб-проектов
c 2002 года.

Наши новости