今日登録したユーザーの数を取得しようとしています。
私はこれを試してみました:
$args = array (
'role' => 'Subscriber',
'meta_query' => array(
array(
'key' => 'user_registered',
'value' => '2015-01-13 00:00:00',
'compare' => '>=',
'type' => 'DATE', //also tried DATETIME, TIME
),
),
);
$user_query = new WP_User_Query( $args );
$user_query->total_users;
しかし、結果は常に0です。
これは動作します:
global $wpdb;
$results = $wpdb->get_results( "SELECT * FROM `wp_users` WHERE `user_registered` >= '2015-01-13 00:00:00'");
echo count($results);
しかし、WP_User_Query()はこれを実行できないはずです。引数に問題がありますか?
ユーザー登録日にdate_query
パラメーターを使用するだけです。
$args = array (
'role' => 'subscriber',
'date_query' => array(
array(
'after' => '2010-01-13 00:00:00',
'inclusive' => true,
),
),
);
$user_query = new WP_User_Query( $args );
この部分WP_User_Query
ソースコードの、/それはそれを可能にします:
// Date queries are allowed for the user_registered field.
if ( ! empty( $qv['date_query'] ) && is_array( $qv['date_query'] ) ) {
$date_query = new WP_Date_Query( $qv['date_query'], 'user_registered' );
$this->query_where .= $date_query->get_sql();
}