Gdzie są przechowywane typy niestandardowe? Ponieważ po utworzeniu typu niestandardowego w wp_posts typem wpisu jest wartość <new_custom_post_type>
. Ale gdzie są przechowywane szczegóły nowego niestandardowego typu postu?
20
Gdzie są przechowywane typy niestandardowe? Ponieważ po utworzeniu typu niestandardowego w wp_posts typem wpisu jest wartość <new_custom_post_type>
. Ale gdzie są przechowywane szczegóły nowego niestandardowego typu postu?
W końcu znalazłem dane niestandardowego typu postu. Jest on przechowywany w tabeli wp_post, gdzie post_type = niestandardowy typ postu (np. „Produkty”). Dane pola (kolumny) są przechowywane w wp_postmeta, gdzie klucz_meta to nazwa kolumny, a wartość_meta to wartość kolumny.
To zapytanie przywróci wszystkie dane związane z niestandardowym typem postu „produkty”:
SELECT P.ID, P.post_title, M.meta_key, M.meta_value
FROM wp_posts AS P
INNER JOIN wp_postmeta AS M ON M.post_id = P.ID
WHERE P.post_type = 'products' and P.post_status = 'publish'
ORDER BY post_title, meta_key
Szczegóły niestandardowych typów postów nie są nigdzie przechowywane, są ładowane w czasie wykonywania każdego żądania za pośrednictwem register_post_type
połączeń.
wp_posts
tabeli, więc wydaje się całkiem jasne, że wiedzą, gdzie są przechowywane dane postu. ale jeśli masz inną interpretację pytania, być może powinieneś dodać własną odpowiedź.Jak wspomniano w @milo w tej odpowiedzi
Jednak typy postów nie są przechowywane osobno w bazie danych, ale powiedziano to ...
przez SQL
możesz wyświetlić wszystkie zapisane typy wpisów PUBLIC, używając następującego zapytania sql
Co da wynik podobny do:
przez WP CLI
Dodatkowo, jeśli masz dostęp do wp cli , możesz uruchomić:
Co da wynik:
źródło
Możesz użyć tej funkcji,
get_post_types
aby uzyskać informacje o wszystkich i wszystkich typach postów, które są aktywne w tym czasie. Aby uzyskać informacje o określonym typie postu, użyjget_post_type_object
.źródło
get_post_types
tylko na podstawie niestandardowych, parametr_builtin
można ustawić nafalse
Domyślnie WordPress zawiera niektóre przykładowe typy postów, takie jak strony, posty itp. Wordpress ma również opcję tworzenia własnych niestandardowych typów postów. Zarówno domyślne, jak i niestandardowe posty są przechowywane w pojedynczej tabeli „wp_posts” poprzez rozróżnienie wszystkich typów postów w oparciu o kolumnę „post_type” w tabeli „wp_posts”.
Np .:
strony -> post_type = "strona",
testiminials -> post_type = "referencje"
itp
Aby pobrać więcej informacji o tych typach postów, które byłyby dostępne w tabeli „wp_postmeta”.
źródło