获取包含帖子的术语,而这些帖子又属于其他术语?

时间:2012-10-29 作者:jilseego

所以我有一个自定义的分类法叫做“形状”,另一个叫做“颜色”。如果我想了解列表中的术语shape 包含在以下条件下也存在的职位color, 我该怎么做?

例如,我在custom post type下有一篇文章toy 称为球状,它既有圆形,也有红色。我想通过以下方式检索术语名称Circle$wpdb 查询我想强调的是,我想检索术语列表,而不是帖子。

1 个回复
最合适的回答,由SO网友:Mridul Aggarwal 整理而成

这将获得数组中所有此类术语的名称

$wpdb->get_col("SELECT DISTINCT {$wpdb->terms}.name FROM {$wpdb->terms}
INNER JOIN {$wpdb->term_taxonomy} ON {$wpdb->term_taxonomy}.term_id = {$wpdb->terms}.term_id
INNER JOIN {$wpdb->term_relationships} ON {$wpdb->term_taxonomy}.term_taxonomy_id = {$wpdb->term_relationships}.term_taxonomy_id
WHERE {$wpdb->term_taxonomy}.taxonomy = \'shape\' AND {$wpdb->term_relationships}.object_id IN (
SELECT object_id FROM {$wpdb->term_relationships}
INNER JOIN {$wpdb->term_taxonomy} ON {$wpdb->term_taxonomy}.term_taxonomy_id = {$wpdb->term_relationships}.term_taxonomy_id
WHERE {$wpdb->term_taxonomy}.taxonomy = \'color\'
);");
如果需要名称以外的更多详细信息,则必须更改字段以选择(&;同时将功能更改为get_colget_results

请确保分类名称“shape”中没有拼写错误(&P);查询中使用的“颜色”

References-

http://codex.wordpress.org/Class_Reference/wpdb

http://codex.wordpress.org/Database_Description

结束