Antworten:
Ich habe endlich die benutzerdefinierten Post-Typ-Daten gefunden. Es wird in der Tabelle wp_post gespeichert, wobei post_type = benutzerdefinierter Posttyp (z. B. "Produkte"). Die Felddaten (Spaltendaten) werden in wp_postmeta gespeichert, wobei meta_key der Spaltenname und meta_value der Spaltenwert ist.
Diese Abfrage bringt alle Daten zurück, die dem benutzerdefinierten Beitragstyp "Produkte" zugeordnet sind:
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
Die Details der benutzerdefinierten Beitragstypen werden nirgendwo gespeichert. Sie werden zur Laufzeit bei jeder Anforderung über register_post_type
Aufrufe geladen .
wp_posts
Tabelle, so scheint es ziemlich klar, dass sie wissen, wo die Post-Daten gespeichert sind. aber wenn Sie eine andere Interpretation der Frage haben, sollten Sie vielleicht Ihre eigene Antwort hinzufügen.
Wie von @milo in dieser Antwort erwähnt
Beitragstypen werden jedoch nicht separat in der Datenbank gespeichert.
Mit der folgenden SQL-Abfrage können Sie alle gespeicherten PUBLIC- Beitragstypen anzeigen
SELECT DISTINCT( post_type ) FROM wp_posts;
Welches wird etwas Ähnliches ausgeben wie:
+----------------------+
| post_type |
+----------------------+
| attachment |
| competition |
| custom_css |
| customize_changeset |
| deprecated_log |
| experts |
| magazine |
| nav_menu_item |
| page |
| post |
| revision |
+----------------------+
Wenn Sie Zugriff auf wp cli haben , können Sie außerdem Folgendes ausführen:
wp post-type list
Welches wird etwas ausgeben wie:
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
| 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 |
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
Sie können die Funktion verwenden get_post_types
, um Informationen zu allen zu diesem Zeitpunkt aktiven Beitragstypen abzurufen. Verwenden Sie, um Informationen zu einem bestimmten Beitragstyp abzurufen get_post_type_object
.
get_post_types
nur aus benutzerdefinierten zu machen, kann der Parameter _builtin
auffalse
Standardmäßig enthält WordPress einige Beispielposttypen wie Seiten, Posts usw. Wordpress bietet die Möglichkeit, auch eigene benutzerdefinierte Posttypen zu erstellen. Sowohl Standardbeiträge als auch benutzerdefinierte Beiträge werden in einer einzigen Tabelle "wp_posts" gespeichert, indem alle Beitragstypen basierend auf der Spalte "post_type" in der Tabelle "wp_posts" unterschieden werden.
ZB:
Seiten -> post_type = "Seite",
Testimonials -> post_type = "Testimonials"
etc
Weitere Informationen zu diesen post_types erhalten Sie in der Tabelle "wp_postmeta".