Wordpress有一个名为*wp_term_relationships* 跟踪几种类型的关系,包括职位类别。
让我们一桌一桌地来:
- wp_posts - 保存所有帖子、页面和其他内容。您想轮询所有具有->post_type = post . 您可能希望只轮询已发布的帖子->post_status = publish
- wp_term_relationships - 这个object_id 列将保存帖子id和term_taxonomy_id 将保留类别id。
- wp_term_taxonomy - 此表将保存每个分类法的信息。并非所有分类法都是wordpress中的类别。因此,您只需轮询具有->taxonomy = category.
- wp_terms - 此表包含术语信息。您已经拥有term_id 在上表中,但您不知道它的名称。你可以从这里得到它。
您的SQL语句如下所示:
SELECT wp_posts.post_title, wp_posts.ID, wp_terms.name FROM wp_posts
LEFT JOIN wp_term_relationships ON wp_posts.ID=wp_term_relationships.object_id
LEFT JOIN wp_term_taxonomy ON wp_term_taxonomy.term_taxonomy_id=wp_term_relationships.term_taxonomy_id
LEFT JOIN wp_terms ON wp_terms.term_id=wp_term_taxonomy.term_id
WHERE wp_posts.post_type = "post" AND wp_posts.post_status = "publish" AND wp_term_taxonomy.taxonomy = "category"