Тег шаблона

Оригинальное название: template tag

Коротко

PHP-функция WordPress, которую вызывают в файлах темы, чтобы вывести или получить данные: заголовок, текст, дату, ссылку, автора текущей записи.

Что такое «Тег шаблона»

Теги шаблона — словарь классической темы. Вместо прямых запросов к базе разработчик пишет the_title() или the_permalink(), а WordPress сам достаёт нужное значение и прогоняет его через фильтры плагинов. Большинство тегов работает с «текущей» записью, которую устанавливает Цикл WordPress, поэтому их и вызывают внутри него. Определены они в файлах ядра wp-includes/*-template.php: post-template.php, link-template.php, general-template.php и других.

Пары the_ и get_the_

У многих тегов два варианта. Функции с префиксом the_ сразу выводят значение на страницу, а get_the_ возвращают его строкой для дальнейшей обработки. Например, the_title() печатает заголовок, а get_the_title( $id ) вернёт заголовок любой записи по ID, в том числе за пределами Цикла. Похожая пара — the_permalink() и get_permalink().

Пример: карточка статьи в списке

<article <?php post_class( 'card' ); ?>>
  <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
  <time datetime="<?php echo esc_attr( get_the_date( 'c' ) ); ?>">
    <?php echo esc_html( get_the_date() ); ?>
  </time>
  <?php the_excerpt(); ?>
</article>

Здесь работают пять тегов: CSS-классы записи, ссылка, заголовок, дата публикации и отрывок.

На что обратить внимание

  • Вне Цикла теги без аргументов берут данные из глобальной переменной $post, и в сайдбаре или подвале результат может оказаться неожиданным.
  • Заголовок внутри атрибута, например title="", выводят через the_title_attribute() — она экранирует кавычки.
  • Значения из get_the_* перед выводом нужно экранировать самостоятельно.
  • В блочных темах теги в шаблонах не пишут: их роль выполняют блоки «Заголовок записи», «Дата записи» и другие, которые внутри вызывают те же функции.

К тегам шаблона относят и условные функции вроде is_single() или is_front_page(): они ничего не выводят, а помогают решить, что показать.

Обновлено:

Все термины раздела «WordPress»

Что будем искать? Например,Продвижение