✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

Кодирование для расширенных настраиваемых полей: введение

57

Advanced Custom Fields (ACF) — это плагин WordPress, который является отличным инструментом для настройки пользовательских метаданных записей. Это позволяет вам легко создавать и настраивать сложные и удобные мета-блоки со всеми видами полей и настроек для типов сообщений, таксономии, пользовательских экранов и страниц параметров. И это очень удобно для разработчиков.

Теперь вы можете настроить свои собственные мета-поля или настройки вручную, но для более сложных настроек вам потребуется довольно много кода, включая стили, Javascript, проверку и сохранение обработки. Представьте себе например вручную написанный репитер с группой настроек, мультивыборка постов по определенному запросу. Или обработка параметров отображения, которые зависят от определенных переменных, таких как назначенный термин или шаблон страницы (для чего требуется Javascript). Advanced Custom Fields справляется со всем этим, и делает это прекрасно.

Имейте в виду, что расширенные настраиваемые поля фактически не будут выводить какие-либо ваши пользовательские метаданные в ваших шаблонах. Вывод или выполнение чего-либо на основе полей и настроек, настроенных с помощью ACF, зависит от вас, как от разработчика. Но это легко сделать, используя любой из методов ACF. Также приятно знать, что ACF использует мета-функциональность ядра WordPress (запись, термин, пользователь). Это означает, что он фактически сохраняет, например, настройки для сообщений в виде метаданных сообщений, которые вы можете получить, используя основные функции, такие как get_post_meta().

Расширенные настраиваемые поля доступны в бесплатной версии и в платной версии Pro. Бесплатная версия более чем достаточна для большинства случаев, но в версии Pro вы получаете некоторые дополнительные функции, такие как поле повторителя, поле галереи, блоки Гутенберга (см. далее) и возможность использовать ACF для настройки собственного пользовательского администратора. страницы опций. ACF также настолько популярен, что вы можете легко найти высококачественные расширения для всего, что ядро ​​ACF не покрывает.

Расширенные настраиваемые поля: административная часть

Когда вы установите плагин Advanced Custom Fields, вы получите новое меню администратора для «Пользовательских полей». Здесь вы можете установить и настроить свои «мета-поля» или группы настроек.

Внутри группы вы можете настроить любое количество полей разных типов. Наиболее распространенными являются ввод текста, текстовое поле, редактор форматированного текста, файл, изображение, истина/ложь (переключатель), флажки, переключатели и поле выбора. Другими распространенными способами являются несколько способов выбора сообщений, выбор таксономии, выбор пользователей, выбор даты, выбор цвета, Карты Google и многое, многое другое. В зависимости от того, какой тип поля вы выберете, вы получите ряд дополнительных опций для настройки поля. Вы также можете добавить условную логику в любое поле. Условная логика предназначена для скрытия или отображения полей в зависимости от других параметров в группе.

Для каждой группы настроек вы можете определить, в каких случаях эти настройки должны появляться. Например, при редактировании сообщений, терминов таксономии или редактировании пользователя. Вы можете дополнительно настроить видимость ваших настроек, например, для типа публикации. Или, если сообщению назначен определенный термин или шаблон страницы, если сообщение создано определенным автором, если роль пользователя такая-то или такая-то, роль текущего вошедшего в систему пользователя или если страница является родительской страницей. или нет. Вы также можете настроить, где должно отображаться мета-поле. Однако эта функциональность теперь несколько сокращена с новым редактором Gutenberg.

Кодирование для расширенных настраиваемых полей: введение

Настройка группы

Кодирование для расширенных настраиваемых полей: введение

Настройки для одного поля

Расширенные настраиваемые поля: часть кода

Давайте взглянем на более интересную часть: как вы можете использовать расширенные настраиваемые поля с помощью кода. Как упоминалось ранее, ACF очень удобен для разработчиков и предлагает широкий спектр возможностей настройки.

Получение значений и вывод их в шаблонах легко выполняется с помощью методов ACF. Например the_field('your_meta_key'), для прямого его повторения или get_field('your_meta_key')для сохранения в переменной PHP. Укажите идентификатор сообщения в качестве второго аргумента, если вам нужно получить данные вне цикла. Очень просто. Вы можете использовать get_post_meta(), но рекомендуется использовать методы ACF, так как ACF может преобразовать значение во что-то более значимое, прежде чем вернуть его вам.

Еще одна вещь, о которой вы должны знать, это инструмент экспорта в ACF. Вы можете экспортировать созданные группы в два формата; либо загружаемый файл JSON, либо чистый PHP-код. Файл JSON полезен, если вам нужно экспортировать настройки между тестовым и рабочим серверами или другим WordPress. Экспорт в чистом PHP дает вам возможность напрямую вставить его в PHP-файлы вашей темы или плагина.

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

Но подождите, есть еще! ACF также предлагает широкий спектр действий и фильтров для дальнейшей настройки полей или их значений. Существуют хуки для сохранения или рендеринга поля, а также хуки для регистрации групп по коду (упомянутые выше) и фильтры для настройки значений поля, настроек или выбора перед сохранением или перед рендерингом. Вы можете дополнительно указать, должен ли фильтр влиять на все поля, поля определенного типа или поля определенного мета-ключа. Все хуки и фильтры имеют префикс acf/.

Взгляните на страницу документации ACF ; нажмите «Функции», «Действия» или «Фильтры» для обзора. На этом сайте вы также найдете отличные учебные пособия и руководства.

Примечание о расширенных настраиваемых полях и Гутенберге

Создание пользовательских блоков Гутенберга на данный момент довольно сложно. Документация не совсем на месте, в нее часто вносятся изменения, и для написания кода требуется немного знаний Javascript. Желательно знание React и как настроить компилятор из JSX/ES6 с webpack и Babel.

Однако в версии 5.8 ACF Pro появилась возможность настроить группу полей как блок Гутенберга, что позволяет добавлять пользовательские блоки исключительно с помощью кода ACF и PHP. Знание Javascript не требуется!

Все, что вам нужно сделать, это настроить группы в админке или по коду, как обычно. Но затем определяя их местоположение как блок Гутенберга. Все, что осталось, — это добавить некоторый PHP-код, чтобы зарегистрировать их как пользовательский блок Gutenberg с расширением acf_register_block(). Для этой функции вы определяете обратный вызов функции PHP или файлу шаблона, который отвечает за рендеринг вывода блока. Вы пишете эту функцию или часть шаблона полностью на PHP и используете знакомые методы, например, get_field()для получения значений параметров.

Кодирование для расширенных настраиваемых полей: введение

Как выглядит блок ACF в редакторе Gutenberg

Следите за обновлениями в категории «Дополнительные настраиваемые поля», чтобы узнать, как использовать этот плагин!

Источник записи: awhitepixel.com

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