it-swarm.com.de

Wie kann ich den benutzerdefinierten Beitragstyp einer aktuellen benutzerdefinierten Taxonomie für die Abfrage zuweisen?

Ich frage alle Beiträge eines benutzerdefinierten Beitragstyps ab, wenn der Besucher die zugewiesene benutzerdefinierte Taxonomie hat. Ich kann ein Array aller meiner benutzerdefinierten Beitragstypen in der Argumentliste verwenden, möchte dies jedoch dynamisch mit den Informationen der Kategorie tun, in der sich der Besucher befindet. Gibt es eine Möglichkeit, den Namen des benutzerdefinierten Beitragstyps aus der aktuellen Taxonomie abzurufen?

$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
if ( ! $paged ) {
    $paged = ( get_query_var( 'page' ) ) ? get_query_var( 'page' ) : 1;
}

$posts_per_page = get_option( 'posts_per_page' );

// Get the queried object and sanitize it
$current_page = sanitize_post( $GLOBALS['wp_the_query']->get_queried_object() );
// Get the slug
$slug_taxonomy  = @$current_page->taxonomy;

// Check if I'm in a category
if ( isset( $slug_taxonomy ) && ! is_null( $slug_taxonomy ) && ! empty( $slug_taxonomy ) ) {
    $query = new WP_Query( array(
            'posts_per_page' => $posts_per_page,
            'post_type'      => 'i_dont_know',   // How can I get the custom post type?
            'paged'          => $paged,
            'post_status'    => 'publish',
            'orderby'        => 'title',
            'order'          => 'ASC',
            'tax_query'      => array(
                array(
                    'taxonomy' => $current_page->taxonomy,
                    'field'    => 'term_id',
                    'terms'    => $current_page->term_id,
                )
            )
        )
    );
}
1
Andreas Rex

Sie können 'post_type' => 'any' verwenden, wenn Sie nicht sicher sind, welche Beitragstypen sich aus anderen Abfrageargumenten ergeben.

Laut Dokumentation passiert das standardmäßig , wenn Sie tax_query verwenden:

post_type (string/array) - benutze post Typen. Ruft Beiträge nach Beitragstypen ab. Der Standardwert ist 'post'. Wenn für eine Abfrage 'tax_query' festgelegt ist, wird der Standardwert zu 'any'

WP_Query/Typparameter

Außerhalb des WP_Query-Kontexts müssten Sie wahrscheinlich solche Informationen aus dem globalen $wp_taxonomies-Array abrufen, mit denen Taxonomien und Post-Typen verfolgt werden, für die sie gelten.

0
Rarst