Несмотря на множество положительных моментов в WordPress, у него есть некоторые неудобства, в первую очередь для разработчиков. Основная команда WordPress не уделяет приоритетного внимания проблемам разработчиков — вместо этого они сосредоточены на конечных пользователях и легкости для начала разработки сайтов WordPress. Carbon Fields – это плагин, основной задачей которого является сделать WordPress более удобной для разработчиков платформой веб-разработки. Этот плагин является альтернативой ACF и многие функции, которыми в ACF можно воспользоваться платно, в Carbon Fields абсолютно бесплатны. Carbon fields – это библиотека, которая позволяет легко создавать пользовательские (мета) поля в панели администрирования WordPress. Это позволяет разработчикам темы связывать метаинформацию с различными объектами на сайте WordPress (такими как сообщения, термины таксономии, виджеты и т. д.). Carbon fields можно установить через composer (требует htmlburger/carbon-fields) или пакетно. Библиотека поддерживает PHP 5.3+ и использует пространства имен PHP. Основными компонентами библиотеки являются:
  • Container-представляет и управляет группой полей.
  • Field -представляет собой одно поле.
  • Data Storage -управляет базовым хранилищем данных для значений полей.

Установка Carbon Fields

Если вы не хотите использовать composer для установки Carbon Fields, вы можете использовать один из готовых пакетов:
  1. Для начала нужно скачать плагин здесь: https://carbonfields.net/zip/latest/ или посетите https://carbonfields.net/release-archive/ и выберите версию вручную.
carbon fields
  1. Затем загрузить .zip с помощью кнопки “Загрузить плагин” из админ-панели – плагины – > добавить новый.
carbon fields Добавьте в начало файла functions.php следующие строки:
use Carbon_Fields\Container; use Carbon_Fields\Field;   add_action( ‘carbon_fields_register_fields’, ‘crb_attach_theme_options’ ); function crb_attach_theme_options() { Container::make( ‘theme_options’, __( ‘Theme Options’ ) ) ->add_fields( array( Field::make( ‘text’, ‘crb_text’, ‘Text Field’ ), ) ); }
Откройте / wp-admin / – теперь у вас есть новый раздел в админ-панели под названием “Theme Options” с текстовым полем. carbon fields Или, для удобства, можно создать отдельную папку в корне темы для плагина, например под названием Carbon_Fields, в ней папку custom-fields-options (можно назвать как вам удобно). А в этой папке создать 2 файла – metabox.php и theme-optons.php, соответственно для создания дополнительных полей к записям и страницам и для создания произвольных полей в админ-панели. Осталось подключить их в functions.php
use Carbon_Fields\Container; use Carbon_Fields\Field; add_action( ‘carbon_fields_register_fields’, ‘crb_register_custom_fields’ ); function crb_register_custom_fields() { // путь к пользовательскому файлу определения поля (полей), измените под себя require_once __DIR__ . ‘/inc/custom-fields-options/metabox.php’; require_once __DIR__ . ‘/inc/custom-fields-options/theme-optons.php’; }
Теперь этот фрагмент
<?php
    use Carbon_Fields\Container;
use Carbon_Fields\Field;
    Container::make( ‘theme_options’, __( ‘Theme Options’ ) ) ->add_fields( array( Field::make( ‘text’, ‘crb_text’, ‘Text Field’ ), ) );
Вставим в файл ‘theme-optons.php’ Это делается для того, чтобы не раздувать functions.php особенно если вы планируете создавать много дополнительных полей. Также можно не загружать плагин через админ панель, а установить его как библиотеку. Переходим по ссылке carbonfields.net и скачиваем нужную нам версию архива CF. Потом перемещаем папку carbon-fields в папку с темой или в нужный каталог и подключаем файл carbon-fields-plugin.php в файле functions.php следующим образом:
require_once get_stylesheet_directory().’/inc/carbon-fields/carbon-fields-plugin.php’;