0

目前我有 2 个类别和 1 个自定义字段

类别 = CAT01 和 CAT02 / ID 的 1 和 2 自定义字段 = Test01

我想要的是在我的自定义字段(Test01)中输入的所有值的平均值,但来自 1 个类别。

我是 Wordpress 的新手,但我得到了以下信息:

                    $wp_query = new WP_Query( array (
                    'category_id' => '1',
                    'meta_key' => 'Test01',
                    )
                 );

如果没有类别 ID,它似乎可以做一些事情,但不是我想要的。

任何人都可以帮我解决这个问题,非常感谢您的努力:)

4

1 回答 1

0

我认为使用 WP_Query 会为此增加不必要的开销。我会做一个自定义 SQL 查询(尽管如果 WP 将来改变他们的分类数据库结构,你必须密切关注)。

它看起来像这样:

global $wpdb;
$term = get_term(1, 'category');        //need the term_taxonomy_id, not always the same as term_id
$sqlQuery = "SELECT AVG(meta_value) FROM $wpdb->postmeta WHERE meta_key = 'Test01' AND post_id IN(SELECT object_id FROM $wpdb->term_relationships WHERE term_taxonomy_id = '" . $term->term_taxonomy_id . "') ";
$avg = $wpdb->get_var($sqlQuery);
于 2012-11-23T19:22:38.503 回答