WP_Query中的多个meta_key

时间:2013-11-20 10:34:05

标签: php wordpress

我想对我的内容进行排序。我想在两个自定义meta_keys(状态和截止日期)上对其进行排序。

到目前为止,我已经得到了这个:

$mypost = array( 
    'post_type' => 'customposttype', 
    'order' => $_GET['order'], //ASC
    'orderby' => $_GET['orderby'], //meta_value
    'meta_key' => $_GET['meta_key'], //status
    'meta_value' => $_GET['meta_value'] //live
);  

$loop = new WP_Query( $mypost );

使用以下网址,我可以实现此查询:

<a href="<?php echo add_query_arg(array ('orderby' => 'meta_value', 'meta_key' => 'status', 'meta_value' => 'live', 'order' => 'ASC'));?>">Show status=live results</a>

底线是: 我还想对'status = live'和'deadline'进行排序。

截止日期也是'meta_key'。这里的任何人都知道我的查询应该是什么样的!?

1 个答案:

答案 0 :(得分:1)

我不知道您通过链接获取结果的方法,请查看下面的代码示例,为元键值准备查询args。我之前没有测试过,请告诉我它是否适合你。

$mypost = array( 
    'post_type'  => 'custom-post-type', 
    'order'      => 'ASC', //ASC
    'orderby'    => 'meta_value', //meta_value
    'meta_query' => array(
            'relation' => 'OR',
    array(
        'key'   => 'status',
        'value' => 'live'
    ),
    array(
        'key'   => 'status',
        'value' => 'deadline'
    )
)

);  

$loop = new WP_Query( $mypost );

查看可能有助于您提供更多WP_Query

的指定链接