count_user_posts

説明

int count_user_posts( int $userid [ , string $post_type = 'post' [ , bool $public_only = false ] ] )
投稿数を取得する。

パラメータ

  • $userid
    ユーザIDを指定。
  • $post_type
    [4.1.0]投稿タイプを指定(省略時は'post')。
  • $public_only
    [4.3.0]一般公開済み投稿のみの場合はtrueを、非公開の投稿を含む場合はfalseを指定(省略時はfalse)。

返り値

パラメータ$useridで指定されたユーザの投稿数を返す。

注意

複数ユーザの投稿数を取得する場合は count_many_users_posts関数を使用する。またサイト全体の投稿数を取得する場合は wp_count_posts関数を使用する。

[4.3.0]ソースコードのコメントではget_usernumpostsフィルターにパラメータ$public_onlyが追加されることになっているが、こちらは実装漏れ。[4.3.1]にて実装されるとこのことされました。


使用例

  • IDが1のユーザーの「投稿」の投稿数を取得する。
    <?php $posts_count = count_user_posts( 1 ); ?>
  • IDが1のユーザーの「固定ページ」の投稿数を取得する。
    <?php $pages_count = count_user_posts( 1, 'page' ); ?>

フィルター

[2.7.0]投稿数を返す前に'get_usernumposts'フィルターを呼び出す。パラメータ$countは投稿数、その他のパラメータは本関数が受け取った内容が格納される([4.1.0]$post_typeが追加)。
return apply_filters( 'get_usernumposts', $count, $userid, $post_type );

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/user.php

最終更新 : 2015年09月16日 11:15



お勧め

ログアウト後はいつもサイトトップ(2015年5月7日 更新)

ログアウト後に表示(リダイレクト)されるページは、標準ではログインページ(wp-login.php)である。4.2.0ではログアウト処理後のページリダイレクト前に呼び出されるフィルターが追加された。

公式ディレクトリに登録するならajax.googleapis.comのライブラリは利用しない(2015年3月21日 更新)

数日前、投稿一覧ページの絞り込みドロップダウンメニューを複数選択可能にするプラグイン「Posts filter multiselect」を公開したのですが、その際に指摘されたポイントを紹介します。

4.4では投稿ページも専用テンプレートが適用できる(2015年11月7日 更新)

従来、特定の固定ページには専用テンプレートを適用できるのですが、投稿ページに適用させるためにはアクションやフィルターを利用する必要がありました。4.4では特定の投稿ページに標準で専用テンプレートを適用できるようになりそうです。

xmlrpc.phpへのアクセスについてちょっと考えた(2015年7月11日 更新)

少し前のことですが、こちらのサーバーを何度かダウンさせてしまったのですが、その原因はxmlrpc.phpへアクセスが集中したことによってサーバーが過負荷となってしまったというものでした。すぐにサーバー性能を上げることはできないため、xmlrpc.phpのアクセスを全部拒否するという暫定対応してしまいました。

3.8の「アクティビティ」ウィジェットに投稿以外の情報も表示する(2014年1月17日 更新)

ちょうど1月前の「ダッシュボードの「概要」にカスタム投稿タイプ件数を表示する」にて、WordPress 3.8新ダッシュボードの「概要」ウィジェットにカスタム投稿タイプの投稿数を表示する方法を紹介したが、今回のその続編で「アクティビティ」ウィジェットを拡張する方法を紹介する。