register_term_meta()WP 4.9.8

Регистрирует метаполе для указанной таксономии.

Это обертка функции register_meta(), чтобы удобнее и понятнее было регистрировать метаполе для таксономии.

Чтобы сделать тоже самое для типа записи, смотрите register_post_meta().

Работает на основе: register_meta()
1 раз — 0.000001 сек (скорость света) | 50000 раз — 0.26 сек (очень быстро) | PHP 7.1.11, WP 4.9.8

Хуков нет.

Возвращает

true|false.
true - если мета-ключ был успешно зарегистрирован в глобальном массиве $wp_meta_keys.
false - если не удалось зарегистрировать ключ.

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

register_term_meta( $taxonomy, $meta_key, $args );
$taxonomy(строка) (обязательный)
Таксономия для которой регистрируется метаполе. Передайте пустую строку для регистрации мета-ключа для всех существующих таксономий.
$meta_key(строка) (обязательный)
Название ключа, который нужно зарегистрировать.
$args(массив) (обязательный)

Данные описывающие метаполе. По умолчанию такие:

$args = array(
	'type'              => 'string',
	'description'       => '',
	'single'            => false,
	'sanitize_callback' => null,
	'auth_callback'     => null,
	'show_in_rest'      => false,
);

Описание каждого параметра смотрите в функции register_meta().

Примеры

0

#1 Регистрация метаполя для таксономии shelves

register_term_meta( 'shelves', 'my_meta_key', array(
	'show_in_rest'      => true,     // Добавим в ответ REST
	'sanitize_callback' => 'absint', // Обработаем значение поля при сохранение его в базу, функцией absint()
) );

Тоже самое можно сделать с помощью register_meta(), так:

register_meta( 'term', 'my_meta_key', array(
	'object_subtype'    => 'shelves', // таксономия
	'show_in_rest'      => true,
	'sanitize_callback' => 'absint',
) );
0

#2 Расширенное значение атрибута show_in_rest

Использование этой функции с указанием schema в атрибуте show_in_rest. Добавляет это поле в rest запрос, а также описывает это поле в rest запросе OPTIONS.

register_term_meta( 'replica', 'nice_field', [
	'type' => 'string',
	'description' => 'a nice description',
	'single' => true,
	'show_in_rest' => [
		'schema' => [
			'type' => 'string',
			'format' => 'url',
			'context' => [ 'view', 'edit' ],
			'readonly' => true,
	   ]
	],
] );

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

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

Код register_term_meta() WP 6.5.2

function register_term_meta( $taxonomy, $meta_key, array $args ) {
	$args['object_subtype'] = $taxonomy;

	return register_meta( 'term', $meta_key, $args );
}