几个月前,我更新了get_users()
和WP_User_Query
, 关于date_query
在WordPress 4.1+中支持用户注册日期。
然后我还添加了simple example 关于如何查找过去12小时内注册的用户。
但目前的问题是如何找到今天注册的用户。
我们可以简单地使用相对日期字符串:
$args = [
\'date_query\' => [
[ \'after\' => \'today\', \'inclusive\' => true ],
]
];
$query = new WP_User_Query( $args );
将生成以下SQL查询:
SELECT SQL_CALC_FOUND_ROWS wp_users.* FROM wp_users WHERE 1=1 AND (
wp_users.user_registered >= \'2015-11-06 00:00:00\'
) ORDER BY user_login ASC ;
我们还可以设置
year
,
month
和
day
参数明确:
$args = [
\'date_query\' => [
[
\'year\' => current_time( \'Y\' ),
\'month\' => current_time( \'m\' ),
\'day\' => current_time( \'d\' ),
],
]
];
$query = new WP_User_Query( $args );
这将产生:
SELECT SQL_CALC_FOUND_ROWS wp_users.* FROM wp_users WHERE 1=1 AND (
(
YEAR( wp_users.user_registered ) = 2015
AND MONTH( wp_users.user_registered ) = 11
AND DAYOFMONTH( wp_users.user_registered ) = 6
)
) ORDER BY user_login ASC ;