WP职位经理 - Orderby Customfield

时间:2015-04-22 17:57:09

标签: php wordpress

我正在使用插件WP作业管理器,并且有一个meta_key = rating的自定义字段。

我希望能够通过评级和短代码“orderby”来订购商品。

通常对于帖子我想象在funcitons.php中会是这样的:

$args = array(
    'orderby'  => 'meta_value',
    'meta_key' => 'rating',
    'meta_query' => array(
        array(
            'key'     => 'rating',
            'value'   => null,
            'compare' => '!=' 
        )

    ), // End of meta_query
    'fields'  => 'ID',
    'exclude' => array(
        1
    ),

);

任何知道怎么做的人?

3 个答案:

答案 0 :(得分:0)

尝试将此添加到functions.php:

function args_function_rating_dsaw($args) {
    $args['orderby'] = 'meta_value_num';
    $args['order'] = 'DESC';
    $args['meta_key'] = 'rating';
    return $args;
}

答案 1 :(得分:0)

i just found solution its late but maybe some one will use it :) i as do

function set_custom_post_types_admin_order($wp_query) {
$post_type = $wp_query->query['post_type']; // line 105
    if ( $post_type == 'job_listing') {
      $wp_query->set('orderby', '_v_power');
      $wp_query->set('order', 'ASC');
    }
}
add_filter('pre_get_posts', 'set_custom_post_types_admin_order');

答案 2 :(得分:0)

要通过自定义字段进行订购,您需要定义“ meta_key”(在您的情况下为“ rating”)。 然后执行orderby ='meta-value'。

add_filter('get_job_listings_query_args', 'order_by_rating');

function order_by_rating($query_args)
{
    $query_args['meta_key'] = 'rating';
    $query_args['orderby'] = 'meta_value';
    $query_args['order'] = 'ASC';
    return $query_args;
}

添加到functions.php