2010-05-14 5 views
-7

간단한 SQL 쿼리를 사용하여 Wordpress wp_posts 테이블에서 최신 게시물을 쉽게 가져올 수 있습니까?Wordpress 데이터베이스 스키마 이해 - 타사 앱에서의 쿼리

나는 더 큰 시스템의 일부로, 그러나 별도로, Wordpress 2.9.2 설치가 있습니다. 그것은 사이트의 나머지 부분처럼 보이도록 사용자 정의 된 테마를 가지고 있지만, 그렇지 않으면 아무것도하지 않습니다. 나는 그 다른 시스템의 사이트에 Wordpress를 사용하여 만든 게시물의 최신 헤드 라인을 표시하고 싶습니다. 가급적이면 Wordpress 라이브러리 파일을 가져 오는 것을 망쳐 놓고 싶지는 않습니다.

데이터베이스 구조를 보면 간단하고 최신의 최신 개정판을 얻을 수있는 쉽고 간단한 쿼리를 볼 수 없습니다. post_status은 "게시"또는 "상속", post_type "게시"또는 "수정"및 부모 "0"또는 수정 본 원래 게시물의 ID 일 수 있습니다. 나는이 게시물에서 동일한 게시물, 초안, 첨부 파일 및 페이지의 다른 버전을 안정적으로 필터링하고 최신 게시물의 최신 개정판을받는 방법을 알아낼 수 없습니다.

데이터베이스 스키마는 이후 버전의 Wordpress에서 변경 될 수 있으므로 의존해서는 안되지만 사소한 문제입니다. 이는 쉽게 수정할 수있는 사소한 기능이기 때문입니다. 데이터베이스가 어떻게 작동해야 하는지를 이해한다면, 그럴 것입니다.

답변

2

post_status = publish 및 post_type = post가있는 모든 게시물을 찾고 있습니다.

WordPress posts 테이블에는 페이지, 수정본 및 첨부 파일도 포함되어 있습니다. 그 이유는 구체적이어야합니다.

당신은 (테이블 접두사로 wp_과) 기본 데이터베이스 스키마를 사용하는 경우, 다음 쿼리는 당신이 필요로하는 무엇을 줄 것이다 :

SELECT post_title FROM wp_posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY post_date DESC

이 당신에게 가장의 목록을 제공합니다 최근 헤드 라인 (게시물 제목)은 이며 게시 날짜는입니다 (가장 최근 날짜는 맨 위에 표시). 핵심 WordPress 라이브러리를 가져올 필요가 없습니다. 실수로 직접 데이터베이스에 액세스하는 동안 데이터베이스를 조정하지 않도록하거나 WordPress에서 무언가를 깨뜨릴 수 있습니다.

+0

알겠습니다. 나는 "상속 된 수정"이 "게시 된 게시물"보다 새로운 것 같다는 잘못된 인상을 받았습니다. 그 문제를 해결해 주셔서 감사합니다! – deceze