从另一个博客ID获取自定义帖子类型的分类法

时间:2018-10-11 17:44:32

标签: wordpress

我们在Wordpress上有一个多站点设置。

在主博客(ID为1)上,我们有一个自定义帖子类型,称为“位置”。这些位置的分类为“类别”

您可能知道,您无法查询不同博客ID的分类关系。即使使用WP提供的switch_to_blog(1)功能。

这迫使我在下面使用自定义sql查询:

private function get_taxonomy_query($post_id) {

        global $wpdb;
        $query = "SELECT t.*, tt.* FROM {$wpdb->prefix}terms AS t 
        INNER JOIN {$wpdb->prefix}term_taxonomy AS tt ON (tt.term_id = t.term_id) 
        INNER JOIN {$wpdb->prefix}term_relationships AS tr ON (tr.term_taxonomy_id = tt.term_taxonomy_id) 
        WHERE tt.taxonomy IN ('categories') AND tr.object_id IN ($post_id) 
        ORDER BY t.name ASC;";

        return $results = $wpdb->get_results($query);

    }

这确实起作用,但是,至少需要5秒钟来处理此查询。我宁愿不要将类似的内容推送到实时网站。

有人可以为我提供更好的解决方案,以获得post_id的分类法吗?

我不是要查询所有分类法,而是要查询特定post_id具有的分类法

0 个答案:

没有答案