Ce qui suit est censé afficher 10 messages.
Parfois, il affiche 11, parfois 12, et parfois les 10 postes souhaités. Il se comporte de la même manière si j'échange posts_per_page
pour showposts
ou numberposts
.
Où dois-je rechercher le problème?
<ul>
<? wp_reset_query(); ?>
<? $args = array(
'orderby' => 'Rand',
'posts_per_page' => '10',
);
$query_footerFavorite = new WP_Query($args);
while ($query_footerFavorite->have_posts()) : $query_footerFavorite->the_post(); ?>
<li>
<a href="<? the_permalink(); ?>" title="<? the_title_attribute(); ?>">
<? the_title(); ?>
</a>
</li>
<? endwhile; ?>
<? wp_reset_query(); ?>
</ul>
Edit: Il semble qu'il y ait un problème avec la posts_per_page, voir print_r($query_footerFavorite)
:
WP_Query Object ( [query_vars] => Array ( [orderby] => Rand [posts_per_page] => 10 [error]
Le comportement attendu de posts_per_page
consiste à NE PAS compter les posts collants. Ceci peut être résolu avec 'ignore_sticky_posts' => 1
, mais les messages ne restent pas en haut du menu. (Dans le ticket trac pour les posts collants , cette question est discutée.)
Il existe des solutions de contournement telles que this one , mais elles me semblent toutes un peu hacky. Personnellement, j'essaie de gérer le comportement attendu et de styler la classe sticky
post.
showposts
est obsolète car WP2.1 et numberposts
ne semble être qu'un paramètre valide pour get_posts()
. (Même si je ne suis certes pas sûr de savoir pourquoi, le Codex ne mentionne pas cette question.)