勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

WordPressにて投稿記事及び固定ページの記事数を取得・表示する方法

  WordPress CMS

WordPressにてページ内に記事数を表示したいというケースがあった。また、通常の記事・カスタム投稿タイプの記事・固定ページそれぞれの記事数を取得・表示したい。MySQLから直接取得する必要があるのかと思ったが、調べたところ専用の関数があったので利用方法をメモ。

 

対応方法

ソースコード

<?php
//普通の記事数
$count_posts = wp_count_posts();
$count= $count_posts->publish;
var_dump($count);

//固定ページの記事数
$count_posts = wp_count_posts('page');
$count = $count_posts->publish;
var_dump($count);

//カスタム投稿の記事数
$count_posts = wp_count_posts('カスタム投稿のタイプ名');
$count = $count_posts->publish;
var_dump($count);

解説等

wp_count_posts()の第1引数に投稿タイプを指定する必要があるが、デフォルトはpost(普通の記事)になるため、指定しない場合は普通の記事の記事数が取得できる。

 

リファレンス

wp_count_posts()

https://developer.wordpress.org/reference/functions/wp_count_posts/

 - WordPress CMS

  関連記事

WordPressで運用中のサイトを停止しないままサーバ移設する方法
WordPressで運用中のサイトを停止しないままサーバ移設する方法

WordPressを設置しているサーバのリソースがそろそろ危ういので移設を検討す ...

WordPressのデータベースの整理について(リビジョン削除、MyISAMからInnoDBに変更)
WordPressのデータベースの整理について(リビジョン削除、MyISAMからInnoDBに変更)

WordPressのデータベースを直接変更・削除することは今まであまりなかった。 ...

WordPressと別プログラム間でSESSIONが引き継げない場合の対応方法
WordPressと別プログラム間でSESSIONが引き継げない場合の対応方法

同一サーバ内に自作したプログラムとWordPressを設置しており両者でセッショ ...

WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示されない(編集できない)場合の対応方法
WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示されない(編集できない)場合の対応方法

WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示 ...

WordPressで構築されたサイト内でAjax通信を行う方法
WordPressで構築されたサイト内でAjax通信を行う方法

WordPressで構築されたサイト内でボタンクリック時等にAjax通信を行いた ...