WordPress: ist ein Post Type einer bestimmten Taxonomy zugeordnet?

law books 291676 1920
Bildquelle: Pixabay, 193584

get_object_taxonomies($post_type) gibt alle Taxonomien (inklusive builtin) zurück, denen ein Post Type zugoerdnet ist.

Das Ergebnis der Abfrage auf ‚post‘ sieht beispielsweise so aus:

Array
(
    [0] => category
    [1] => post_tag
    [2] => post_format
)

Will man zum Beispiel herausfinden, ob ein benutzerdefinierter Post Type mit der Taxonomy category verknüpft wurde, bietet sich dafür folgende Vorgehensweise an (vorausgesetzt es gibt keine WordPress eigene Funktion dafür, fand ich allerdings auf die Schnelle nicht für meine Zwecke):

$taxonomies = get_object_taxonomies( $custom_post_type );
if ( in_array( 'category', $taxonomies ) ) return true;

Als Funktion

function pptf_has_taxonomy( $taxonomy, $post_type ) {
    $taxonomies = get_object_taxonomies( $post_type );
    if ( in_array( $taxonomy, $taxonomies ) ) {
        return true;
    }
}

Anwendung

if (pptf_has_taxonomy('category',$post_type)) {
    //do stuff...
}

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden. Die Angabe einer E-Mail-Adresse und eines Namens ist nicht erforderlich. Einen (Spitz)-Namen zu nennen wäre aber doch nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Sowohl angegebener Name als auch E-Mail-Adresse (beides ist optional, dafür werden alle Kommentare vor Veröffentlichung geprüft) werden dauerhaft gespeichert. Du kannst jeder Zeit die Löschung Deiner Daten oder / und Kommentare einfordern, direkt über dieses Formular (wird nicht veröffentlicht, und im Anschluss gelöscht), und ich werde das umgehend erledigen. – Mit hinterlassenen Kommentaren hinterlegte IP-Adressen werden nach zwei Monaten automatisch gelöscht

publicly queryable