Проблема с 'post__not_in'
16 окт. 2011 г., 22:00:40
Просмотры: 36.4K
Голосов: 3
Я выполняю пользовательский запрос под каждым постом, чтобы получить другие посты из той же категории. Теперь я хочу исключить текущий пост. Вот мой запрос:
<?php // related_posts();
$exclude_post = $post->ID;
$cats = get_the_category();
//$cats[0]->term_id;$cats[1]->term_id; //имя
global $post;
$newQuery = new WP_Query('posts_per_page=5&orderby=rand&cat='.$cats[0]->term_id.'&post__not_in='.array($exclude_post).'');
if ( $newQuery->have_posts() ):?>
<ul>
<?php
while ( $newQuery->have_posts() ) : $newQuery->the_post(); ?>
<li>
<a title="<?php the_title();?>" href="<?php the_permalink();?>"><?php the_title();?></a>
</li>
<?php
endwhile;?>
</ul>
<?php
endif;
?>
Сейчас мой запрос показывает 0 результатов. То же самое происходит, если я пробую установить ID поста, который должен быть исключен, равным 1 или другому значению.
Что может быть ошибкой в моем пользовательском запросе?
С уважением, Ларс

Lars
53
Все ответы на вопрос
1
0
Вы пытаетесь передать массив в качестве части строкового параметра запроса. Вместо этого вы можете просто передать список аргументов в виде массива, вот так:
$newQuery = new WP_Query(
array(
'posts_per_page' => 5,
'orderby' => 'rand',
'cat' => $cats[0]->term_id,
'post__not_in' => array($exclude_post)
)
);

Joe Hoyle
2.2K
16 окт. 2011 г. 22:33:43
Похожие вопросы
1
ответов
2
ответов
1
ответов
4
ответов