php - WP_Query 中的多个meta_key

标签 php wordpress

我想对我的内容进行排序。我想根据两个自定义元键(状态和截止日期)对其进行排序。

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

$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”。这里的任何人都知道我的查询应该是什么样的!?

最佳答案

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

$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

关于php - WP_Query 中的多个meta_key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20093493/

相关文章:

php - 使用 PHP/Doctrine 从 MySQL 迁移到 PostgreSQL

css - 无法集中精力访问服务器上的字体(在控制台中出现 404 错误)

mysql查询类别和日期

css - wordpress网站中的主菜单背景颜色更改

wordpress - Chrome上的video.js WordPress插件仅音频(无视频)

php - 将 MySQL 行导入表中

php - 如何从具有 TABLE_NAMES 的 LIKE 子句的语句中获取 mysql 记录

php - ADOdb 给出 "Fatal error: Cannot pass parameter 2 by reference"

php - 我无法提交表格

html - 仅在页面上显示内容