来自meta_key的WP_User_Query和来自辅助meta_key的orderby

时间:2015-12-07 10:41:30

标签: php meta wp-query

首先,我希望现有的,现在对一些真正的业务,我需要一些代码的帮助。我有这个代码,按预期工作,但现在我想通过另一个meta_key订购这些代码。我已经尝试使用meta_query来获取另一个密钥,但仍然不成功。 我希望所有用户meta_value => $region_id位于meta_key => multi_broker_regionorderby => meta_value_num位于meta_key => broker_Order.

任何提示?将不胜感激

$user_query = new WP_User_Query(
    array(
        'meta_key'   => 'multi_broker_region',
        'meta_value' => $region_id,
        'order'      => 'ASC',
    )
);
$aUsers = $user_query->get_results();
return $aUsers;

方面//

初​​学者

2 个答案:

答案 0 :(得分:0)

试试这个。

 $user_query= new WP_Query(
    array(
        'post_type' => 'your_post_type',
        'posts_per_page' => 10,
        'orderby' => 'meta_value', 
        'meta_key' => 'multi_broker_region',
        'order'=>'ASC'
    )
);

答案 1 :(得分:0)

您可以在查询数组中定义一个$meta_query数组以过滤结果,并使用$meta_key$orderby来对结果进行排序。

对于您的情况,这看起来像以下内容:

$meta_query = array(
    'key'     => 'multi_broker_region',
    'value'   => $region_id,
    'compare' => '='
);
$user_query = new WP_User_Query(
    array(
        'meta_query' => $meta_query,
        'meta_key'   => 'broker_Order',
        'orderby'    => 'meta_value_num',
        'order'      => 'ASC'
    )
);
$aUsers = $user_query->get_results();
return $aUsers;

Shashank Singh在评论中提供的链接显示了meta_query的更复杂的示例,该示例将多个键与逻辑AND关系进行比较。您可以在Wordpress参考:https://developer.wordpress.org/reference/classes/wp_meta_query/中找到有关所有这些内容的更多详细信息。您可能会发现文档稀疏,并且在解释问题时几乎没有什么用-用户提交的示例可能对您有用。