Intereting Posts
проблема с циклом Возможно ли вернуть определенный тег-архив / шаблон в качестве одного из результатов поиска? Список всех существующих плагинов WordPress Показать последнюю отдельную страницу сообщения определенной категории, нажав на пункт меню? Проблема импорта локального хоста и сервера Постоянная структура между двумя пользовательскими типами сообщений и таксономией Как показать пост-метрики на интерфейсе? почему HTML-тег не работает в Post и Page Каков соответствующий поток для пользовательских данных из URL-адреса в WP_Query? Как использовать, если условие для изменения $ table_prefix в wp_config.php Как получить содержимое пользовательского типа сообщений через идентификатор сообщения в wordpress WP 3.3.1 Не удается получить jQuery Datepicker для работы Редактирование раздела справки Google Analytics не будет работать в WordPress Виджет для панели управления CSS

Добавление похожих статей для публикации

Я потянул мои волосы, пытаясь найти похожие статьи. Я пробовал несколько методов, но это единственный, который дал мне результаты, но показаны случайные сообщения, а не сообщения, связанные с ним по статьям.

<?php $args=array('tag_in'=>$tags, 'exclude'=>$post->ID, 'post_per_page'=> 4, 'ignore_sticky_posts'=>1, 'post_type'=>array('ms','gnd','events','news_article','opinions','projects','tenders','videos','products')); $rel_pst=get_posts($args); $count = 0; if($tags){ foreach($rel_pst as $rel):setup_postdata($rel);//Loop through and find related posts if($count==4) { break; } $image = wp_get_attachment_image(get_post_thumbnail_id($rel->ID),'related-posts'); //$tagy=$tags[$count]; //Counts iterations to place aricles on seperate sides if (($count == 0)||($count == 2)){// first article start echo '<div class="posts_wrapper">'; echo '<article class="item_left">'; } if(($count == 1)||($count == 3)){// second article start echo'<article class="item_right">'; } ?> <div class="pic"> <a href="<?php echo get_permalink($rel); ?>" class="w_hover img-link img-wrap"> <?php echo $image; ?></a> </div> <h3><a href="<?php echo get_permalink($rel);?>"><?php echo get_the_title($rel); ?></a></h3> <div class="post-info"> <a href="<?php echo get_permalink($rel);?>" class="post_date"></a> <a href="<?php echo get_permalink($rel); ?>" class="comments_count"></a> </div> </article> <?php if(($count == 1)||($count == 3)){//second article/4th end echo '</div>'; } $count ++; endforeach; } //wp_reset_postdata(); ?> 

Любая помощь будет оценена

Solutions Collecting From Web of "Добавление похожих статей для публикации"

1) Это tag__in (два tag__in подчеркивания) 2) get_the_tags() возвращает массив объектов , вам нужны идентификаторы:

 if ( $the_tags = get_the_tags() ) { // https://developer.wordpress.org/reference/functions/wp_list_pluck/ $the_tags = wp_list_pluck( $the_tags, 'term_id' ); } $rel_pst = get_posts( array( 'tag__in' => $the_tags, 'exclude' => $post->ID, 'post_per_page' => 4, 'ignore_sticky_posts' => true, 'post_type' => array( 'ms', 'gnd', 'events', 'news_article', 'opinions', 'projects', 'tenders', 'videos', 'products', ), )); if ( $rel_pst ) { // Do your thing } 

Не зная значения переменной $tags (вы не показываете ее нам), единственное, что я вижу в вашем коде, – это аргумент tag_in , правильным является tag__in (обратите внимание на double _ ).

Также обратите внимание, что tag__in работает с таксономией основного тега. Эта таксономия не поддерживается стандартными типами сообщений по умолчанию, только по стандартным типам сообщений.