vladislavignatyev
@vladislavignatyev
Frontend & backend, WEB-dev, WEB master

Как вывести похожие посты с такими же метками(тегами), как у первого поста?

Всем привет!
У меня имеется форма поиска результат которого выводится на отдельной странице.
Как мне вывести похожие посты ( в моем случае товары ), с такими же тегами ( метками ), как у найденного поста ( товара ) ? Вывести их нужно ниже после всех остальных. Помогите пожалуйста... В инете находил решения, но не получается никак вытащить посты.
В выводе использую ACF, не пугайтесь

Код
<?php if ( $query->have_posts() ){ ?>
	
	Результаты: <?php echo $query->found_posts; ?> <br />
	<div class='search-filter-results-list'>
	<?php while ($query->have_posts()){ $query->the_post(); ?>

	<!-- Вывод данных поста -->
	<div class="container">
		<div class="product_description_inside_search clearfix">

			<div class="product_description_inside_img">
				<img src="<?php the_field('image_product') ?>">
			</div> 
			<div class="product_title_search">
			<h1>
				<?php the_field('pharm_name'); ?>
			</h1>
			</div>
			<div class="pharm_permalink">
				<a href="<?php the_permalink(); ?>">Подробнее</a>
			</div>
			<div class="where_buy_search">
				<span id="where_buy"><?php the_field('name_pharmacies'); ?></span><br>
			</div>
			<div class="pharm_price">
				<br><h2>Цена: <?php the_field('pharm_price'); ?></h2>
			</div>
		</div>
	</div>
	<!-- Вывод данных поста -->
			
	<?php } ?>
	</div>
<?php } else { ?>
	<div class='search-filter-results-list' data-search-filter-action='infinite-scroll-end'>
		<span>Нет результатов</span>
	</div>
<?php } ?>

  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
@po5epT
при выводе всех постов запоминаешь метку первого:
if(i === 1) $tags = get_the_tags(get_the_ID());
не забываем, что i надо объявить и увеличивать как положено в цикле.

Потом получаешь посты, через
get_posts( array("tag__in" => array(tags[0]->term_id)) );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы