目前,我使用以下 mysql 查询在站点博客的页脚中显示最后 5 篇帖子的列表:
SELECT post_title, guid, post_date FROM wp_posts WHERE post_type = 'post' AND post_status = 'Publish' ORDER BY post_date DESC LIMIT 5
如何编辑此查询以将搜索限制为特定类别 ID?我认为这就像在帖子表中查找类别字段一样简单,但事实并非如此!
Wordpress 数据库的关系可在数据库图 http://codex.wordpress.org/Database_Description#Database_Diagram.
在您的具体情况下,它是:
wp_posts.ID
->wp_term_relationships.object_id
->wp_term_relationships.term_taxonomy_id
->wp_term_taxonomy.term_taxonomy_id
->wp_term_taxonomy.term_id
->wp_terms.term_id
对于查询,您需要使用 SQL 连接:
SELECT p.ID, t.term_id
FROM wp_posts p
LEFT JOIN wp_term_relationships rel ON rel.object_id = p.ID
LEFT JOIN wp_term_taxonomy tax ON tax.term_taxonomy_id = rel.term_taxonomy_id
LEFT JOIN wp_terms t ON t.term_id = tax.term_id
但需要注意的是,wordpress数据库可能随时发生变化,你应该使用Wordpress提供的机制(例如query_posts http://codex.wordpress.org/Function_Reference/query_posts)从数据库中过滤帖子。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)