В шаблонах Twig нередко возникает задача подставить текущий год. Чаще всего это требуется в футере — например, чтобы автоматически обновлялась строка авторских прав. Делать это вручную каждый январь смысла нет, а стоит воспользоваться встроенными возможностями Twig.
Шаблонизатор умеет работать с датами через фильтр date(). Если передать ему строку 'now', Twig воспримет её как текущую дату и время, а значит, можно вывести любой её фрагмент. Форматирование года задаётся стандартной маской Y, которая возвращает четырёхзначное значение.
В результате код получается лаконичным и полностью автономным:
|
|
<div class="copyrights"> © 1992 – {{ 'now'|date('Y') }} « THE PROJECT » </div> |
Хотя Twig способен вывести текущий год через фильтр date(), стоит учитывать, что в ваш сайт нередко использует кеширование результата рендера. Если блок или страница кешируются, итоговое значение года также попадёт в кеш. Поэтому при использовании динамических дат важно убедиться, что для данного фрагмента не включён длительный кеш, или задать подходящие cache tags/contexts/max-age.
twig
Данная запись опубликована в 09.12.2025 02:15 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 8, 2024 г.
Недавно изучал вопрос: как правильно переводить месяцы (в коротком и длинном варианте) в полях типа datetime в Drupal. Короткий ответ - через UI translation. ...
Читать
Июль 14, 2023 г.
Как без хуков preprocess в Drupal добавить, например, атрибут target для ссылки в шаблоне?
Например, возьмем штатный шаблон file-link.html.twig:
[crayon-6a09292a8f5c5158199704/]
Используем фильтр merge, добавляя нужные атрибуты:
[crayon-6a09292a8f5cc656592451/]
Читать
Июнь 1, 2023 г.
В TWIG уже много разных встроенных фильтров, Drupal их перечень только расширяет. Но наше счастье было бы не полным, если бы мы не могли добавить свои фильтры.
В Drupal это делается через сервис twig.extension.
Для начала надо сформировать описатель, ...
Читать
Июнь 3, 2024 г.
Все видимые переменные шаблона можно посмотреть в переменной _context.
Вывести их имена, используя перебор циклом for:
[crayon-6a09292a8f7ae717630240/]
В Drupal, если вы используете модуль devel, в twig будет доступна функция dpm:
[crayon-6a09292a8f7b4076333846/]
Читать