首页 视频课程 WordPress开发文档文章循环输出与重置 日期查询

日期查询

2020-03-17 / 4664阅

本视频需要登录以后才能播放

登录

year(整数):4 位数的年份,比如 2014
monthnum(整数):月份,从 1 到 12
w(整数):周,从 0 到 53
day(整数):日,从 1 到 31
hour(整数):小时,从 0 到 23
minute(整数):分钟,从 0 到 60
second(整数):秒,从 0 到 60
m(整数):年月,比如 201409
date_query(数组):复杂的日期查询
year(整数):4 位数的年份,比如 2014
month(整数):月份,从 1 到 12
week(整数):周,从 0 到 53
day(整数):日,从 1 到 31
hour(整数):小时,从 0 到 23
minute(整数):分钟,从 0 到 59
second(整数):秒,从 0 到 59
before(字符串 | 数组):开启查询日期,可以是能被 strtotime() 函数解析的日期字符串,还可以使用数组:
year(整数):4 位数的年份,比如 2014,默认为空
month(整数):月份,从 1 到 12,默认是 1
day(整数):日,从 1 到 31,默认是 1
after(字符串 | 数组):结束查询日期,可以是能被 strtotime() 函数解析的日期字符串,还可以使用数组:
year(整数):4 位数的年份,比如 2014,默认为空
month(整数):月份,从 1 到 12,默认是 12
day(整数):日,从 1 到 31,默认是本月最后一天
inclusive(布尔):before 和 after 是否包含所指定本日的文章
compare(字符串):使用什么比较符号(=、!=、>、>=、< 、<=、IN、NOT IN、BETWEEN、NOT、BETWEEN)
column(字符串):匹配的日期字段,默认是 post_date
relation(字符串):条件的逻辑关系,OR(或者)或 AND(和) 

获取 2012 年 12 月 12 日的文章

$query = new WP_Query( 'year=2012&monthnum=12&day=12' );
或者:
$args = array(
    'date_query' => array(
        array(
            'year'  => 2012,
            'month' => 12,
            'day'   => 12,
        ),
    ),
);
$query = new WP_Query( $args ); 

获取今天发布的文章

$today = getdate();
$query = new WP_Query( 'year=' . $today['year'] . '&monthnum=' . $today['mon'] . '&day=' . $today['mday'] );
 或者:
 $today = getdate();
 $args = array(
     'date_query' => array(
         array(
             'year'  => $today['year'],
             'month' => $today['mon'],
             'day'   => $today['mday'],
         ),
     ),
 );
 $query = new WP_Query( $args ); 

获取本周发布的文章

$week = date( 'W' );
$year = date( 'Y' );
$query = new WP_Query( 'year=' . $year . '&w=' . $week );
或者:
$args = array(
     'date_query' => array(
         array(
             'year' => date( 'Y' ),
             'week' => date( 'W' ),
         ),
     ),
 );
 $query = new WP_Query( $args ); 

获取上午 9 点到下午 5 点的文章

 $args = array(
     'date_query' => array(
         array(
             'hour'      => 9,
             'compare'   => '>=',
         ),
         array(
             'hour'      => 17,
             'compare'   => '< =',         ),         array(             'dayofweek' => array( 2, 6 ),
             'compare'   => 'BETWEEN',
         ),
     ),
     'posts_per_page' => -1,
 );
 $query = new WP_Query( $args ); 

获取 2013 年 1 月 1 日到 2013 年 2 月 18 日的文章 包含 2013 年 1 月 1 日和 2013 年 2 月 18 日的文章:

 $args = array(
     'date_query' => array(
         array(
             'after'     => 'January 1st, 2013',
             'before'    => array(
                 'year'  => 2013,
                 'month' => 2,
                 'day'   => 28,
             ),
             'inclusive' => true,
         ),
     ),
     'posts_per_page' => -1,
 );
 $query = new WP_Query( $args ); 

不包含 2013 年 1 月 1 日和 2013 年 2 月 18 日的文章:

 $args = array(
     'date_query' => array(
         array(
             'after'     => 'January 1st, 2013',
             'before'    => array(
                 'year'  => 2013,
                 'month' => 2,
                 'day'   => 28,
             ),
             'inclusive' => false,
         ),
     ),
     'posts_per_page' => -1,
 );
 $query = new WP_Query( $args ); 

获取在一年前发布却在一个月前修改过的文章

 $args = array(
     'date_query' => array(
         array(
             'column' => 'post_date_gmt',
             'before' => '1 year ago',
         ),
         array(
             'column' => 'post_modified_gmt',
             'after'  => '1 month ago',
         ),
     ),
     'posts_per_page' => -1,
 );
 $query = new WP_Query( $args ); 

阅读文章或者观看视频过程中有任何问题,请下方留言或者联系我Q248758228

大家谈论
    我的见解
    目录