web-dev-qa-db-fra.com

Afficher toutes les publications pour une catégorie donnée

Je souhaite pouvoir afficher toutes les publications d'une catégorie donnée à l'aide de mon modèle de catégorie par défaut category.php . Le problème est que le code que j'utilise définit l'ID de catégorie spécifique. Donc, chaque fois que je clique sur CAT2 ... tout le post pour CAT1 montre. Je veux qu'il soit simplement affiché pour CAT2 ou CAT3 ... selon ce qui est cliqué.

Code:

$args = array (
    'cat'            => 1,
    'orderby'        => Rand,
    'post_type'      => 'post',
    'post_status'    => 'publish',
    'posts_per_page' => 1000
);

$my_query = null;
$my_query = new WP_Query($args);

if( $my_query->have_posts() ) {
    while ($my_query->have_posts()) {
        $my_query->the_post();
        // Some code
    }
}
1
alyus

Vous pouvez utiliser la hiérarchie de modèles de WordPress .

Copiez votre fichier category.php et renommez-le.

category-{slug}.php – If the category’s slug is news, WordPress will look for category-news.php.
category-{id}.php – If the category’s ID is 6, WordPress will look for category-6.php.
category.php

Vous pouvez également utiliser template_include pour conditionnellement afficher un modèle

add_filter( 'template_include', 'category_page_template', 99 );

function category_page_template( $template ) {

if ( is_category()  ) {
    $new_template = locate_template( array( 'your-template.php' ) );
    if ( '' != $new_template ) {
        return $new_template;
    }
}

return $template;
}
1
Dev