Odpowiedzi:
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 ...
możesz wyświetlić wszystkie zapisane typy wpisów PUBLIC, używając następującego zapytania sql
SELECT DISTINCT( post_type ) FROM wp_posts;
Co da wynik podobny do:
+----------------------+
| post_type |
+----------------------+
| attachment |
| competition |
| custom_css |
| customize_changeset |
| deprecated_log |
| experts |
| magazine |
| nav_menu_item |
| page |
| post |
| revision |
+----------------------+
Dodatkowo, jeśli masz dostęp do wp cli , możesz uruchomić:
wp post-type list
Co da wynik:
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
| name | label | description | hierarchical | public | capability_type |
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
| post | Posts | | | 1 | post |
| page | Pages | | 1 | 1 | page |
| attachment | Media | | | 1 | post |
| revision | Revisions | | | | post |
| nav_menu_item | Navigation Menu Items | | | | post |
| custom_css | Custom CSS | | | | post |
| customize_changeset | Changesets | | | | customize_changeset |
| deprecated_log | Deprecated Calls | | | | post |
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
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żyj get_post_type_object
.
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”.