get_term_meta() – получает значение метаполя таксономии

Владислав Белецкий
Владислав Белецкий .
Категория:
Комментариев: 0

Данная функция используется, если вам нужно получить какие-то мета-данные элемента таксономии. Например рубрики или метки с определённым ID.

Эта функция по принципу работы очень похожа на get_post_meta().

get_term_meta( $term_id, $key = '', $single = false )

Параметры

$term_id
(целое) указываем ID элемента таксономии.
$key
(строка) указываем имя ключа мета поля. Если ключ не указать, то выведет массив всех мета полей данного элемента таксономии (термина).
$single
(логический) может принимать значения:

  • false — тогда возвращает все значения произвольных полей с указанным ключом в виде массива или пустой массив, если мета-поля с указанным ключом не существует. Вы всё поймёте, если посмотрите на скриншот таблицы wp_termmeta и на пример:
    таблица wp-postmeta в pHpmyadmin
  • true — возвращает самое первое значение произвольного поля с указанным ключом в виде строки, либо пустую строку, если мета-поля с указанным ключом не существует.

Примеры

1. Практическое использование параметра $single

Например мы можем взглянуть на скриншот ниже (я уже показывал его до этого) и поиграться с параметром $single.

$position = get_term_meta( 11, 'position', true );
echo $position; // выведет "unnormal"
$position = get_term_meta( 11, 'position' ); // третий параметр по умолчанию равен false
print_r( $position ); 
/*
Array
(
    [0] => unnormal
    [1] => normal
)
*/

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

$all_term_metas = get_term_meta( $term_id );
foreach( $all_term_metas as $meta_key => $meta_value ){
	echo $meta_key . ' : ' . $meta_value[0] . '<br />'; 
	// выводим каждое поле на новой строке
}

3. Использование для текущей рубрики/таксономии на странице архива этой таксономии

Тут основное, что я бы хотел показать вам, это то, что для получения ID текущей рубрики/метки/элемента таксономии на странице архива этой рубрики/метки/элемента таксономии, нам достаточно использовать функцию get_queried_object_id().

$term_image = get_term_meta( get_queried_object_id(), 'true_term_image', true );
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии