Skip to content
PageBuilder
Визуальный конструктор секций для MODX 3: черновик и публикация без перезаписи content ресурса
  1. Компоненты
  2. PageBuilder
  3. Каталог секций
  4. Pro
  5. Ряд категорий

Ряд категорий

Навигация по каталогу: дочерние категории выбранного родителя с превью и ссылкой.

Информация

Требуются PageBuilder Pro и miniShop3.

Зачем ряд категорий

  • Подкатегории из msCategory через pdoResources
  • Навигация по каталогу без ручного меню
  • Превью и ссылки из ресурсов
  • На главной каталога: вход в разделы
  • На странице родительской категории: подкатегории
  • На лендинге: витрина направлений

Примеры страниц

Родитель и лимит

Родительская категория и Лимит. Ресурсы должны быть класса msCategory.

Похожие секции

Параметры блока

ПараметрЗначение
keycategories_row
СлойPro
Категориямагазин (commerce)
Chunkpagebuilderpro_categories_row
Требованияpro, minishop3

Поля в редакторе

Заполните поля в инспекторе секции на ресурсе. Описание типов полей: справочник типов.

Заголовок (title)

Тип text. Необязательное.

Родительская категория (parent)

Тип relation. Обязательное. Выбор одного ресурса MODX в модальном окне поиска.

Лимит (limit)

Тип number. Необязательное.

Что видит посетитель

Горизонтальный ряд pb-categories-row.

Данные секции

Пример JSON после сохранения секции. Для media, video и map значения на выводе могут быть обогащены:

json
{
  "title": "Заголовок секции",
  "parent": 101,
  "limit": 6
}

Шаблон chunk

Fenom chunk pagebuilderpro_categories_row:

fenom
{var $catalogParent = $parent.id|default:($parent_id|default:0)}
{var $listing = ''}
{if $catalogParent}
  {var $listing = $modx->runSnippet('pdoResources', [
    'parents' => $catalogParent,
    'depth' => 1,
    'limit' => $limit|default:8,
    'where' => ['class_key' => 'MiniShop3\\Model\\msCategory'],
    'tpl' => 'pagebuilderpro_ms3_category_row'
  ])}
{/if}
<section class="pb-section pb-section--categories-row pb-categories-row{if $cssClass} {$cssClass|escape}{/if}" data-pb-section="categories_row"{if $id} id="pb-{$id|escape}"{/if}>
  <div class="pb-section__inner pb-categories-row__inner">
    {if $title}
      <h2 class="pb-heading">{$title|escape}</h2>
    {/if}
    {if $listing}
      <div class="pb-categories-row__grid pb-grid">
        {$listing}
      </div>
    {else}
      <p class="pb-listing__empty">В этой категории нет подразделов.</p>
    {/if}
  </div>
</section>

JSON-определение

PageBuilderPro/core/components/pagebuilderpro/sections/categories_row.json

Связанные страницы