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

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

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

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

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

Если же данные нужны только для одного текста и не участвуют в шаблоне, отдельное поле обычно не требуется. В таком случае проще оставить информацию в основном контенте.

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

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

  1. Откройте нужную запись или страницу в редакторе.
  2. Нажмите меню с тремя точками в правом верхнем углу.
  3. Выберите Настройки и откройте раздел с панелями.
  4. Включите пункт Пользовательские поля.

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

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

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

Если вам нужно не одно-два поля, а аккуратная форма для редакторов, проще использовать плагин для произвольных полей. Самый практичный путь — создать группу полей и привязать её к записям нужного типа: постам, страницам, товарам или отдельному типу записей.

Логика обычно такая:

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

Это удобнее встроенного блока, потому что редактор видит понятные подписи, а вы контролируете формат данных. Например, поле Цена можно сделать числовым, а поле Ссылка на источник — URL. Тогда меньше шансов получить мусорные значения.

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

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

Если вы работаете с обычной темой и хотите вывести, например, поле subtitle в шаблоне записи, можно использовать такой код:

<?php
$subtitle = get_post_meta( get_the_ID(), 'subtitle', true );
if ( $subtitle ) {
    echo '<p class="post-subtitle">' . esc_html( $subtitle ) . '</p>';
}
?>

Здесь get_post_meta() получает значение поля по имени, а esc_html() защищает вывод от лишнего HTML и случайных вставок. Если в поле хранится обычный текст, такой вариант подходит лучше всего.

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

<?php
$link = get_post_meta( get_the_ID(), 'source_url', true );
if ( $link ) {
    echo '<a href="' . esc_url( $link ) . '" rel="nofollow noopener" target="_blank">Источник</a>';
}
?>

Для URL важно применять esc_url(), а не просто вставлять значение в атрибут href. Это базовая защита от некорректных данных.

Куда вставлять код, чтобы не сломать сайт

Если вы редактируете тему вручную, код обычно добавляют в шаблон нужного типа записи: single.php, page.php, шаблон записи в дочерней теме или файл, который отвечает за вывод конкретного блока. Вносить такие правки в родительскую тему не стоит: при обновлении они пропадут.

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

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

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

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

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

Что важно проверить после настройки

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

Проверьте три вещи:

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

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

Типичные ошибки при работе с custom fields

Чаще всего проблемы возникают не из-за самих пользовательских полей, а из-за того, как их выводят.

  • Используют неправильный ключ поля. Имя в коде должно совпадать с тем, что сохранено в метаданных.
  • Выводят значение без экранирования. Для текста используйте esc_html(), для URL — esc_url().
  • Правят родительскую тему. После обновления изменения исчезнут.
  • Не проверяют пустое значение. В результате на странице появляются пустые блоки.

Если поля используются для контента, который видят посетители, лучше сразу договориться о формате: что хранится в поле, как оно называется и где именно выводится. Это экономит время, когда сайт начинает наполнять не разработчик, а редактор.

Какой способ выбрать в реальной работе

СценарийЧто выбратьПочему
Нужно одно-два поля для редких материаловВстроенные пользовательские поляНе требует установки плагина
Поля нужны регулярно и их заполняют редакторыПлагин с группами полейУдобнее интерфейс и меньше ошибок ввода
Значение должно выводиться в конкретном месте шаблонаПоля + правка шаблонаДаёт точный контроль над отображением
Нужно хранить данные отдельно от оформленияПоля в дочерней теме или мини-плагинеПроще поддерживать при обновлениях

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

Как создать шаблон страницы в WordPress и назначить его нужным страницам
23.10.2026
Оптимизация загрузки изображений в WordPress: лучшие практики и плагины
02.10.2026
Как отключить Gutenberg и вернуть классический редактор в WordPress
19.10.2026
Как настроить robots.txt в WordPress для SEO и не заблокировать важные страницы
12.10.2026
Как добавить пользовательские поля в WordPress и вывести их на сайте
26.10.2026
×
Твой WordPress — твои правила!

Топовые темы и плагины со скидкой 20%.

Забрать выгодно ⋙