需要Wordpress数据库SQL查询帮助

时间:2010-06-18 08:57:34

标签: mysql database wordpress

我编写了一个PHP脚本来访问wordpress数据库中的最新项目。 但是我需要使用它两次,一次用于特定类别的最新项目,另一次用于不同类别...

但是现在我无法弄清楚如何将查询放在一起。

帖子有一个post_parent,在另一个名为wp_term_relationships的表中,被称为object_id,并且有一个term_taxonomy_id,然后与另一个表相关,称为wp_terms,其中term_taxonomy_id现在是term_id,然后你就有了这个类别slug名称可供选择......

我真的无法理解这个查询是如何工作的。

我做了一个非常废话的模拟,尝试“直观地”解释我正在尝试做什么......

SELECT *
FROM `wp_posts`
WHERE post_status = 'publish'
AND (SELECT term_taxonomy_id FROM wp_term_relationships WHERE object_id = post_parent)
AND (SELECT slug FROM wp_terms WHERE term_id = term_taxonomy_id)
ORDER BY ID DESC
LIMIT 1

真的很感激一些帮助...... 感谢。

1 个答案:

答案 0 :(得分:2)

使用此SQL获取CAT_ID中最新发布的帖子(该类别的ID)。

SELECT * FROM wp_posts
    INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id)
    INNER JOIN wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
WHERE wp_posts.post_status = 'publish'
    AND wp_term_taxonomy.taxonomy = 'category'
    AND wp_term_taxonomy.term_id = CAT_ID;
ORDER BY wp_posts.post_date DESC
LIMIT 1

您可以重新使用此SQL更改CAT_ID的值以获取其他类别的帖子。