获取帖子类别(分类)所需的SQL查询?-必须是SQL语句

时间:2013-02-15 作者:Michael Fever

使用Wordpress之外的工具,通过POST\\u ID查询Wordpress数据库并返回关联的类别名称。这是一个房地产网站,这些类别被称为“mi\\U社区”,由wp\\U term\\U分类法引用。分类学

在我的另一个查询中,获取我使用的所有类别名称:

    SELECT *
    FROM wp_term_relationships
    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.taxonomy = \'mi_neighborhoods\'  
    GROUP BY wp_term_taxonomy.term_id
所以我有POST\\u ID,我需要返回该POST的“mi\\u邻居”的值。

有人能帮忙吗?

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

您可以尝试此SQL查询以获取分类法\'mi_neighborhoods\' 让我们POST_ID = 1304

SELECT t.*, tt.* FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (tt.term_id = t.term_id) 
INNER JOIN wp_term_relationships AS tr ON (tr.term_taxonomy_id = tt.term_taxonomy_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') AND tr.object_id IN (1304) 
ORDER BY t.name ASC;
一般情况下,您可以通过以下功能获得:

wp_get_object_terms(1304, \'mi_neighborhoods\'); 
EDIT:

下面是一个查询id/name/slug 属于\'mi_neighborhoods\' 分类法:

SELECT t.term_id, t.name, t.slug  
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') 
ORDER BY t.name ASC
对于所有非空条款,都是一样的:

SELECT t.term_id, t.name, t.slug 
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') AND tt.count > 0
ORDER BY t.name ASC

结束

相关推荐

Getting posts by taxonomy

我想根据现有的分类术语从CPT获取一组帖子。我想我应该使用WP的get\\u posts()函数:$结果=获取文章(数组$选项);当我指定我感兴趣的CPT时,此函数工作正常:$results=get\\u posts(数组(\'post\\u type\'=>\'my\\u cpt\\u name\');但后来我用我的UOM自定义post类型尝试了这一点,并尝试使用公制进行筛选,公制是一种称为“UOM\\U system”的分类法:$results=get\\u posts(数组(\'post\\u

获取帖子类别(分类)所需的SQL查询?-必须是SQL语句 - 小码农CODE - 行之有效找到问题解决它

获取帖子类别(分类)所需的SQL查询?-必须是SQL语句

时间:2013-02-15 作者:Michael Fever

使用Wordpress之外的工具,通过POST\\u ID查询Wordpress数据库并返回关联的类别名称。这是一个房地产网站,这些类别被称为“mi\\U社区”,由wp\\U term\\U分类法引用。分类学

在我的另一个查询中,获取我使用的所有类别名称:

    SELECT *
    FROM wp_term_relationships
    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.taxonomy = \'mi_neighborhoods\'  
    GROUP BY wp_term_taxonomy.term_id
所以我有POST\\u ID,我需要返回该POST的“mi\\u邻居”的值。

有人能帮忙吗?

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

您可以尝试此SQL查询以获取分类法\'mi_neighborhoods\' 让我们POST_ID = 1304

SELECT t.*, tt.* FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (tt.term_id = t.term_id) 
INNER JOIN wp_term_relationships AS tr ON (tr.term_taxonomy_id = tt.term_taxonomy_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') AND tr.object_id IN (1304) 
ORDER BY t.name ASC;
一般情况下,您可以通过以下功能获得:

wp_get_object_terms(1304, \'mi_neighborhoods\'); 
EDIT:

下面是一个查询id/name/slug 属于\'mi_neighborhoods\' 分类法:

SELECT t.term_id, t.name, t.slug  
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') 
ORDER BY t.name ASC
对于所有非空条款,都是一样的:

SELECT t.term_id, t.name, t.slug 
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN (\'mi_neighborhoods\') AND tt.count > 0
ORDER BY t.name ASC

相关推荐

如何控制根据Taxonomy术语显示什么模板?

我正在建立一个商业目录,并将给出一些背景,然后在最后有2个问题。The development URL is: http://svcta.lainternet.biz/The website I am rebuilding is: https://www.visitsimivalley.com/当前网站要求每个分类法类型具有唯一的业务概要文件。例如,如果您是一家酒店,并且您也有会议室和婚礼场地,那么您最终会得到3个列表,一个用于酒店,一个用于会议,一个用于婚礼。我希望有一个主配置文件,其中包含我们将显示的