wp_count_posts

(2.5.0以降)
wp_count_posts - 投稿数を取得する

説明

object wp_count_posts( [ string $type = '' [ , string $perm = '' ] ] )
投稿数を取得する。

パラメータ

  • $type
    投稿タイプを指定(省略時は'post')
  • $perm
    'readable'または''を指定(省略時は'')

返り値

投稿ステータス別の投稿数を格納したオブジェクトを返す。オブジェクトのプロパティは次に示す通り投稿ステータス名であり、それぞれに投稿数が格納されている。
プロパティ内容
publish公開
future予約投稿
draft下書き
pendingレビュー待ち
private非公開
trashごみ箱
auto-draft自動下書き
inherit継承記事(リビジョンなど)

注意

パラメータ$permで'readable'を指定し、ユーザがログイン中(is_user_logged_in関数で調べる)でかつ他人のステータスが'private'な記事を閲覧できない(current_user_can関数で調べる)場合、検索対象はステータスが'private'以外か、そのユーザが投稿したステータスが'private'の投稿になる。

使用例

  • 投稿記事の投稿数を取得する。
    <?php $counts = wp_count_posts(); ?>
  • カスタム投稿タイプ'news'で'readable'して投稿数を取得する。
    <?php $counts = wp_count_posts( 'news', 'readable' ); ?>

フィルター

投稿数を返す直前に'wp_count_posts'フィルターを呼び出す(3.7.0以降)。$countsには投稿数の連想配列が、$type$permのそれぞれにはパラメータで受け取った値が格納される。
return apply_filters( 'wp_count_posts', $counts, $type, $perm );

アクション

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

ソースファイル

/wp-includes/post.php

関連

お勧めコンテンツ

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

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

投稿一覧に独自リンクを追加する(2013年4月25日 登録)

管理者ページの「投稿一覧」や「固定ページ一覧」の各投稿記事はマウスポインタを移動すると、「編集」や「クイック編集」といったリンクが表示される。このリンクに独自のリンクを追加する方法を調べてみた。

常時SSL接続に変更しました(2017年3月3日 登録)

先週末、本サイトを常時SSL接続に変更しました。本サイトは「さくらのVPS」(CentOS 6系、Apache 2.2系)上にWordPressのマルチサイト機能を使って構築しており、無償で使用できる「Let's Encrypt」を使って常時SSL接続に切り替えた手順をメモとして残しそうと思います。

もうquery_postsは呼ばない(2011年9月27日 登録)

トップページやカテゴリーページで標準の条件に少し手を加えた投稿情報を表示するケースがある。そんな時、テンプレートファイルの先頭でquery_posts関数を呼び出して投稿情報を再抽出していたのだが、フィルター処理をうまく使えばquery_posts関数を呼び出さなくても大丈夫みたいだ。

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2015年4月10日 登録)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

最終更新日時 : 2013-10-31 13:55