2014-09-10 63 views
0

我不得不從wp_query的wordpress數據庫中提取標題,描述和附件。我不能讓如何在同一時間取兩者附件和meta_descriptions ...Wordpress無wp函數的自定義元查詢(wo。wp_query())

這是我的查詢看起來像到目前爲止

$query="SELECT post_title, meta_value 
FROM wp_posts p JOIN wp_postmeta pm ON p.ID=pm.post_id 
WHERE post_status='publish' 
AND post_type='page' 
AND post_parent=2330 
AND (meta_key='_wpseo_edit_description' OR meta_key='_wp_attached_file') 
ORDER BY post_date DESC"; 

該查詢返回「翻番」的結果我有循環

______________________________ 
| post_title | meta_value | 
|------------|---------------| 
| title 1 | 1349   | 
|------------|---------------| 
| title 1 | description 1 | 
|------------|---------------| 
| title 2 | 1348   | 
|------------|---------------| 
| title 2 | description 2 | 
|____________|_______________| 
+0

請閱讀[這篇文章](http://meta.stackoverflow.com/questions/271055/tips-for-asking-a-good-structured-query-language-sql-question/271056#271056)我寫了關於如何提出正確的問題,它會幫助你得到答案 – 2014-09-10 14:19:11

回答

1

您wlil需要加入到wp_postmeta表,以獲得任何的附加信息,如文件附件或自定義字段中分裂。

的如何做到這一點的一個例子:然後

SELECT p.*, pm2.meta_value AS featured_image, pm3.meta_value AS wpseo_edit_description, pm4.meta_value AS wp_attached_file 
FROM `wp_posts` p 
LEFT JOIN `wp_postmeta` pm2 ON p.ID = pm2.post_id AND pm2.meta_key = 'wp_attached_file' 
LEFT JOIN `wp_postmeta` pm3 ON p.ID = pm3.post_id AND pm3.meta_key = '_wpseo_edit_description' 
LEFT JOIN `wp_postmeta` pm4 ON p.ID = pm4.post_id AND pm4.meta_key = '_wp_attached_file' 
WHERE p.post_status = 'publish' 
AND p.post_type = 'page' 
AND p.post_parent = 2330 

正常後字段(後標題,說明,身份證等)將可用,與featured_imagewp_attached_filewpseo_edit_description沿。

+1

哇,你的問題自從我回答以來已經發生了巨大的變化。不過,我認爲我的答案仍然存在。 – Mike 2014-09-10 14:29:39

+0

非常感謝你,這仍然是答案 – Viktor 2014-09-10 14:35:15

+0

必須改變我的問題,因爲約翰魯德爾的提示 – Viktor 2014-09-10 14:36:35