「本文を読む目安時間」を表示するWordPressカスタマイズ方法

WordPressの記事の内容を「だいたい何分で読めるか?」がわかるようにするカスタマイズ方法の紹介です。

スポンサーリンク
レクタングル(大)広告

主な手順

目安時間を表示するための、主な手順はこちら。

  1. functions.phpに時間取得関数追加
  2. テンプレートで関数の呼び出し

コピペのみで実装できるかと思います。

    functions.phpに時間取得関数追加

    まずは、テーマ(子テーマ)のfunctions.phpに以下の関数をコピペします。

    //本文を読むのにかかる時間
    function get_time_to_content_read($content){
      $count = mb_strlen(strip_tags($content));
      if ($count == 0) {
        return 0;
      }
      $minutes = floor($count / 600) + 1;
      return $minutes;
    }

    上記は、「読む時間」を計算する関数です。

    大体、平均的な日本人の読むスピードが「1分間に600文字」ということから算出しています。

    日本人の3人に2人は、読書スピードは400文字~800文字/分の範囲にあることが分かっています。平均読書スピードは毎分600文字で、文庫本1ページの平均文字数が約600文字(古い文庫本には800文字ほどのものもあります)ですから、1分間に1ページを読んでいる、というスピードになります。

    参考 速読の理論 あなたの読書スピードと、日本人平均値の関係

    いろいろなサイトを調べてみても、だいたい「平均1分間に600文字」と書かれていたので、それを採用しています。

    テンプレートで関数の呼び出し

    あとは、「目安時間」を表示させたいテンプレートの箇所に以下のコードをコピペで挿入します。

    <div class="read-time">
      <?php echo sprintf('この記事は約%s分で読めます。', get_time_to_content_read(get_the_content())); ?>
    </div>

    こちらでは、get_time_to_content_read関数に本文を渡して、返り値として「読む目安時間(分)」を取得し、出力しているだけです。

    動作確認

    あとは、挿入したコードが表示されるページを開けば、以下のように表示されます。

    「本文を読む目安時間」を表示

    まとめ

    こんな感じで、「本文を読む時間の目安」を表示することができます。

    ただ、今回は「時間表示」機能に絞ってコードを書いたので、余計な装飾はありません。

    今回のカスタマイズに、HTMLタグ、CSSでの装飾、アイコンフォントを追加すれば、以下のように見た目を変更することも可能かと思います。

    この記事は約13分で読めます。

    記事の冒頭に読む時間が表示されていれば、その時間で読む余裕がある人は「読んでみようかな」と思ってくれるかもしれません。

    スポンサーリンク
    レクタングル(大)広告
    レクタングル(大)広告

    スポンサーリンク