Zugegeben, SQL-Abfragen über Taxonomien können ganz schön komplex werden. Um dem Entwickler die Arbeit zu ersparen, hat WordPress in Version 3.1.0 die Funktion get_tax_sql()
eingeführt. Sie erlaubt das Erzeugen von SQL-Fragmenten die an die eigene SQL-Query angehängt werden können.
<?php
function get_tax_sql( $tax_query, $primary_table, $primary_id_column ) {
...
}
?>
Es gilt:
Die Funktion gibt ein Array mit JOIN
und WHERE
-Klauseln zurück.
Beispiel 1: Einfache Abfrage
Beispiel 2: Mehrere Taxonomien
Beispiel 3: Verschachtelte Abfragen
Beispiel 4: Benutzung von NOT IN
Beispiel 5: Abfrage mit EXISTS
Eine EXISTS
-Abfrage prüft, ob beispielsweise Artikel vorliegen denen überhaupt eine bestimmte Taxonomie zugeordnet wurde. Der Wert wird daher gar nicht erst berücksichtigt: