Плагин Carbon fields. Часть 3 – Типы условий

Автор: | 25.06.2019

Напомню, что в прошлой статье я рассказала о том, как использовать плагин Carbon fields, в частности о методе создания контейнера Container:: make ($type, $title), и условных отображениях с помощью одного из следующих методов:

 

->where( $condition, $comparison_operator, $value )- добавляет условие с AND (и)

->or_where( $condition, $comparison_operator, $value )- добавляет состояние OR (или ).

 

Сегодня я подробнее остановлюсь на имени типа условий $condition

Итак, какие бывают типы условий (Condition Types).

post_meta (произвольные поля)

Контейнер будет отображаться на страницах редактирования постов (записей, страниц, произвольных типов записей)

Плагин Carbon fields. Часть 3 – Типы условий

Пример

// Отобразить container на странице с id=2

 

use Carbon_Fields\Container;

use Carbon_Fields\Field;

Container::make( 'post_meta', __( 'Homepage Settings' ) )

->where( 'post_type', '=', 'page' )

->where( 'post_id', '=', '2' )

->add_fields(array(

Field::make('text', 'crb_custom_text'),

Field::make('image', 'crb_photo'),

));

 

Вот, что должно получиться

Плагин Carbon fields. Часть 3 – Типы условий

term_meta (таксономии)

Для добавления дополнительных полей в рубрики, мета и так далее.

term_meta (таксономии)

Пример

// Отображение контейнера в таксономии категорий книг

 

Container::make( 'post_meta', __( 'Book Category Data' ) )

->where( 'term_taxonomy', '=', 'crb_book_category' )

->add_fields( array( .. ) );

 

User Meta (пользователи)
Для редактирования учетных записей пользователей.

carbon fields

Пример

// Отображение контейнера только для администраторов

 

Container::make( 'post_meta', __( 'Administrator' ) )

->where( 'user_role', '=', 'administrator' )

->add_fields( array( .. ) );

 

theme_options

carbon fields

Доступные условия

Приведенные ниже условия применимы к любому контейнеру и зависят от текущего пользователя

carbon fields

Пример

Параметры отображения темы страницы для пользователей, которые имеют возможности ‘manage_options’

 

Container::make( 'theme_options', __( 'Theme Options' ) )

->where( 'current_user_capability', '=', 'manage_options' )

->add_fields( array( .. ) )

 

Описание терминов
Условия, связанные с терминами, предполагают, что вы предоставляете им описание термина в качестве значения (массив дескрипторов термина для операторов IN и NOT IN).
Дескриптор термина — это массив, который имеет следующие ключи:

carbon fields

Пример использования

 

Container::make( 'post_meta', 'Custom Data' )

->where( 'post_term', '=', array(

'field' => 'slug',

'value' => 'featured',

'taxonomy' => 'category',

) )

 

Вкладки

Вкладки позволяют группировать несколько полей под разными панелями вкладок с помощью контейнерного метода add_tab ().

Вкладки можно использовать для всех типов контейнеров.

Пример:

 

use Carbon_Fields\Container;
use Carbon_Fields\Field;

Container::make( 'post_meta', __( 'User Settings' ) )
->where( 'post_type', '=', 'page' )
->add_tab( __( 'Profile' ), array(
Field::make( 'text', 'crb_first_name', __( 'First Name' ) ),
Field::make( 'text', 'crb_last_name', __( 'Last Name' ) ),
Field::make( 'text', 'crb_position', __( 'Position' ) ),
) )
->add_tab( __( 'Notification' ), array(
Field::make( 'text', 'crb_email', __( 'Notification Email' ) ),
Field::make( 'text', 'crb_phone', __( 'Phone Number' ) ),
) );

 

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

carbon fields

 

Плагин Carbon fields. Часть 4.2 –Типы полей. Complex.
Плагин Carbon fields. Часть 4.2 –Типы полей. Complex.

Сложные поля в Carbon fields, действуют как контейнеры, в которые Read more

Плагин Carbon fields. Часть 4.2 –Типы полей. Медиа (file, Image,Media Gallery)
Плагин Carbon fields. Часть 4.2 –Типы полей. Медиа (file, Image,Media Gallery)

Плагин Carbon fields позволяет загружать на станицы и записи медиа-файлы Read more

Плагин Carbon fields. Часть 4.2 –Типы полей. Дата и время.
Плагин Carbon fields. Часть 4.2 –Типы полей. Дата и время.

Продолжаем знакомство с плагином для создания произвольных полей Carbon fields. Read more

Плагин Carbon fields. Часть 3.3 — Comment Meta, Term Meta
Carbon fields Comment Meta

Продолжаем изучать плагин для создания произвольных полей Carbon fields. Сегодня Read more

Плагин Carbon fields. Часть 3.2 – Типы Контейнеров. Theme Options.
Theme Options

Контейнер Theme option используется для добавления страниц с различными параметрами Read more

Плагин Carbon fields. Часть 2 — Использование
Плагин Carbon fields

Container — это группа настраиваемых полей и параметров отображения. Они Read more

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

5 × 5 =