0
WP_Usersテーブルに50,000人を超える登録ユーザーがいます。多くの場合、私はユーザー全体のさまざまな状態をチェックしてカウントするクエリを実行する必要があります。WordPressユーザークエリのスケーリング
多くの場合、次のような記述をします。
$users = get_users(); //This query is not limited I need to run across all my users.
$active_users = 0;
foreach ($users as $user) {
$last_transaction_date = strtotime(get_user_meta($user_id, 'last_trans_date', true));
$next_recurring_date = strtotime(get_user_meta($user_id, 'next_recurring_date', true));
$todays_date = strtotime('now');
if ($todays_date >= $last_transaction_date && $todays_date <= $next_recurring_date) {
$active_users++;
}
}
これに伴う問題は、それが非常に遅く、物事のクラッシュを作るになりやすいですので、それはユーザーごとに2つのデータベース呼び出しを生成していることです。誰にでも提案はありますか?