Как исключить из вывода пост по id в Wordpress?

Необходимо на сайте написанном на Wordpress сделать вывод новостей так:
1) одна последняя новость выводится с изображением, но только если у неё в тексте есть вставленная картинка;
2) остальные 7 новостей выводятся просто заголовками.
Как исключить из второго блока новость по идентификатору принадлежащему новости в первом блоке?

есть в файле functions.php такой код:
/* Вывод первой картинки поста */
function catch_that_image() {
  global $post, $posts;
  $first_img = '';
  ob_start();
  ob_end_clean();
  $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
  $first_img = $matches [1] [0];
  return $first_img;
}


А на главной странице:
<ol>
			<?php
				$temp_query = $wp_query;
				query_posts('showposts=1');
				while (have_posts()) : the_post();
				$postoff = $post->ID;
				echo "<li class='grid_10 alpha'><a href="; the_permalink(); echo ">"; echo "<img src='".catch_that_image()."'><span>"; the_title(); echo "</span></a></li>";
				endwhile;
				$wp_query = $temp_query;
	
		echo "</ol><ul class='grid_13 prefix_1'>";
				$temp_query = $wp_query;
				$wp_query = new WP_Query( array( 'posts_per_page' => 6, ) );
				while (have_posts()) : the_post();
				echo "<li><a href="; the_permalink(); echo ">"; the_title(); echo " <span>(";the_time('d.m.Y'); echo ")</span></a></li>";
				endwhile;
				$wp_query = $temp_query;
			?>
		</ul>

Как в блоке < ul >...< /ul > исключить из вывода пост с ID "$postoff" из блока < ol >...< /ol >?
  • Вопрос задан
  • 1999 просмотров
Решения вопроса 1
ya-vitaliy
@ya-vitaliy
Верстаю... + wordpress и пробую Laravel
Там где формируете запрос для второго блока добавьте параметр post__not_in c переменной $postoff
$wp_query = new WP_Query( array( 'posts_per_page' => 6, 'post__not_in'=>array($postoff) ) );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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