Intereting Posts
Как вставить форму HTML / JavaScript на страницу WordPress? Переместил мой сайт на новый хост, теперь получая 404 Как добавить несколько настраиваемых переменных URL? Воспроизведение видео с изображенного изображения? WordPress комментирует уведомление по электронной почте для авторов Получите метазначение, когда страница – это блог-архив почтовый счет ошибочен при использовании той же таксономии для двух разных CPT передать строку запроса на url для фильтрации медиа Ошибка «preg_match_all» с помощью WordPress SEO от плагина Yoast Как вы держите свой живой и тестовый сервер? Как обратиться к Google PageSpeed ​​Gods в отношении оптимизации изображений? Пользователь Admin перенаправляется в / wp-admin / user Woocommerce, как предотвратить добавление переменной пакета, изменяющей способ доставки по умолчанию Как добавить локальных пользователей в WordPress без пароля по электронной почте? Установлен успешно; домашняя страница по-прежнему перенаправляется на install.php

Получить теги для post_type

У меня есть несколько настраиваемых типов сообщений, которые имеют одни и те же теги.

В архиве для каждого типа пользовательских сообщений я хочу отобразить список используемых тегов и количество сообщений, связанных с каждым. get_tags() по умолчанию извлекает всю свою информацию из всего содержимого сайта.

Я не могу найти никаких фильтров для функции get_tags() , и я не хочу выполнять и интенсивные запросы / функции для ручного подсчета и ограничения.

Solutions Collecting From Web of "Получить теги для post_type"

Он должен работать:

 global $wpdb; // set the target relationship here $post_type = 'post'; $taxonomy = 'tag'; $terms_ids = $wpdb->get_col( $wpdb->prepare( " SELECT tt.term_id FROM {$wpdb->term_relationships} tr, {$wpdb->term_taxonomy} tt, {$wpdb->posts} p WHERE 1=1 AND tr.object_id = p.id AND p.post_type = '%s' AND p.post_status = 'publish' AND tr.term_taxonomy_id = tt.term_taxonomy_id AND tt.taxonomy ='%s' ", $post_type, $taxonomy ) ); // here you are $terms = get_terms( $taxonomy, array( 'include' => $terms_ids, 'orderby' => 'name', 'order' => 'ASC' ) ); 

Он получит ваши теги для определенного пользовательского типа сообщения. Тогда вы можете сделать:

 foreach( $terms as $tag ) { echo '<li class="type-tag">' . $tag->name . '</li>'; } 

для отображения ваших тегов в списке.