Custom Post Types auf Startseite / Blog-Seite anzeigen

Nachfolgend wird beschrieben, wie Custom Post Types in die Auflistung der neusten Posts auf der Startseite oder der Blog-Seite integriert werden können.

Im folgenden Beispiel ist der heißt der Custom Post Type mycpt. Um den Custom Post Type nun der Startseite und der Blog-Seite hinzuzufügen reicht folgender Code:

add_filter( 'pre_get_posts', function ( $query ) {
    if ( is_home() && $query->is_main_query() ) {
        $query->set( 'post_type', array( 'post', 'mycpt' ) );
    }

    return $query;
} );

Um Custom Post Types zusätzlich auch dem Feed hinzuzufügen, einfach folgenden Code nutzen:

add_filter( 'pre_get_posts', function ( $query ) {
    if ( ( is_home() && $query->is_main_query() ) || is_feed() ) {
        $query->set( 'post_type', array( 'post', 'mycpt' ) );
    }

    return $query;
} );