CPT-Liste anzeigen, gefiltert nach 2 benutzerdefinierten Taxonomien, wobei 1 Taxonomie in einem Dropdown-Feld enthalten sein muss

Ich habe einen CPT namens “process”. Ich habe 2 benutzerdefinierte Taxonomien (supported_country, service_catalogues) erstellt, die als Filter für den CPT dienen. Das ‘supported_country’ sollte jedoch als Dropdown angezeigt werden.

Ich habe seit Tagen gegoogelt, wo ich sehen konnte, wie man wp_query mit mehreren Taxonomien benutzt. Ich konnte es zum Laufen bringen. Aber das Problem beginnt, wenn Sie wp_dropdown_categories zusammen mit wp_query . Bitte helfen Sie!

Das Problem mit dem folgenden Code ist, dass das supported_country nicht gefiltert wird.

In den functionen.php

 function genus_get_tools_in_taxonomy_term() { return new WP_Query( array( 'post_type' => 'process', // Slug of custom post type. 'posts_per_page' => -1, // Display infinite countries in the dropdown. 'tax_query' => genus_get_tools_in_taxonomy_term_tax_query(), ) ); } function genus_get_tools_in_taxonomy_term_tax_query() { $selected_term = genus_get_selected_taxonomy_dropdown_term(); // If a term has been selected, use that in the taxonomy query. if ( $selected_term ) { return array( array( 'taxonomy' => 'supported_country', // Taxonomy slug. 'field' => 'term_id', 'terms' => $selected_term ), ); } // Otherwise, don't filter just get all the results. return array(); } function genus_get_selected_taxonomy_dropdown_term() { return isset( $_GET[ 'supported_country' ] ) && $_GET[ 'supported_country' ] ? sanitize_text_field( $_GET[ 'supported_country' ] ) : ''; 

In der benutzerdefinierten Seite.php

 // Create and display the dropdown menu. wp_dropdown_categories( array( 'orderby' => 'NAME', // Order the items in the dropdown menu by their name. 'taxonomy' => 'supported_country', // Only include posts with the taxonomy of 'tools'. 'name' => 'supported_country', // Change this to the 'show_option_all' => 'All Supported Countries', // Text the dropdown will display when none of the options have been selected. 'selected' => genus_get_selected_taxonomy_dropdown_term(), // Set which option in the dropdown menu is the currently selected one. ) ); ?>   
    'process', 'tax_query' => array( array( 'taxonomy' => 'service_catalogues', 'field' => 'slug', 'terms' => $service_catalogues_term->slug, ), ), ); $tools_in_taxonomy_term = genus_get_tools_in_taxonomy_term(); $loop = new WP_Query($args); if ( $tools_in_taxonomy_term->have_posts() && $loop->have_posts() ) { echo '
  • '.$service_catalogues_term->name.'
  • '; while($tools_in_taxonomy_term->have_posts() && $loop->have_posts()) : /*$tools_in_taxonomy_term->the_post() &&*/ $loop->the_post(); echo '
  • '.get_the_title().'
  • '; endwhile; } } ?>

Solutions Collecting From Web of "CPT-Liste anzeigen, gefiltert nach 2 benutzerdefinierten Taxonomien, wobei 1 Taxonomie in einem Dropdown-Feld enthalten sein muss"