Теги, фильтры и функции Twig⚓︎
Хотя Twig уже предоставляет обширный список фильтров, функций и тегов, Grav также предоставляет выбор полезных дополнений,чтобы облегчить процесс тематизации.
Для получения информации о разработке собственных фильтров Twig, ознакомьтесь с примером Свои фильтр/функция Twig в разделе Рецепты Twig в главе Сборник рецептов.
Теги⚓︎
Тег обеспечивает высокоуровневую функциональность Twig. Примеры встроенных тегов включают такие конструкции, как include
, block
, for
, if
и многие другие. Теги идентифицируются в Twig с помощью синтаксиса {% tagname %}
. Кроме того, большинство тегов закрываются с помощью {% endtagname %}
.
Grav включает несколько полезных настраиваемых тегов, которые обеспечивают такую функциональность, как cache
, markdown
, script
, style
, switch
и др.
Фильтры⚓︎
Фильтры Twig позволяют вам применять функции к переменной, которая отображается слева от символа вертикальной черты (|
). Они особенно полезны при работе с текстом или переменными. Первым аргументом фильтра всегда является элемент слева, но последующие аргументы могут быть переданы в круглых скобках. Фильтры обладают некоторыми особыми возможностями, включая возможность учитывать контекст и среду.
Примеры встроенных фильтров Twig включают date
, escape
, join
, lower
, slice
и многие другие. Примером может быть:
Grav включает несколько полезных настраиваемых фильтров, которые обеспечивают такую функциональность, как hyphenize
, nicetime
, starts_with
, contains
, base64_decode
и многие другие.
Функции⚓︎
Функции Twig — ещё один способ реализовать функциональность в Twig. Они похожи на фильтры, однако вместо того, чтобы воздействовать на переменную через |
, вы должны вызывать эти функции напрямую и передавать любые поддерживаемые ими атрибуты в скобках после имени функции. Часто Grav предоставляет и фильтр, и функцию для одной и той же логики и оставляет на усмотрение пользователя выбор метода, который он предпочитает.
Примеры встроенных фильтров Twig включают block
, dump
, parent
, random
, range
и др. Примером может быть:
Grav включает несколько полезных пользовательских функций, которые обеспечивают такую функциональность, как authorize
, debug
, evaluate
, regex_filter
, media
и многие другие.