J'espère que quelqu'un pourra m'aider avec ça. J'ai un type de publication personnalisé ("article") dans mon installation WordPress et j'aimerais afficher ces publications à côté des publications par défaut dans le flux de publication normale.
Ceci est ma boucle actuelle:
<?php
if ( have_posts() ) {
while ( have_posts() ) {
the_post();
global $more;
$more = 0;
//include the post template
locate_template( array( 'includes/post-template.php' ), true, false );
}
locate_template( array( 'includes/post-pagination.php' ), true, false );
}else {
_e( 'No posts available', 'pexeto' );
}
?>
Vous avez besoin de quelque chose comme ça dans votre fichier functions.php, j'utilise l'action suggérée par Pieter.
function add_custom_post_type_to_query( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( 'post_type', array('post', 'article') );
}
}
add_action( 'pre_get_posts', 'add_custom_post_type_to_query' );
Vous pouvez en savoir plus sur le pre_get_posts
dans la documentation .
J'ai fini par utiliser cela et cela a fonctionné comme un charme.
function add_custom_post_type_to_query( $query ) {
if ( is_home() ) {
$query->set( 'post_type', array('post', '2nd-post-type', '3rd-post-type') );
}
}
add_action( 'pre_get_posts', 'add_custom_post_type_to_query' );
Vous pouvez le voir en action sur http://bestmotorcycleroads.com