Intereting Posts
Навигация по страницам не отображается, когда категория запроса WordPress add_rewrite_rule () не может посещать уровни нижнего уровня Как получить список категорий, присвоенных текущему сообщению? В меню выбора должны отображаться категории и глубина элемента Иерархические пользовательские типы сообщений в массиве Как получить метаданные комментариев по идентификатору сообщения Как я могу сделать перевод «Оставить комментарий»? Добавить пользовательскую роль в сети в многопользовательском режиме wp_update_post не работает Как построить многотаксономический многопользовательский запрос на основе пользовательского ввода Как включить иерархические постоянные ссылки для иерархических таксономий Как включить / импортировать пользовательский виджет из родительской темы в тему «Мой ребенок»? Верхняя панель администратора / панель инструментов не отображается даже при входе в систему, но отображается пустое верхнее поле? Как изменить домен WordPress с удаленного на localhost? Связанный с WordPress плагин – показывать только, если связанный контент

Вызов связанных сообщений в пользовательский тип сообщения, таксономия и идентификатор тега

Я пытаюсь вызвать связанные записи настраиваемого типа сообщений по категории сообщения, которое загружается на страницу.

Ниже, где я нахожусь –

<?php $blogcats = get_the_term_list(); if (( 'post' == get_post_type() )) { $posttypenews = 'post'; } if (( 'blog' == get_post_type() )) { $posttypenews = 'blog'; } ?> <div id="news-related-posts-title" class="clear"><h1>Related Posts</h1></div> <?php $related = get_posts( array( 'numberposts' => 5, 'blog_cats' => $blogcats, 'post_type' => $posttypenews, 'post__not_in' => array($post->ID) ) ); if( $related ) foreach( $related as $post ) { setup_postdata($post); ?> <div id="news-related-posts"> <div id="news-related-posts-container"> <div id="news-related-posts-left"> <?php the_post_thumbnail('thumbnail'); ?> </div> <div id="news-related-posts-right"> <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a> </div> </div> </div> <?php } wp_reset_postdata(); ?> 

Если я изменю $blogcats = get_the_terms(); to $blogcats = 'the tag_id'; это работы, но я изо всех сил пытаюсь назвать это из поста, загруженного …

Мне что-то не хватает?

заранее спасибо

Solutions Collecting From Web of "Вызов связанных сообщений в пользовательский тип сообщения, таксономия и идентификатор тега"

get_the_term_list() возвращает HTML, но вы пытаетесь использовать его, как если бы он возвращал термин ID – 'blog_cats' => $blogcats, . Это не сработает. Вам нужно будет использовать get_the_terms() и tax_query (думаю, я не уверен на 100%).

Что-то вроде:

 $blogcats = get_the_terms($post->ID,'category'); // var_dump($blogcats); $blogcats = wp_list_pluck($blogcats,'term_id'); // var_dump($blogcats); $related = get_posts( array( 'post_per_page' => 5, 'tax_query' => array( array( 'taxonomy' => 'category', 'field' => 'slug', 'terms' => $blogcats, ) ), 'post_type' => $posttypenews, 'post__not_in' => array($post->ID) ) );