WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Авторские Темы для WordPress

get_term_meta() WP 4.4.0

Получает значение указанного мета поля элемента таксономии (рубрики, метки, и т.д.). Можно получить все значения в виде массива.

Функция работает аналогично get_post_meta(), за исключением того что получает произвольные поля элементов таксономии, а не постов.

Также, имеется различии в том что для элемента таксономии нет админ-интерфейса для добавления полей. Для этих целей следует использовать функции: add_term_meta() update_term_meta().

Работает на основе: get_metadata()
1 раз — 0.000125 сек (быстро) | 50000 раз — 0.20 сек (очень быстро) | PHP 7.1.2, WP 4.7.3

Хуков нет.

Возвращает

Разное. - Если $single = false, то массив значений указанного мета поля. Если значений нет, то пустой массив array().

  • Если $single = true, то отдельное значение указанного метаполя (первое в массиве), оно может быть любым (строкой, числом, объектом, массивом).

Использование

get_term_meta( $term_id, $key, $single );
$term_id(число) (обязательный)
ID элемента таксономии.
$key(строка)
Ключ мета поля.
По умолчанию: ''
$single(логический)

В каком виде возвращать значение.

  • false - массив значений
  • true - единственное значение (первое из массива, если значений несколько)

По умолчанию: false

Примеры

#1 Получаем единственное значение мета поля на странице элемента таксономии

Допустим у нас в метаполе test_meta_field рубрики 65 содержится строка Какой хороший день и нам нужно вывести эту строку на странице рубрики.

$term_id = get_query_var('cat'); // текущая рубрика, предположим мы зашли в рубрику 65
echo get_term_meta( $term_id, 'test_meta_field', true ); // выведет: Какой хороший день

#2 Получим все значения мета поля test_meta_field

$fields =  get_term_meta( 10 , 'test_meta_field', false );
if( $fields ){
	print_r( $fields );
	/* выведет
	Array
	(
		[0] => Привет мир
		[1] => Hello world
	)
	*/
}
else {
	// метаданных нет...
}

Список изменений

С версии 4.4.0 Введена.

Код get_term_meta() WP 5.7.2

<?php
function get_term_meta( $term_id, $key = '', $single = false ) {
	return get_metadata( 'term', $term_id, $key, $single );
}

Из метки: metadata (метаданные)

petrozavodsky 797alkoweb.ru
Делаю веб руками.
5 комментов
    Войти