Tytuł mówi wszystko. W tej chwili w moich niestandardowych systematykach używam terminów id i nazwa systematyki.
Myślałem, że to pytanie zostanie zadane wcześniej, ale nigdzie nie można go znaleźć! Więc pomyślałem, że zapytam i zobaczę, czy ktoś ma jakieś odpowiedzi.
term_id
wystąpi teraz tylko raz wterm_taxonomy
tabeli (zanim kolumna nie była unikalna, a warunki mogły być współużytkowane przez taksonomie). To może nadal ewoluować w przyszłości, w oparciu o mapę drogową taksonomii . Jedną z nich jest połączenie tabel terminów i terminologii taksonomii .Kodeks mówi:
Co to znaczy?
Termin to słowo. Może należeć do taksonomii, takiej jak tagi, kategorie lub taksonomia niestandardowa. Chodzi o to, że może istnieć kilka taksonomii zawierających ten sam termin.
Załóżmy, że masz termin „tucz”. To słowo ma numer identyfikacyjny. To jest term_id. Nie zależy to od sposobu użycia tego słowa, tj. W jakich taksonomiach pojawia się ten termin.
Teraz słowo „tucz” jako znacznik pocztowy również ma numer. To jest term_taxonomy_id. Odpowiada „znacznikowi pocztowemu„ tucz ”.
Może masz także kategorię „tucz”. Podczas gdy term_id jest taki sam, term_taxonomy_id dla „kategorii tucz” jest inny.
źródło
Ponieważ jest to część większego zrozumienia projektu, opiszę go jako całość ... :)
W WP 4.5.3 nadal są wszystkie te tabele (opowiem o nich bez prefiksu):
Ścieżka do uzyskania czytelnych nazw terminów prowadzi przez wszystkie.
publikuje
tutaj główny identyfikator
ID
- identyfikator posta (dowolnego typu)term_relationships
przechowuje pary:
object_id
- może byćposts.ID
(ale nie musi)term_taxonomy_id
- NIE jest to identyfikator terminu (kategoria), ale identyfikator RELACJI między terminem (kategoria) a taksonomią („typ kategorii”)term_taxonomy
główny identyfikator tutaj jest
term_taxonomy_id
opisany powyżej ^^inne ważne kolumny:
term_id
- identyfikator terminu (kategoria)taxonomy
- przechowuje taksonomię terminu („typ kategorii”)To może wydawać się zabawne, ale początkowo zamierzano dodać możliwość, aby terminy miały więcej taksonomii (co w niektórych przypadkach może mieć sens).
terminy
głównym identyfikatorem tutaj jest
term_id
- identyfikator kategorii,inne ważne kolumny to:
name
- czytelna nazwa kategorii, np. „Gatunki muzyczne”slug
- informacja o użytkowniku, np. w adresie URLTak więc brutalne demonstrowanie SQL, aby
uzyskać wszystkie opublikowane posty i wszystkie ich kategorie z nazwami kategorii,
może wyglądać tak (dodaj prefiksy do tabel podczas testowania na własnej WP DB):
źródło
term_id
Jest zawsze wyjątkowy podobnie jakterm_taxonomy_id
. Oba mająAuto Increment
strukturę tabel.Tabela
wp_term_taxonomy
dba na przykład, że kategoria jest tworzony, więc wordpress może kolidować z nim np woocommerce zastosowań:product_tag
,product_type
,product_cat
, wszystkie z nich są tak zwane niestandardowe taksonomii. Ta tabela również wiąże strukturę nadrzędną / podrzędną. Z jego kolumnąparent
.Jeśli ponownie wybierzemy Woocommerce jako przykład, ta tabela łączy typ postu
products
z ich taksonomiąproduct_cat
, która zawiera pewną liczbę np. Komputerów, które są oczywiście pobierane z tabeliwp_terms
. Tabela ta zawieraterm_id
,name
,slug
iterm_group
. (term_group, której osobiście nigdy nie użyłem)Mam nadzieję, że powyższe uwidacznia nieco więcej na temat różnic i sposobu, w jaki Wordpress używa tych tabel.
źródło