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



お勧め

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

ブロックエディターの色設定を変えてみる(2019年12月11日 更新)

バージョン5.3で機能強化されたブロックエディター。対応を考えて新テーマ「Twenty Twenty」のソースコードを眺めていく。

5.3の新機能:日付とタイムゾーン(2019年10月2日 更新)

WordPress 5.3 Beta 1」に記載されていた「Time/Date component fixes」という見出し。開発者向として新しい関数の追加や多くのバグが修正されたとなっており、チェックせざるを得ない。

ショートコードを含んだページを表示する前に何か処理する(2014年5月28日 更新)

固定ページまたは投稿ページに独自のフォームを埋め込む。入力→登録の2段階のフォームなら著名なプラグイン「Contact Form 7」を利用すればいいのだが、クライアントの依頼は入力→確認→登録の3段階で組み込む要素が特化していたので、独自の実装方法を考えることになった。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。