[WordPress] 公開している記事数を取得するショートコードを作ってみた

wordpress-shortcode-public-posts WordPress
Nプログラマです。

いきなりですが、サイドバーに現在の公開している記事数を表示させたくなりました。

記事を更新するたびに手で書き換えるのが面倒だったので、公開している記事数を取得するショートコードを作ってみました。

それを使って、サイドバーに表示するというところまでやってみます。

なプ
なプ

公開する毎に数を書き換える、という楽しみもあるけどね。

概要

目標

  • 公開している記事数を取得するショートコードを作成する
  • ショートコードを使い、サイドバーに記事数を表示してみる

function.phpを編集するので、バックアップを取っておくようにしましょう。

ショートコードを作成

公開されている記事数を取得する、というショートコードを作ります。

二通りで作っていますが、どちらを使っても同じ処理です。

(1)無名関数を使う

// 現在の公開されている記事数を取得
add_shortcode('publish_posts_count', function() {
    return wp_count_posts()->publish;
});

(2)無名関数を使わない

// 現在の公開されている記事数を取得
function publish_posts_count_func() {
    return wp_count_posts()->publish;
}
add_shortcode('publish_posts_count', 'publish_posts_count_func');

(1)(2)のどちらかをfunction.phpなどに記述すれば使えるようになります。

使い方

投稿記事やウィジェットなど表示したい箇所で、以下のようにショートコードを書けばオッケーです。

[publish_posts_count]

これで現在の公開した記事数を表示することができます。
(10記事を公開している時は10が表示される)

サイドバーへ表示

先程作成したショートコードを使い、サイドバーに公開した記事数を表示してみます。

まずはサイドバーにウィジェットを登録します。
今回はテキストウィジェットを使っています。

  1. 管理画面の左メニューの「外観 > ウィジェット」を開く
  2. 「テキスト」のウィジェットをサイドバーに登録
  3. 登録したウィジェットにタイトルを入力
  4. テキスト入力欄に記事数を表示するコードを書く

記事数を表示するコードはこちらになります。

現在の記事数は[publish_posts_count]です!

登録が完了すると、サイドバーに「現在の記事数は○です」と表示されていると思います。
(○は公開している記事数)

表示したい箇所で色々と試してみてください。

おわりに

今回はWordPressのショートコードで、公開している記事の数を取得するショートコードを作り、それを使ってサイドバーに表示するという内容でした。

記事更新のモチベーションを上げる一つの方法かもしれませんね。

それでは、このへんで。
バイナリー!

参考

関数: wp_count_posts()について

Function Reference/wp count posts « WordPress Codex

公開記事の他に、下書きや固定記事の数を取得することができます。

タイトルとURLをコピーしました