Je montre les messages du terme 'football' appartenant à la section 'taxonomie', et tout fonctionne parfaitement, mais où puis-je spécifier le nombre de messages que je souhaite afficher?
juste comme ceci: 'showposts' => 3
Je ne sais pas où le mettre
$myquery['tax_query'] = array(
array(
'taxonomy' => 'section',
'terms' => array('futbol'),
'field' => 'slug',
),
);
query_posts($myquery);
Jamais utilisateur query_posts
, en aucune circonstance. Utilisez plutôt WP_Query
, qui explique comment query_posts fonctionne en interne, mais sans la ruse et les inconvénients.
Vous constaterez également que la documentation WP_Query vous donne des explications pour chaque paramètre, y compris ce que vous essayez de faire:
posts_per_page (int) - nombre de publications à afficher par page (disponible avec la version 2.1, paramètre
showposts
remplacé). Utilisez'posts_per_page'=>-1
pour afficher toutes les publications (le paramètre 'offset
' est ignoré avec une valeur-1
). Définissez le paramètre 'paginé' si la pagination est désactivée après l'utilisation de ce paramètre. Remarque: si la requête est dans un flux, wordpress remplace ce paramètre par l'option 'posts_per_rss
' stockée. Pour réimposer la limite, essayez d’utiliser le filtre 'post_limits
' ou filtrez 'pre_option_posts_per_rss
' et renvoyez -1.
Y compris un exemple:
Afficher x messages par page
Afficher 3 articles par page:
$query = new WP_Query( 'posts_per_page=3' );
ou comme je le dirais:
$args = array(
'posts_per_page' => 3
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
// display the post
}
}
Notez que la boucle principale est la même que lors de l'utilisation de query_posts, seulement j'ai ajouté $query->
au début de have_posts
et the_post
?
Vous pouvez maintenant modifier les paramètres à ajouter à votre requête fiscale
$args = array(
'posts_per_page' => 3,
'tax_query' => array(
...etc
)
);
Cela fonctionne, merci Tom :)
<?php
$args = array(
'posts_per_page' => 2,
'tax_query' => array(
array(
'taxonomy' => 'section',
'field' => 'slug',
'terms' => array('futbol'),
)
)
);
$query = new WP_Query( $args );
if ( $query->have_posts() ) {
while( $query->have_posts() ) {
$query->the_post();
//The Post
}
}
?>
Vous voulez plutôt posts_per_page
:
$myquery = array(
'posts_per_page' => 3,
'tax_query' => array(
array(
'taxonomy' => 'section',
'terms' => array( 'futbol' ),
'field' => 'slug',
),
),
);