Der Titel sagt schon alles. Momentan erhalte ich in meinen benutzerdefinierten Taxonomien die Begriffe mit der Bezeichnung id und dem Taxonomienamen.
Ich dachte, diese Frage wäre schon einmal gestellt worden, kann sie aber nirgendwo finden! Also dachte ich würde fragen und sehen, ob jemand irgendwelche Antworten hat.
term_id
nur einmal in derterm_taxonomy
Tabelle vorkommt (bevor die Spalte nicht eindeutig war und Begriffe taxonomisch geteilt werden konnten). Dies könnte sich basierend auf der Taxonomie-Roadmap in Zukunft weiterentwickeln . Ein Teil davon besteht darin , den Begriff und die Begriffstaxonomietabellen zu kombinieren .Der Kodex sagt:
Was bedeutet das?
Ein Begriff ist ein Wort. Es kann zu einer Taxonomie wie Tags, Kategorien oder einer benutzerdefinierten Taxonomie gehören. Die Sache ist: Es kann mehrere Taxonomien geben, die den gleichen Begriff enthalten.
Nehmen wir an, Sie haben einen Begriff namens „Mast“. Dieses Wort hat eine ID-Nummer. Dies ist die term_id. Es kommt nicht darauf an, wie dieses Wort verwendet wird, dh in welchen Taxonomien der Begriff vorkommt.
Das Wort „Mast“ als Post-Tag hat jetzt auch eine Nummer. Dies ist die term_taxonomy_id. Es entspricht dem Post-Tag „Mast“.
Vielleicht haben Sie auch eine Kategorie namens "Mast". Während die term_id identisch ist, unterscheidet sich die term_taxonomy_id für die Kategorie "Mast".
quelle
Da dies Teil eines größeren Verständnisses des Designs ist, werde ich es als Ganzes beschreiben ... :)
In WP 4.5.3 gibt es noch alle diese Tabellen (ich werde ohne Präfix darüber sprechen ):
Der Pfad zum Abrufen der lesbaren Namen der Post-Terms geht durch alle.
Posts,
deren Hauptidentifikator hier ist
ID
- eine ID eines Posts (jeglicher Art)term_relationships
speichert Paare von:
object_id
- kann seinposts.ID
(aber nicht nicht sein müssen)term_taxonomy_id
- das ist NICHT - ID eines Begriffs (Kategorie) , sondern eine ID von BEZIEHUNG zwischen einer Laufzeit (Kategorie) und Taxonomie ( „Kategorie - Typ“)term_taxonomy
der Hauptidentifikator ist
term_taxonomy_id
hier oben beschrieben ^^andere wichtige Spalten:
term_id
- eine ID eines Begriffs (Kategorie)taxonomy
- speichert die Taxonomie des Begriffs ("Kategorietyp")Dies mag lustig erscheinen, aber die ursprüngliche Absicht war es, die Fähigkeit von Begriffen hinzuzufügen, mehr Taxonomien zu haben (was in einigen Fällen sinnvoll sein kann).
Begriffe
Der Hauptidentifikator hier ist die
term_id
- ID einer Kategorie.Weitere wichtige Spalten hier sind:
name
- lesbarer Kategoriename, z. B. "Musikgenres"slug
- der Slug eines Begriffs, der z. B. in einer URL verwendet werden kannDas brutale Demonstrieren von SQL,
um alle veröffentlichten Posts und alle ihre Kategorien mit Kategorienamen zu erhalten,
könnte also so aussehen (fügen Sie Tabellen Präfixe hinzu, wenn Sie in Ihrer eigenen WP-Datenbank testen):
quelle
Das
term_id
ist immer so einzigartig wie dasterm_taxonomy_id
. Beide haben eineAuto Increment
in der Tabellenstruktur.Die Tabelle
wp_term_taxonomy
stellt sicher , zum Beispiel , dass eine Kategorie erstellt wird, so Wordpress damit zB WooCommerce Anwendungen beeinträchtigen können:product_tag
,product_type
,product_cat
, alle von ihnen sind die so genannten benutzerdefinierten Taxonomien. Diese Tabelle bindet auch die übergeordnete / untergeordnete Struktur. Mit seiner Säuleparent
.Wenn wir Woocommerce erneut als Beispiel auswählen, verknüpft diese Tabelle den Beitragstyp
products
mit seiner Taxonomieproduct_cat
, die einen Namen enthält, z. B. Computer, der natürlich aus der Tabelle abgerufen wirdwp_terms
. Diese Tabelle enthält dieterm_id
,name
,slug
undterm_group
. (term_group habe ich persönlich noch nie benutzt)Hoffentlich verdeutlicht das oben Gesagte die Unterschiede und wie Wordpress diese Tabellen verwendet.
quelle