説明
パラメータ
- $strategy集計方法として'time'または'memory'を指定(省略時は'time')。
- $site_id[4.9.0]マルチサイト時にサイトIDを指定(省略時はnull)。
返り値
全ユーザ数と役割別のユーザ数を格納した連想配列を返す。
array(2) {
["total_users"]=>
int(2)
["avail_roles"]=>
array(3) {
["administrator"]=>
int(1)
["subscriber"]=>
int(1)
["none"]=>
int(0)
}
}
注意
パラメータ$strategyに指定する値は、著しく大量のユーザがいない限り'time'(時間優先)で問題ないと思われるが、メモリー不足でエラーになることを危惧するなら'memory'を指定する方が無難と思われる。
[4.4.0]返り値の配列["avail_roles"]["none"]に役割なしのユーザ数が格納されるようになった。
[4.9.0]パラメータ$site_idが追加され、マルチサイトの場合に任意のサイトから対象情報を取得できるようになった。
[5.1.0]ユーザー数を集計する前に'pre_count_users'フィルターが追加された。このフィルターでnull以外を返すと、集計は行われず、その値が本関数の返り値となる。
使用例
- 現在のサイトにて役割別のユーザ数を取得する。<?php $users = count_users(); ?>
- サイトIDが3のサイトから役割別のユーザ数を取得する。<?php $users = count_users( 'time', 3 ); ?>
フィルター
[5.1.0]ユーザー数の集計前に'pre_count_users'フィルターを呼び出す。パラメータ$resultにはnullが、$strategyには受け取った内容が, $site_idにはサイトIDが格納されている。$pre = apply_filters( 'pre_count_users', $result, $strategy, $site_id );
アクション
実行するアクションはありません。ソースファイル
/wp-includes/user.php最終更新 : 2019年03月01日 13:51
関連
お勧め
ブロックエディターの文字サイズ設定を変えてみる(2019年12月12日 更新)
今回は「前回投稿した内容」の続きブロックエディターの文字サイズ設定を変えようと思う。参考にするテーマはもちろん「Twenty Twenty」である。
the_date関数で投稿日を確実に表示する(2011年12月20日 更新)
投稿記事の投稿日時を表示する際、 the_date関数を使用することが多いだろう。このthe_date関数はphpのdate関数と同じパラメータを指定することで、好みの日時フォーマットで投稿日時を表示できるのだが、ある条件の場合に投稿日時を表示しない。最初にこの現象に遭遇したときは、ちょっと悩まされた。投稿内容に応じてwpautopを制御する(2013年8月13日 更新)
投稿内容を表示する the_content関数では、 wpautop関数がフィルターの1つとして呼び出され、改行をbrタグに変換したり、pタグで調整したりする。この機能自体は便利なのだが、きちんとデザインされたHTMLソースを流し込んだ場合はこの機能は好ましくない。そんなわけで、記事内容に応じてwpautop関数を制御できないか考えてみた。
xmlrpc.phpへのアクセスについてちょっと考えた(2018年5月27日 更新)
少し前のことですが、こちらのサーバーを何度かダウンさせてしまったのですが、その原因はxmlrpc.phpへアクセスが集中したことによってサーバーが過負荷となってしまったというものでした。すぐにサーバー性能を上げることはできないため、xmlrpc.phpのアクセスを全部拒否するという暫定対応してしまいました。
メディアライブラリに絞り込み用の「投稿タグ」を追加する(2014年6月24日 更新)
この記事は、先月投稿したコラム「メディア(attachment)を拡張してより便利に活用する」の続編。メディアで「投稿タグ」を追加するだけで「メディアライブラリ」ページの投稿一覧の中には「タグ」カラムが追加されるが、今回はその「投稿タグ」で絞り込み検索に対応してみる。