相關的自定義後類型職位使用WordPress插件叫做Pods,我定義了兩個自定義文章類型:場地和事件。除了簡單的元字段之外,Pods還允許在帖子類型之間定義所謂的「關係」字段。MySQL的聲明想查詢在WordPress數據庫
就我而言,我使用了這樣的「關係」字段事件,涉及事件的場地。 Pods存儲相關場所 post_id作爲meta_value的事件後。
現在,在WordPress'管理員我想擴展編輯視圖爲我的自定義帖子類型事件。我想讓事件列表排序場地。 我的問題是,MySQL聲明必須如何實現這一目標?我有麻煩纏住我的頭,這兩個事件,事件和場館,都存儲爲wp_post表中的帖子。
相關架構如下:
wp_posts
(id
,post_title
,post_type
)
wp_postmeta
(meta_id
,post_id
,meta_key
,meta_value
)
我在尋找類似
SELECT t1.post_title AS event_title
, t2.meta_value AS venue
FROM wp_posts AS t1
JOIN wp_postmeta AS t2
ON t2.post_id = t1.id
WHERE t1.post_type = 'event'
AND t2.meta_key = 'event_venue'
上面的說法讓我的事件的標題與相關場地的ID一起。有了這個ID,我需要再次查詢wp_posts和wp_postmeta(... WHERE t1.post_type = 'venue' ...
)來檢索相關場地的標題和其他字段。那麼,如何在一個查詢中做到這一點?
Bunjip。
請注意:這個問題不有關如何擴展WordPress管理或如何使用WP鉤來顯示後列出自定義列,也不如何使這些列表排序的自定義列。我需要的只是正確的SQL語句。這就是爲什麼我沒有發佈我的問題到wordpress.stackexchange.com。
@Strawberry:看,這兩個活動和場地均以WordPress的形式發佈。他們是自定義帖子類型的帖子。活動有一個標有'event_venue'的自定義元字段,其中包含任何自定義帖子類型'場地'的帖子的post_id。我編輯了僞SQL語句來清除。 – Bunjip