web-dev-qa-db-ja.com

カスタム投稿タイプをループに追加する

誰かがこれを手伝ってくれることを願っています。私は私のWordPressのインストールにカスタム投稿タイプ( 'article')を持っています、そして私はそれらの投稿を通常の投稿フィードのデフォルト投稿と一緒に表示したいです。

これが私の現在のループです:

<?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' );
}
?>
2

あなたはfunctions.phpファイルにこのようなものが必要です、私は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' );

ドキュメントでpre_get_postsについてもっと読むことができます

6
Tomás Cot

私はこれを使用することになった、そしてそれは魅力のように働いた。

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' );

あなたは http://bestmotorcycleroads.comで - 実際にそれを実際に見ることができます - /

0
tom