WordPress : comment interroger une publication d’une catégorie spécifique
J’utilise WordPress 3.8. Je souhaite obtenir un message de requête d’une catégorie spécifique. Pour ce faire, j’ai utilisé le code suivant
<?php query_posts('post_type=post&category_id=3&post_status=publish&posts_per_page=10&paged='. get_query_var('paged')); ?>
<?php if(have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<p><?php the_content(); ?></p>
<?php endwhile; ?>
<?php endif; ?>
Je reçois tous les messages au lieu d’une catégorie spécifique. Quel est le problème avec ce code.
Solution n°1 trouvée
category_id=3 devrait juste être cat=3
<?php query_posts('post_type=post&cat=3&post_status=publish&posts_per_page=10&paged='. get_query_var('paged')); ?>
<?php if(have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<p><?php the_content(); ?></p>
<?php endwhile; ?>
<?php endif; ?>
Solution n°2 trouvée
En général, évitez d’utiliser query_posts
car cela modifie les globales à l’intérieur de la boucle principale. Vous pouvez utiliser get_posts()
:
<?php
$args = array( 'posts_per_page' => 5, 'offset'=> 1, 'category' => 1 );
$myposts = get_posts( $args );
foreach ( $myposts as $post ) : setup_postdata( $post ); ?>
<h2><?php the_title(); ?></h2>
<p><?php the_content(); ?></p>
<?php endforeach;
wp_reset_postdata();?>
tenez compte du fait que 1 est l’identifiant de la catégorie (recherchez l’identifiant de la catégorie que vous souhaitez récupérer sur votre base de données)
Ici vous trouverez plus d’informations
0 commentaire