На WordPress часто нужно дать владельцу сайта возможность менять не только обычный текст страницы. В админке должны редактироваться характеристики товара, преимущества услуги, контакты филиала, параметры блока, документы, повторяемые элементы и другие данные, которые используются в шаблоне.
Для таких задач я могу использовать Carbon Fields. Это библиотека для создания собственных полей в WordPress. Она позволяет привязать структурированные данные к записям, страницам, терминам, пользователям и настройкам сайта. Для многих проектов этого достаточно без обязательной покупки ACF Pro.
Когда обычного редактора WordPress мало
Если все данные хранить внутри одного визуального редактора, сайт быстро становится неудобным в поддержке. Менеджер должен помнить, где находится нужный текст, какой блок нельзя случайно удалить и какие значения должны совпадать на нескольких страницах.
Структурированные поля решают эту проблему. Вместо поиска нужного места в макете человек видит отдельные понятные поля. Например название модели, артикул, совместимость, PDF файл, срок гарантии и список характеристик.
Что можно вынести в Carbon Fields
Carbon Fields подходит для разных типов данных. Через него можно сделать поля для страниц и записей, настройки темы, данные рубрик, параметры пользователей и повторяемые группы.
- характеристики товаров и оборудования
- контакты и реквизиты компании
- списки преимуществ и этапов
- FAQ и повторяемые элементы
- галереи и документы
- настройки отдельных шаблонов
- данные для API и внешних интеграций
Структура проектируется под конкретный сайт. Я не добавляю десятки полей на всякий случай, потому что лишняя админка так же неудобна, как и отсутствие нормальных полей.
Почему я использую Carbon Fields
Мне нравится подход, при котором структура полей описана в коде проекта. Разработчик сразу видит, какие данные существуют, где они используются и при каких условиях должны появляться в админке.
Это удобно для кастомных тем, каталогов и проектов, где логика сайта уже находится в PHP. Поля становятся частью архитектуры, а не отдельной ручной настройкой, которую нужно восстанавливать по памяти после переноса проекта.
Чем это отличается от ACF
ACF остаётся хорошим и популярным инструментом. В некоторых проектах его интерфейс и экосистема удобнее. Поэтому я не заменяю ACF автоматически только ради замены.
Carbon Fields имеет смысл там, где нужна понятная структура полей, проект уже разрабатывается кодом и нет необходимости покупать ACF Pro ради функций, которые можно нормально реализовать другим способом.
Выбор зависит от существующего сайта. Если ACF уже используется и всё работает, обычно нет смысла переносить поля только ради другой библиотеки.
Повторяемые блоки без ручного копирования
Для списков услуг, этапов, слайдов, документов и похожих сущностей можно использовать complex fields. Редактор добавляет нужное количество элементов, меняет их порядок и заполняет только предусмотренные значения.
Шаблон получает структурированный массив данных и выводит его одинаково на всех страницах. Это снижает риск, что один блок случайно будет собран иначе или часть обязательных данных исчезнет.
Carbon Fields для сайта каталога
В каталоге без полноценной корзины WooCommerce часто вообще не нужен. Можно создать отдельный тип записей для товаров или оборудования, добавить таксономии для категорий и вынести характеристики в Carbon Fields.
Такой подход подходит для B2B каталогов, запчастей, оборудования, услуг и других проектов, где основной сценарий состоит в поиске позиции и отправке заявки менеджеру.
Если характеристик много, я отдельно продумываю, какие данные должны участвовать в фильтрации и поиске. Не каждое поле стоит хранить одинаково. Архитектура должна учитывать будущий рост каталога, а не только первые несколько карточек.
Поля для API и автоматизации
Структурированные данные удобны не только для шаблона. Их проще передавать в CRM, Telegram, внешнюю базу или другой сервис через API.
Например менеджер меняет код товара или внешний идентификатор в отдельном поле. Интеграция получает это значение программно и не пытается извлекать его из текста страницы.
Что входит в мою работу
Сначала я смотрю текущую структуру WordPress и определяю, какие данные действительно нужно вынести из шаблона. Затем создаю контейнеры и поля, подключаю их к нужным типам записей и связываю с выводом на сайте.
Если проект уже работает, изменения можно сделать без полной переделки дизайна. Внешний вид остаётся прежним, но контент становится удобнее редактировать.
При необходимости добавляю проверки значений, условия отображения, повторяемые группы и использование данных в API или собственном плагине.
Когда Carbon Fields не нужен
Если на сайте всего несколько обычных страниц и весь контент удобно менять в Gutenberg или Elementor, отдельная система полей может только усложнить проект.
Также не стоит менять уже настроенный ACF без конкретной причины. Цель не в том, чтобы использовать определённый инструмент. Цель в том, чтобы владелец сайта мог безопасно менять данные, а разработчик понимал структуру проекта.
Можно разобрать ваш WordPress проект
Если нужно сделать каталог, карточки услуг, настройки сайта или другую структуру с редактируемыми полями, отправьте ссылку и описание задачи через контакты. Я посмотрю текущую архитектуру и предложу вариант на Carbon Fields, ACF или собственных полях в зависимости от задачи.
Обсуждение
Вопросы и комментарии
Можно уточнить детали статьи или поделиться своим опытом. Первый комментарий проходит проверку.