2014-09-10 5 views
0

wp_query없이 wordpress 데이터베이스에서 제목, 설명 및 첨부 파일을 가져와야합니다. 나는 ... 두 가지를 동시에, 첨부 파일 및 meta_descriptions를 가져 오는 방법을 얻을 수wp 함수가없는 Wordpress 사용자 정의 메타 쿼리 (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)을 읽으십시오. 적절한 질문을하는 방법은 대답을 얻는 데 도움이됩니다 –

답변

1

당신은 첨부 파일 또는 사용자 정의 필드와 같은 첨부 된 정보의를 얻기 위해 wp_postmeta 테이블에 가입해야 wlil 내에서 분할합니다.

이 작업을 수행하는 방법의 예 :

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 

정상적인 포스트 필드 (게시물 제목, 설명, ID 등) 다음 featured_image, wp_attached_filewpseo_edit_description와 함께 사용할 수 있습니다.

+1

와우, 내가 대답 한 이후로 당신의 질문이 크게 바뀌 었습니다. 그래도 내 대답은 여전히 ​​유효하다고 생각합니다. – Mike

+0

대단히 고마워요, 아직 답변은 – Viktor

+0

입니다. John Ruddell의 힌트를 통해 내 질문을 변경해야합니다. – Viktor

관련 문제