Yanıtlar:
Sonunda özel yazı tipi verilerini buldum. Wp_post tablosunda post_type = custom post type (örneğin "ürünler") içinde saklanır. Alan (sütun) verileri wp_postmeta'da depolanır; burada meta_key, sütun adı ve meta_value sütun değeridir.
Bu sorgu, özel gönderi türü "ürünler" ile ilişkili tüm verileri geri getirecektir:
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
Özel gönderi türlerinin ayrıntıları hiçbir yerde depolanmaz, çalışma zamanında her istekle register_post_type
aramalar yoluyla yüklenir .
wp_posts
tablodan bahsediyor , bu nedenle yazı verilerinin nerede depolandığını bildikleri oldukça açık görünüyor. ancak soruyu farklı bir yorumunuz varsa, belki de kendi cevabınızı eklemelisiniz.
Bu cevapta @milo tarafından belirtildiği gibi
Yazı Türleri aslında veritabanında ayrı olarak saklanmaz, ancak söylenir ...
aşağıdaki sql sorgusunu kullanarak kaydedilmiş tüm PUBLIC yayın türlerini görüntüleyebilirsiniz
SELECT DISTINCT( post_type ) FROM wp_posts;
Hangi şuna benzer bir çıktı verecektir:
+----------------------+
| post_type |
+----------------------+
| attachment |
| competition |
| custom_css |
| customize_changeset |
| deprecated_log |
| experts |
| magazine |
| nav_menu_item |
| page |
| post |
| revision |
+----------------------+
Ayrıca wp cli'ya erişiminiz varsa , şunları çalıştırabilirsiniz:
wp post-type list
Hangi gibi bir çıktı verecektir:
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
| 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 |
+---------------------+-----------------------+--------------+--------------+--------+---------------------+
Bu işlevi get_post_types
, o sırada etkin olan tüm gönderi türleri hakkında bilgi almak için kullanabilirsiniz . Belirli bir yazı türü hakkında bilgi almak için tuşunu kullanın get_post_type_object
.
get_post_types
yalnızca özel olanlardan yapmak için parametre _builtin
şu şekilde ayarlanabilir:false
WordPress varsayılanı sayfalar, yazılar vb. Gibi bazı örnek yazı türleriyle birlikte gelir. Wordpress ayrıca kendi özel yazı türlerimizi oluşturma seçeneği de sunar. Hem varsayılan hem de özel gönderiler, "wp_posts" tablosundaki "post_type" sütununa göre tüm gönderi türlerini ayırarak tek bir tablo "wp_posts" içinde depolanır.
Örneğin:
sayfalar -> post_type = "sayfa",
testimler -> post_type = "referanslar"
vb.
"Wp_postmeta" tablosunda bulunan bu post_types hakkında daha fazla bilgi edinmek için.