카테고리가 있는 모든 WordPress 게시물을 추출하기 위한 SQL 쿼리
WordPress DB에서 관련 카테고리와 함께 모든 게시물을 추출해야 하는데 이 쿼리를 작성하는 방법을 잘 모르겠습니다.이미 몇 번 시도했지만 아무런 기쁨이 없었으니 도와주면 고맙겠어?
편집: 제가 이미 시도한 것은 다음과 같습니다.
SELECT post_title, wpr.object_id, wp_terms.name
FROM wp_terms
INNER JOIN wp_term_taxonomy ON wp_terms.term_id = wp_term_taxonomy.term_id
INNER JOIN wp_term_relationships wpr ON wpr.term_taxonomy_id =
wp_term_taxonomy.term_taxonomy_id
INNER JOIN wp_posts ON ID = wpr.object_id
WHERE taxonomy = 'category'
AND post_type = 'post'
ORDER by post_title
이것은 효과가 있는 것 같습니다만, 제 DB에는 1343개밖에 없는 것으로 알고 있는 1,553개가 반환됩니다.
편집: 조금 전에 다른 SQL 쿼리에서 동일한 작업을 수행했는데 리비전 및 기타 게시 유형을 가져오는 중이었지만 post_type = 'post'를 사용하여 해결되었다고 생각했습니다.
편집: DB의 카테고리 수를 보면 1553 - 1343 = 216을 빼면 6에서 6을 뺀 216이 나옵니다.1553의 총수는 wp_terms 표에서 나온 것이라고 생각합니다.wp_terms 표에서는 제외되어야 하며, 게시된 투고에서 활성화된 것만 표시되어야 합니다.
편집: 또 다른 가능성은 각 투고가 여러 카테고리를 가질 수 있기 때문에 투고가 많아지는 이유입니다(1553).그럼 어떻게 하면 각 투고를 여러 카테고리로 나눌 수 있을까요?
감사합니다!
이것이 나에게 효과가 있었던 최종적인 대답이다.
SELECT DISTINCT
post_title
, post_content
,(SELECT meta_value FROM wp_postmeta WHERE wp_postmeta.meta_key = 'Asking Price (US\$)' AND wp_postmeta.post_id = wp_posts.ID) AS "Asking Price (US\$)"
,(SELECT group_concat(wp_terms.name separator ', ')
FROM wp_terms
INNER JOIN wp_term_taxonomy on wp_terms.term_id = wp_term_taxonomy.term_id
INNER JOIN wp_term_relationships wpr on wpr.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id
WHERE taxonomy= 'category' and wp_posts.ID = wpr.object_id
) AS "Categories"
,(SELECT group_concat(wp_terms.name separator ', ')
FROM wp_terms
INNER JOIN wp_term_taxonomy on wp_terms.term_id = wp_term_taxonomy.term_id
INNER JOIN wp_term_relationships wpr on wpr.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id
WHERE taxonomy= 'post_tag' and wp_posts.ID = wpr.object_id
) AS "Tags"
FROM wp_posts
WHERE post_type = 'post'
ORDER BY
post_title
, post_content
/* Query for fetch post/posts using post user, post category and post_title */
$select wp_select.post_filength, wp_filength.post_content, wp_display_count, wp_users.display_name, wp_display.name송신원 wp_postsJOIN wp_term_relations ON(wp_posts).ID = wp_term_relations.object_id)JOIN wp_term_relations ON(wp_term_relations.term_relations.term_relations_id = wp_relations.term_relations_id)LEFT JOIN wp_time ON (wp_time.term_id = wp_term_time.term_id)JOIN wp_users ON(wp_posts).post_author = wp_users.아이디)Where wp_term_taxonomy.term_id IN($bycat)AND wp_users.ID = $byuserAND wp_posts.post_type = 'post'AND(wp_posts).post_content Like '$bytitle' OR wp_posts.post_title Like '$bytitle')AND wp_posts.post_status = '실행'wp_posts로 주문합니다.post_modified DESC"; /*---------------------------------------------------$result first = $wpdb-> get_syslogs); foreach ($result first as $result ){echo $result - > post_displays' 입니다.
';> '$result-> display_name' 입니다.
';name '$result-> name' 입니다.
$syslog $result - > echo_count' 입니다.
';}
언급URL : https://stackoverflow.com/questions/13071035/sql-query-to-extract-all-wordpress-posts-with-categories
'source' 카테고리의 다른 글
쿼리에서 SQL 데이터 유형을 반환하려면 어떻게 해야 합니까? (0) | 2023.04.10 |
---|---|
치명적: 미입력 서브모듈 내 (0) | 2023.04.05 |
MongoDB: 서버에 시작 경고가 있습니다. "데이터베이스에 대한 액세스 제어가 활성화되지 않았습니다." (0) | 2023.04.05 |
Python은 UTF-8 BOM 헤더가 있는 json 파일을 로드합니다. (0) | 2023.04.05 |
Angular.js를 통한 세션 유지 (0) | 2023.04.05 |