J'exécute une requête personnalisée sous chaque message pour obtenir un autre message de sa catégorie. Maintenant, je veux exclure le post actuel. Ceci est ma requête:
<?php // related_posts();
$exclude_post = $post->ID;
$cats = get_the_category();
//$cats[0]->term_id;$cats[1]->term_id; //name
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;
?>
Maintenant, ma requête montre 0 résultats. Idem, si je règle le poste qui doit être exclu de l’essai à 1 ou plus.
Quelle pourrait être l'erreur dans ma requête personnalisée?
Vive Lars
Vous essayez de fournir un tableau dans le cadre du paramètre de requête de chaîne. Vous pourriez plutôt simplement fournir la liste des arguments sous forme de tableau comme ceci:
$newQuery = new WP_Query(
array(
'posts_per_page' => 5,
'orderby' => 'Rand',
'cat' => $cats[0]->term_id,
'post__not_in' => array($exclude_post)
)
);