如何在wordpress中按自定义字段值排序帖子

时间:2016-09-12 08:21:36

标签: php wordpress field

我想按自定义字段值排序帖子,现在当前是帖子视图号码。我尝试使用以下代码

$queried_object = get_queried_object();
$args = array(
        'post_type'  => 'product',
        'term'  => $queried_object->slug,
        'meta_query' => array(
            array(
                'key'     => 'product_views_count',
                'orderby' => 'meta_value_num',
                'order' => DESC,
            )
        ),
        'tax_query' => array(
            array(
                'taxonomy' => 'product_cat',
                'terms' => array(
                    $queried_object->term_id
                )
            )
        )
    );
$query = new WP_Query($args);

因此,我正在获取当前的类别帖子,但仍然没有按 product_views_count 自定义字段值对帖子进行排序。

知道这里有什么问题吗? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我认为你错放了orderby论点。它进入了顶层。您还需要在其中添加meta_key参数,以便它知道要排序的内容。

我只是将您的问题中的代码略微修改为您需要的代码。它没有经过测试,但应该可以正常工作。

$queried_object = get_queried_object();
$args = array(
        'post_type'     => 'product',
        'term'          => $queried_object->slug,
        'orderby'       => 'meta_value_num',
        'order'         => DESC,
        'meta_key'      => 'product_views_count',
        'meta_query'    => array(
            array(
                'key'       => 'product_views_count'
            )
        ),
        'tax_query'     => array(
            array(
                'taxonomy'  => 'product_cat',
                'terms'     => array(
                    $queried_object->term_id
                )
            )
        )
    );
$query = new WP_Query($args);