Шаблони

    Основний шаблон блока повинен бути знайдений для ключа owner. Крім нього, масив повинен містити шаблони для кожної групи полів, і може містити шаблони для полів, які мають властивість elements (це поля типу dropdown, checkbox, radio). У таких шаблонах доступні вибрані значення властивості elements.

    Наприклад, якщо у масиві полів використовується група images, то в шаблонах має бути визначений елемент із ключем images, який буде містити або рядок шаблону:

    'images' => '<img src="[+image+]" alt="[+title+]" class="slide">'

    або асоціативний масив шаблонів:

    'images' => [
      'item'  => '<img src="[+image+]" alt="[+title+]" class="slide">',
      'thumb' => '<div class="thumb" style="background-image: url([+image+])"></div>',
    ],

    У другому випадку виведення цих елементів у батьківському шаблоні можна використовувати як [+images.item+] і [+images.thumb+].

    Плейсхолдери

    Як плейсхолдери можуть використовуватися імена полів (наприклад [+title+]), імена групових полів (наприклад [+images+], [+images.thumb+]).

    У шаблонах для полів вибору dropdown, checkbox, radio доступні плейсхолдери [+value+] і [+title+].

    Також у шаблоні 'owner' доступні плейсхолдери [+index+] і [+iteration+], а в групових полях та полях вибору - [+{имя_группы_поля}_index+] і [+{имя_группы_поля}_iteration+].

    Джерела шаблонів

    Розмітку можна вказати у самому значенні масиву, як показано у прикладах вище.

    Можлива вказівка імені чанка, у якому знаходиться потрібний шаблон. Для цього потрібно використати прив'язку @CHUNK, наприклад:

    'checkbox' => '@CHUNK all_fields_checkboxes',

    Також можливе підвантаження шаблону з файлу, наприклад:

    'owner' => '@FILE pagebuilder/all_fields.tpl',

    У цьому прикладі файл шаблону буде завантажено з MODX_BASE_PATH . "assets/templates/pagebuilder/all_fields.tpl". Взагалі файл шукається в наступних каталогах:

    assets/tvs/
    assets/chunks/
    assets/templates/

    Або можна вказати повний шлях від кореня сайту. Перший слеш не вказується.

    Групи шаблонів

    Шаблони можна групувати, щоб під час виводу використовувати різні групи шаблонів з параметром &templates. Наприклад, якщо вказати наступну конфігурацію блоку:

    'templates' => [
      'owner'  => '@CHUNK full_owner',
      'images' => '@CHUNK full_images'
    
      'anchors' => [
        'owner' => '@CHUNK link_owner',
      ],
    ],

    то виклик сніпета з параметром &templates, рівним anchors, буде використовувати для виведення шаблони, які визначені в групі anchors:

    [[PageBuilder? &templates=`anchors`]]