Du warst schneller als ich. Genau das würde ich tun.
xLRDxREVENGEx
1
Was ist, wenn Sie keine Taxonomie haben?
EkoJR
2
Dies liefert eine Antwort, wenn die Taxonomie nicht verfügbar / unbekannt ist .
In meinem Fall gab es bei der Verwendung von get_term_by einige Fälle, in denen nur der Term Slug (keine Term-ID oder Taxonomie) vorhanden war. Was mich hierher geführt hat. Die Antwort löste mein Problem jedoch nicht ganz.
Lösung für leer $taxonomy
// We want to find the ID to this slug.
$term_slug ='foo-bar';
$taxonomies = get_taxonomies();foreach( $taxonomies as $tax_type_key => $taxonomy ){// If term object is returned, break out of loop. (Returns false if there's no object)if( $term_object = get_term_by('slug', $term_slug , $taxonomy )){break;}}
$term_id = $term_object->name;
echo 'The Term ID is: '. $term_id .'<br>';
var_dump( $term_object );
Ergebnis
TheTerm ID is:32object(WP_Term)public'term_id'=>int32public'name'=>string'Example Term'public'slug'=>string'example-term'public'term_group'=>int0public'term_taxonomy_id'=>int123public'taxonomy'=>string'category'public'description'=>string''public'parent'=>int0public'count'=>int23public'filter'=>string'raw'
Das Konzept erhält wie folgt ein Array von $taxonomies, durchläuft das Array und IF get_term_by()gibt eine Übereinstimmung zurück. Anschließend wird die foreach-Schleife sofort verlassen.
Hinweis: Ich habe versucht, nach einer Methode zu suchen, um die zugehörige Taxonomie (ID oder Slug) von Term Slug abzurufen. Leider kann ich in WordPress keine verfügbare Methode finden.
Ich habe eine Funktion erstellt und benutze sie bei Bedarf immer wieder.
function helper_get_taxonomy__by_slug($term_slug){
$term_object ="";
$taxonomies = get_taxonomies();foreach($taxonomies as $tax_type_key => $taxonomy){// If term object is returned, break out of loop. (Returns false if there's no object);if($term_object = get_term_by('slug', $term_slug, $taxonomy)){break;}else{
$term_object ="Warn! Helper taxonomy not found.";}}return $term_object;}
Antworten:
Die Funktion, die Sie suchen, ist
get_term_by
. Sie würden es als solches verwenden:Dies führt dazu,
$term
dass es sich um ein Objekt handelt, das Folgendes enthält:Der Codex leistet hervorragende Arbeit bei der Erklärung dieser Funktion: http://codex.wordpress.org/Function_Reference/get_term_by
quelle
Dies liefert eine Antwort, wenn die Taxonomie nicht verfügbar / unbekannt ist .
In meinem Fall gab es bei der Verwendung von get_term_by einige Fälle, in denen nur der Term Slug (keine Term-ID oder Taxonomie) vorhanden war. Was mich hierher geführt hat. Die Antwort löste mein Problem jedoch nicht ganz.
Lösung für leer
$taxonomy
Ergebnis
Das Konzept erhält wie folgt ein Array von
$taxonomies
, durchläuft das Array und IFget_term_by()
gibt eine Übereinstimmung zurück. Anschließend wird die foreach-Schleife sofort verlassen.Hinweis: Ich habe versucht, nach einer Methode zu suchen, um die zugehörige Taxonomie (ID oder Slug) von Term Slug abzurufen. Leider kann ich in WordPress keine verfügbare Methode finden.
quelle
Danke, das hat bei mir funktioniert.
Ich habe eine Funktion erstellt und benutze sie bei Bedarf immer wieder.
quelle