首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Wp-Posts和Wp-Terms查询Wordpress帖子

问使用Wp-Posts和Wp-Terms查询Wordpress帖子
EN

Stack Overflow用户
提问于 2020-04-30 12:41:19
回答 2查看 114关注 0票数 0

​

我正在尝试查询我的Wordpress站点上所有包含wp_terms.slug = 'portfolio-photos‘的帖子。我已经使用wp_terms、wp_term_taxonomy、wp_term_relationships和wp_posts连接了这些表。我不确定我的SQL代码有什么问题。有人能告诉我我的代码/思路出了什么问题吗?

我收到了0行,但是,应该有12行,因为这是我在WP中有多少"portfolio-photos“插件。列标题为ID、term_id和slug。

代码语言:javascript
复制
SELECT wp_posts.ID, wp_terms.term_id, wp_terms.slug
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_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
LEFT JOIN wp_terms ON (wp_term_taxonomy.term_taxonomy_id = wp_terms.term_id)
WHERE wp_terms.slug = 'portfolio-photos'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-03 07:34:42

在仔细查看WP DB中的表是如何关联的之后,我意识到我的代码是正确的。这个article真的很有帮助。我试图使用一个与父类别相对应的插件来获取结果。

因此,我上面的原始代码只适用于子类别。下面的代码通过使用WHERE wp_term_taxonomy.parent = '11'获取正确数量的结果

代码语言:javascript
复制
SELECT wp_posts.ID, wp_terms.term_id, wp_term_taxonomy.parent, wp_terms.slug
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_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
LEFT JOIN wp_terms ON (wp_term_taxonomy.term_taxonomy_id = wp_terms.term_id)
WHERE wp_term_taxonomy.parent = '11'
票数 0
EN

Stack Overflow用户

发布于 2020-04-30 12:58:11

表wp_terms不在FROM子句中,您必须关联它才能在WHERE子句中使用它。

编辑:在我的原始答案之后,原始帖子被更改。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61516055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档