Как добавить пользовательские поля в WordPress и вывести их на сайте

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

Если задача простая, custom fields можно использовать прямо в WordPress: добавить значение в записи и вывести его в шаблоне темы или через небольшой фрагмент кода. Ниже разберём, как это сделать на практике, какие есть варианты и где чаще всего ошибаются.

Что такое пользовательские поля и когда они действительно нужны

Пользовательское поле в WordPress — это пара «ключ-значение». Ключ остаётся постоянным, а значение меняется от записи к записи. Например, ключ event_date может хранить дату мероприятия, а price — стоимость товара или услуги.

Этот механизм полезен, когда информация должна:

  • быть отдельной от основного текста;
  • повторяться в одинаковом формате на многих страницах;
  • выводиться в одном и том же месте шаблона;
  • использоваться не только для отображения, но и для фильтрации, сортировки или интеграции с другими элементами сайта.

Если вам нужно просто вставить пару строк в текст статьи, пользовательские поля не обязательны. Но если данные должны быть структурированными и одинаково оформленными на десятках страниц, custom fields — правильный инструмент.

Как включить пользовательские поля в редакторе WordPress

В современных версиях WordPress блок «Пользовательские поля» может быть скрыт в редакторе. Его нужно включить вручную.

В редакторе записи или страницы откройте меню с тремя точками в правом верхнем углу, затем найдите раздел настроек и включите отображение пользовательских полей. После этого внизу или в боковой панели появится блок, где можно добавить новый ключ и значение.

Если вы работаете в классическом редакторе, блок обычно доступен сразу в метабоксе на странице редактирования записи. Если его не видно, проверьте настройки экрана.

Важно понимать: WordPress хранит пользовательские поля отдельно от основного контента, но сам по себе не показывает их на сайте. Чтобы значение появилось на фронтенде, его нужно вывести в шаблоне темы или через плагин, который умеет работать с custom fields.

Как добавить пользовательское поле к записи или странице

Самый простой сценарий — добавить поле вручную через админку. Это подходит, если вы не хотите сразу писать код и вам нужно проверить идею на одном материале.

  1. Откройте нужную запись, страницу или другой тип контента.
  2. Включите блок пользовательских полей, если он скрыт.
  3. Добавьте новый ключ, например event_date.
  4. Укажите значение, например 2026-10-28.
  5. Сохраните запись.

После сохранения WordPress запишет это значение в метаданные записи. Для одной и той же записи можно добавить несколько полей: одно для даты, другое для цены, третье для ссылки.

Если вы планируете использовать поля системно, лучше заранее придумать единый формат ключей. Например, для события: event_date, event_location, event_price. Это упростит вывод и снизит риск путаницы.

Как вывести значение пользовательского поля в шаблоне

Чтобы показать custom field на сайте, в шаблоне темы используют функции WordPress для получения метаданных записи. Для одиночной записи это обычно делается через get_post_meta().

Ниже пример, который выводит значение поля event_date внутри шаблона записи. Код можно вставить в файл темы, где выводится нужный блок, например в single.php или в шаблон части записи.

<?php
$event_date = get_post_meta( get_the_ID(), 'event_date', true );

if ( ! empty( $event_date ) ) {
    echo '<p class="event-date">Дата события: ' . esc_html( $event_date ) . '</p>';
}
?>

Здесь важны две вещи. Во-первых, третий параметр true означает, что функция вернёт одно значение, а не массив. Во-вторых, вывод нужно экранировать через esc_html(), если значение показывается как обычный текст. Это базовая защита от некорректного вывода и лишнего HTML.

Если поле содержит URL, используйте esc_url(). Если это число, его лучше привести к нужному типу перед выводом, например через floatval() или intval(), в зависимости от задачи.

Как вывести пользовательское поле в нужном месте без правки шаблона

Не всегда удобно редактировать файлы темы. Если задача локальная и вы не хотите лезть в шаблоны, можно использовать плагин для вставки кода или блоков, но сам принцип остаётся тем же: WordPress должен получить значение поля и вывести его в нужном месте.

Для разработчика самый надёжный путь — создать небольшой шаблонный фрагмент в дочерней теме. Так вы не потеряете изменения после обновления основной темы. Если тема поддерживает хуки и фильтры, иногда можно вставить вывод через них, но это уже зависит от конкретной темы и её архитектуры.

Если вы используете конструктор или блоковую тему, иногда удобнее вывести значение через пользовательский HTML-блок с динамическим PHP не получится напрямую. В этом случае либо подключают соответствующий плагин для динамических данных, либо добавляют отдельный шаблонный блок в теме. Для обычного сайта без сложной логики проще и надёжнее использовать шаблон PHP.

Как работать с несколькими полями и не запутаться

Когда на сайте появляется несколько custom fields, проблема обычно не в WordPress, а в хаосе именования. Если ключи названы по-разному, потом сложно понять, что где хранится и как это выводится.

Практика, которая обычно работает без лишней сложности:

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

Если вы делаете сайт с повторяющимися карточками — например, мероприятия, услуги, кейсы, объекты недвижимости — custom fields быстро окупаются. Они позволяют не дублировать текст вручную и не править каждый блок отдельно.

Как проверить, что поле работает правильно

После добавления и вывода поля стоит проверить не только сам факт отображения, но и поведение в реальных сценариях.

Проверьте следующее:

  • значение отображается только там, где нужно;
  • пустое поле не создаёт пустой HTML-блок;
  • при изменении значения в админке на сайте показывается новая версия;
  • формат вывода соответствует типу данных: дата выглядит как дата, ссылка — как ссылка, число — как число.

Если значение не выводится, обычно причина одна из трёх: неверный ключ, поле не заполнено у текущей записи или код вставлен не в тот шаблон. Для проверки можно временно вывести результат var_dump( get_post_meta( get_the_ID(), 'event_date', true ) );, но после диагностики такой код нужно убрать, чтобы не показывать служебные данные посетителям.

Когда лучше использовать не ручной код, а готовое решение

Если вам нужно всего несколько полей для пары страниц, ручной способ с get_post_meta() обычно достаточно удобен. Но если полей много, они должны иметь разные типы данных, а редактору нужно заполнять их без риска ошибиться, лучше использовать специализированный плагин для произвольных полей или кастомных метабоксов. Это уже вопрос удобства администрирования, а не самого принципа работы.

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

Если задача сводится к хранению дополнительной информации о записях, страницах или товарах без тяжёлой разработки, пользовательские поля в WordPress — один из самых практичных вариантов. Сначала добавьте значение в админке, затем выведите его в шаблоне через get_post_meta(), и при необходимости оберните вывод в проверку на пустое значение. Так вы получите рабочую и предсказуемую схему без лишней сложности.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как создать свой виджет в WordPress с примерами кода
01.10.2026
Как ускорить WordPress без плагинов: практические методы оптимизации
21.10.2026
Как добавить пользовательские поля в WordPress и вывести их на сайте
28.10.2026
Как настроить canonical в WordPress для борьбы с дублями страниц
12.10.2026
Как закрыть от индексации служебные страницы WordPress
08.10.2026
×
Halloween Game

Сыграй в игру, спаси сайт! Забери приз

Играть