count_user_posts

(3.0.0以降)
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年2月10日 登録)

Java Scriptやスタイルシートの指定を直接head要素内に記述せず、wp_enqueue_scriptsフィルターなどを使って指定する場合、WordPressのバージョン番号が付与されている。このバージョン番号は、妥当なんだろうか。

ログインページを変える(2012年11月18日 登録)

WordPressの標準的な不正ログイン対策としては、ログインIDは'admin'を避けるパスワードはユニークで長くする、場合によってはアクセスできるIPアドレスを制限する、といった具合だろう。これらの他に何かできないものだろうかと、ちょっと考えてみた。

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 登録)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

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

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

Login rebuilderで第2ログインページのURLを取得する(2015年5月24日 登録)

先週のこと、「Login rebuilder」のユーザから「wp_login_url関数のように第2ログインページのURLを取得できないか」という問い合わせがありました。その時点ではそのような関数やメソッドを用意していなかったのですが、まあニーズがあるなら作ってみようと思い、対応するメソッドを追加したLogin rebuilderバージョン1.4.3をリリースしました。

最終更新日時 : 2015-09-16 11:15