回答:
私はついにカスタム投稿タイプのデータを見つけました。post_type =カスタム投稿タイプ(「製品」など)のwp_postテーブルに保存されます。フィールド(列)データはwp_postmetaに格納されます。meta_keyは列名で、meta_valueは列の値です。
このクエリは、カスタム投稿タイプ「製品」に関連付けられているすべてのデータを返します。
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
カスタム投稿タイプの詳細はどこにも保存されず、register_post_type
呼び出しを介したリクエストごとに実行時にロードされます。
wp_posts
テーブルについて言及しているので、投稿データが保存されている場所を知っていることはかなり明らかです。ただし、質問の解釈が異なる場合は、おそらく独自の回答を追加する必要があります。
この回答で@miloが言及したように
投稿タイプは実際にはデータベースに個別に保存されていませんが、それは言われています...
次のSQLクエリを使用して、保存されたすべてのPUBLIC投稿タイプを表示できます
SELECT DISTINCT( post_type ) FROM wp_posts;
次のようなものが出力されます。
+----------------------+
| post_type |
+----------------------+
| attachment |
| competition |
| custom_css |
| customize_changeset |
| deprecated_log |
| experts |
| magazine |
| nav_menu_item |
| page |
| post |
| revision |
+----------------------+
さらに、wp cliにアクセスできる場合は、次を実行できます。
wp post-type list
次のようなものが出力されます:
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
| 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 |
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
この関数get_post_types
を使用して、その時点でアクティブなすべての投稿タイプに関する情報を取得できます。特定の投稿タイプに関する情報を取得するには、を使用しますget_post_type_object
。
get_post_types
カスタム投稿のみから作成するには、パラメータ_builtin
を次のように設定できますfalse
WordPressのデフォルトには、ページ、投稿などのサンプル投稿タイプがいくつか付属しています。Wordpressには、独自のカスタム投稿タイプを作成するオプションもあります。デフォルトとカスタムの両方の投稿は、「wp_posts」テーブルの「post_type」列に基づいてすべての投稿タイプを区別することにより、単一のテーブル「wp_posts」に保存されます。
例:
ページ-> post_type = "page"、
testiminials-> post_type = "testimonials"
など
このpost_typesに関する詳細情報を取得するには、「wp_postmeta」テーブルで入手できます。