Wenn die Suche mit der Taxonomie übereinstimmt

Ist es möglich, den Benutzer auf die Taxonomieseite umzuleiten, WENN die Sucheingabe genau mit dem Namen der Taxonomie übereinstimmt?

Zum Beispiel habe ich eine Taxonomie namens “Actors”. Wenn jemand in das Suchfeld “Tom Hanks” einbettete anstatt auf die normale Suchseite zu gehen, würde er sie auf die Taxonomieseite für Tom Hanks redirect.

Solutions Collecting From Web of "Wenn die Suche mit der Taxonomie übereinstimmt"

Ich wollte nur Tags in einer einzigen Taxonomie abgleichen, so dass ich den Code wie folgt vereinfachen konnte. Meine Taxonomie ist ‘post_tag’ – tausche sie einfach nach Bedarf aus.

$i = 0; $search_query = get_search_query(); $term = get_term_by( 'name', $search_query, 'post_tag' ); if( $term !== false ) { $i++; $single_result = $term; } if( $i == 1 && is_object( $single_result ) ) { $single_found = true; } else { $single_found = false; unset( $single_result ); } if( $single_found ) { wp_redirect( get_bloginfo( 'url' ) . '/' . $single_result->slug ); } 

Wie wäre es mit etwas in dieser Richtung?

 $tax_args = array( 'public' => true ); $taxonomies = get_taxonomies( $tax_args, 'names', 'or' ); $i = 0; foreach( $taxonomies as $tax ) { $term = get_term_by( 'name', $your_search_term, $taxonomy ); if( $term !== false ) { $i++; $single_result = $term; } } if( $i === 1 && is_object( $single_result ) ) { $single_found = true; } else { $single_found = false; unset( $single_result ); } if( $single_found ) { wp_redirect( get_bloginfo( 'url' ) . '/' . $single_result->taxonomy . '/' . $single_result->slug ); } 

get_taxonomies() & get_taxonomies() : get_taxonomies() , get_term_by() , wp_redirect()