MODX — это система управления контентом (CMS), которая использует систему шаблонов для создания страниц. Система создания шаблонов в MODX основана на чанках, которые представляют собой повторно используемые фрагменты кода или контента, которые могут быть вставлены в шаблоны или другие блоки.

В этой статье мы покажем вам, как создавать пользовательские чанки в MODX.

Что такое чанки

Чанки — это повторно используемые фрагменты кода или содержимого, которые могут быть вставлены на веб-страницу или шаблон. Они похожи на шаблоны, но меньше по размеру и больше ориентированы на конкретные фрагменты контента и функциональность.

Вот несколько примеров распространенных чанков в MODX:

  • Чанк шапки сайта: Содержит код шапки сайта, такой как HTML doctype, мета-теги, файлы CSS и JavaScript, а также навигацию по сайту. Пример: [[!Header]]
  • Чанк футера сайта: Содержит код футера, такую как информация об авторских правах, ссылки на социальные сети и любые файлы JavaScript, которые необходимо загрузить в конце страницы. Пример: [[!Footer]]
  • Чанк навигации: Используется для создания навигационных меню, которые могут быть вставлены в шаблоны или другие фрагменты. Пример: [[!Navigation]]
  • Чанк содержимого страницы: Используется для отображения основного содержимого страницы. Его можно использовать для вставки текста, изображений, видео или любого другого контента, который необходимо отобразить на странице. Пример: [[!Content]]
  • Чанк боковой панели: Используется для отображения дополнительного контента, такого как виджеты, объявления или связанные ссылки. Его можно вставить в шаблоны или другие фрагменты, чтобы создать область боковой панели. Пример: [[!Sidebar]]
  • Чанк формы поиска: Используется для создания формы поиска, которая позволяет пользователям выполнять поиск по сайту. Пример: [[!SearchForm]]

Это всего лишь несколько примеров из множества блоков, которые могут быть использованы в MODX. Чанки могут быть созданы и настроены в соответствии с потребностями любого сайта, что делает MODX гибкой и мощной CMS.

Создание пользовательских чанков

Чтобы создать пользовательский чанк в MODX, выполните следующие действия:

  1. Войдите в MODX manager и перейдите в меню «Элементы».
  2. Нажмите кнопку «Создать чанк».

  1. Введите имя и описание для чанка.
  2. Добавьте HTML, текст или код для фрагмента в поле «Код чанка».
  3. Настройте любые дополнительные параметры для блока.
  4. Сохраните этот чанк.

Вот пример простого пользовательского чанка , который отображает шапку сайта:

<header>
  <h1>[[+title]]</h1>
  <nav>
    <ul>
      <li><a href="/">Home</a></li>
      <li><a href="/about">About</a></li>
      <li><a href="/contact">Contact</a></li>
    </ul>
  </nav>
</header>

Чтобы включить этот фрагмент в шаблон или ресурс, используйте следующий вызов фрагмента:

[[$customChunk]]

Замените «customChunk» именем вашего блока.

Передача параметров в чанк

Чанки также могут принимать параметры, позволяя настраивать содержимое чанка во время выполнения. Чтобы передать параметр в чанк, включите его в вызов блока, используя следующий синтаксис:

[[$customChunk?param1=value1&param2=value2]]

В коде чанка вы можете получить доступ к значениям параметров, используя следующий синтаксис:

$param1 = $modx->getOption('param1', $scriptProperties, 'default_value');
$param2 = $modx->getOption('param2', $scriptProperties, 'default_value');

Вот пример передачи параметра чанку в MODX:

Допустим, у нас есть раздел под названием «Рекомендуемые продукты», который отображает список рекомендуемых продуктов на сайте. Мы хотим иметь возможность контролировать, сколько продуктов отображается в списке, передавая параметр в чанк.

<ul>
    [[!pdoResources?
        &parents=`2`
        &tpl=`FeaturedProductsListItem`
        &limit=`[[+limit]]`
    ]]
</ul>

В этом коде мы используем фрагмент pdoResources для извлечения списка ресурсов (в данном случае продуктов), у которых есть родительский элемент с идентификатором 2. Мы используем параметр tpl, чтобы указать, что каждый элемент в списке должен использовать шаблон FeaturedProductsListItem. И, наконец, мы используем параметр limit для управления количеством элементов, отображаемых в списке.

Чтобы передать значение для параметра limit, мы можем вызвать блок «Рекомендуемые продукты» и указать значение параметра limit следующим образом:

[[!FeaturedProducts? &limit=`3`]]

В этом коде мы вызываем чанк FeaturedProducts и передаем значение 3 для параметра limit. При этом отобразится список из 3 рекомендуемых продуктов на нашем сайте.

Обратите внимание, что имени параметра предшествует амперсанд (&) и заключен в обратные метки, а значение параметра также заключено в обратные кавычки.

Заключение

Пользовательские чанки — отличный способ добавить повторно используемый контент и код на ваш сайт MODX. Изучив эту статью, вы можете создать свои собственные пользовательские фрагменты и начать использовать их в шаблонах и ресурсах. Благодаря возможности передавать параметры можно сделать свои чанки еще более универсальными и полезными.


Warning: Undefined variable $aff_bottom_mark in /sites/codelab.pro/wp-content/themes/myTheme/dist/partials/post/post_base.php on line 81

Warning: Undefined variable $aff_bottom_info in /sites/codelab.pro/wp-content/themes/myTheme/dist/partials/post/post_base.php on line 85