Задача. Необходимо на странице каталога Woocommerce вывести под названием товаров первые несколько их атрибутов. Вывод всех или нескольких атрибутов Решение…
wp_get_post_terms
wp_get_post_terms()
— функция Wordpress получает элементы указанной таксономии (метки, рубрики …) с которой связана указанная запись.
Для этой функции по умолчанию в $args
устанавливается параметр 'field=all'
(получить все поля термина). Другие значения этого аргумента: names
(получать только названия терминов) и ids
(только ID терминов ).
wp_get_post_terms( $post_id, $taxonomy, $args );
$post_id
(число) — ID поста. По умолчанию: 0 (текущий пост)$taxonomy
(строка/массив) — название таксономии термины которой будут получены. По умолчанию: «post_tag»$args
(массив) — массив аргументов. Переписывает аргументы по умолчанию.
fields
(строка) — какие поля термина нужно получить. По умолчанию: ‘all’. Может быть:all
— получить все поляnames
— получить только названияids
— получить только ID
Примеры использования:
$term_list = wp_get_post_terms( 1234, 'post_tag', array('fields' => 'names') ); /* получим: Array( [0] => Химия [1] => Физика [2] => Математика ) */
$term_list = wp_get_post_terms( 2647, 'post_tag', array('fields' => 'all') ); /* В $term_list получим: Array( [0] => stdClass Object( [term_id] => 33 [name] => Химия [slug] => for_newbie [term_group] => 0 [term_taxonomy_id] => 33 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 5 ) [1] => stdClass Object( [term_id] => 40 [name] => Физика [slug] => teoriya [term_group] => 0 [term_taxonomy_id] => 40 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 8 ) ) */