Чанки содержат повторно используемые куски Twig-разметки, которые могут быть использованы в любом месте сайта. Чанки чрезвычайно полезны для элементов, которые повторяются на разных страницах или макетах. Хороший пример чанка - футер, который используется в разных макетах. Кроме того, чанки необходимы для обновления содержимого страницы с использованием AJAX

Введение

Файлы чанков находятся в подпапке /partials темы. Файлы чанков должны иметь htm расширение. Пример простейшего чанка:

<p>This is a partial</p>

Раздел конфигурации необязателен для чанков и может содержать опциональный параметр description, который будет отображаться в админке. Пример чанка с описанием:

description = "Demo partial"
==
<p>This is a partial</p>

Вывод чанков

Twig-тег {% partial "partial-name" %} выводит чанк. Этот тег имеет один обязательный параметр - имя файла чанка без расширения. Помните, если хотите использовать чанк из подпапки, то вы должны указать имя подпкапки {% partial "subdirectory/partial-name" %}. Тег {% partial %} может использоваться внутри страницы, макета или же другого чанка. Пример страницы, использующей чанк:

<div class="sidebar">
    {% partial "sidebar-contacts" %}
</div>

Параметры чанков

Вы увидите, что вам часто приходится передавать переменные чанкам из внешнего кода. Это делает чанки еще более полезными. Например, у вас есть чанк, выводящий список постов блога и параметром этого чанка является массив постов. В таком случае, вы можете использовать этот чанк в архиве блога, на странице категории блога и так далее. Вы можете передавать параметры чанков, указав их после имени чанка в теге {% partial %}:

<div class="sidebar">
    {% partial "sidebar-contacts" city="Vancouver" country="Canada" %}
</div>

Внутри чанка, получить доступ к параметру можно также, как и к любой другой переменной:

<p>Country: {{ country }}, city: {{ city }}.</p>