get_term_meta

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

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

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

✈ 1 раз = 0.00082с = медленно | 50000 раз = 8.23с = быстро

Хуков нет.

Возвращает
  • Если $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 {
	// метаданных нет...
}

Код из


wp-includes/taxonomy.php

WP 4.7.2

<?php
function get_term_meta( $term_id, $key = '', $single = false ) {
	// Bail if term meta table is not installed.
	if ( get_option( 'db_version' ) < 34370 ) {
		return false;
	}

	return get_metadata( 'term', $term_id, $key, $single );
}

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *