count_users()


WordPressのcount_users()関数は、サイトに登録されているユーザーの数をカウントするために使用されます。ユーザーのロールごとの数も取得できます。

構文

count_users( string $strategy = 'time', int|null $site_id = null );

引数の説明:

  • $strategy(string) — カウント方法を指定します。デフォルトは’time’で、最も効率的な方法を自動選択します。
  • $site_id(int|null) — マルチサイト環境で特定のサイトIDを指定します。デフォルトはnullで、現在のサイトを対象とします。

例1: 全ユーザー数の取得

この例では、サイトに登録されている全ユーザーの数を取得します。

<?php $user_count = count_users(); echo $user_count['total_users']; ?>

例2: ロールごとのユーザー数を取得

この例では、各ユーザーロールごとのユーザー数を取得します。

<?php $user_count = count_users(); print_r($user_count['avail_roles']); ?>

例3: 特定のロールのユーザー数を表示

この例では、’editor’ロールのユーザー数を表示します。

<?php $user_count = count_users(); echo $user_count['avail_roles']['editor']; ?>

例4: マルチサイトでのユーザー数取得

この例では、マルチサイト環境で特定のサイトIDのユーザー数を取得します。

<?php $user_count = count_users('time', 2); echo $user_count['total_users']; ?>

例5: ユーザー数のキャッシュを無効にする

この例では、キャッシュを使用せずにユーザー数を取得します。

<?php $user_count = count_users('nocache'); echo $user_count['total_users']; ?>

例6: ユーザー数の結果をデバッグする

この例では、count_users()の結果をデバッグ表示します。

<?php $user_count = count_users(); echo '<pre>'; print_r($user_count); echo '</pre>'; ?>

例7: ユーザー数に基づいた条件分岐

この例では、ユーザー数が100人以上の場合にメッセージを表示します。

<?php $user_count = count_users(); if ($user_count['total_users'] > 100) { echo 'ユーザー数が100人を超えています。'; } ?>

例8: ユーザー数の増加を監視

この例では、ユーザー数が増加した場合に通知を表示します。

<?php $user_count = count_users(); if ($user_count['total_users'] > get_option('previous_user_count')) { echo 'ユーザー数が増加しました。'; } update_option('previous_user_count', $user_count['total_users']); ?>

注意点

  • count_users()は、大規模なサイトではパフォーマンスに影響を与える可能性があります。適切なキャッシュ戦略を検討してください。
  • マルチサイト環境では、$site_idを正しく指定しないと、意図しないサイトのデータを取得する可能性があります。

関連機能: