WordPress как на ладони
rgbcode is looking for WordPress developers.

wp_get_post_tags()WP 2.3.0

Получает список меток указанного поста в виде массива.

Это обертка для функции wp_get_post_terms().

Работает на основе: wp_get_post_terms()
1 раз — 0.016552 сек (тормоз) | 50000 раз — 16.89 сек (медленно) | PHP 7.2.5, WP 4.9.8

Хуков нет.

Возвращает

Массив|WP_Error.

  • array( WP_Term, WP_Term ) — массив объектов WP_Term
  • array() — пустой массив если меток не найдено.
  • WP_Error — object WP_Error если таксономия post_tag не существует.

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

wp_get_post_tags( $post_id, $args );
$post_id(число)
ID поста.
$args(массив)

Переписывает аргументы по умолчанию. Весь список аргументов смотрите в описании функции wp_get_object_terms().

По умолчанию в $args устанавливается параметр fields=all (получить все поля термина). Другие значения этого аргумента: names (получать только названия терминов) и ids (только ID терминов ).

По умолчанию: array()

Примеры

1

#1 Получим метки текущего поста

Допустим пост имеет следующие метки: tag2, tag5 и tag6:

$tags = wp_get_post_tags( $post->ID );
print_r( $tags );

/*
В результате получим на экране следующий код:

Array(
   [0] => stdClass Object (
		   [term_id] => 4
		   [name] => tag2
		   [slug] => tag2
		   [term_group] => 0
		   [term_taxonomy_id] => 4
		   [taxonomy] => post_tag
		   [description] => 
		   [parent] => 0
		   [count] => 7
	   )

   [1] => stdClass Object (
		   [term_id] => 7
		   [name] => tag5
		   [slug] => tag5
		   [term_group] => 0
		   [term_taxonomy_id] => 7
		   [taxonomy] => post_tag
		   [description] => 
		   [parent] => 0
		   [count] => 6
	   )

   [2] => stdClass Object (
		   [term_id] => 16
		   [name] => tag6
		   [slug] => tag6
		   [term_group] => 0
		   [term_taxonomy_id] => 16
		   [taxonomy] => post_tag
		   [description] => 
		   [parent] => 0
		   [count] => 2
	   )
)
*/
0

#2 Получим список ID меток текущего поста

В списке будут только ID меток (поле ids):

global $post;
$tag_ids = wp_get_post_tags( $post->ID, array( 'fields' => 'ids' ) );
// $tag_ids = [ 4, 7, 16 ]

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

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

Код wp_get_post_tags() WP 6.6.2

function wp_get_post_tags( $post_id = 0, $args = array() ) {
	return wp_get_post_terms( $post_id, 'post_tag', $args );
}
5 комментариев
    Войти