【WordPress】プラグインなしで投稿や固定ページの本文へ「読む時間」の目安を表示する方法

最近よく見かけるページ先頭の「このページは○○分で読むことができます」とか「所要時間○○分」と言った訪問者がページを読むのにかかるおおよその時間の表示。何となくで見てはいたのですが、あったら読む側に便利なのかと思って実装してみました。

ひょっとしたらプラグインにこういうのがあるかもしれませんが、わざわざプラグインに頼ってサーバーに負荷をかけなくてもできることはコードを書いて実装したいので、いろいろ調べて以下のコードにたどり着きました。

スポンサーリンク

WordPressでプラグインなしで記事やページの本文の直前に「読む時間」の目安を表示する方法

設置方法は簡単で、テーマのfunctions.phpの一番下あたりに以下のコードをコピペするだけです。

// 記事本文の前に記事文字数と読む時間を表示する
function countdown($content){
	$count = floor(mb_strlen(strip_tags($content)) / 700) + 1;
	return '<p class="countdown">このページはおおよそ '.$count.' 分で読むことができます。時間がないときは、お気に入りに登録するなどして後からゆっくりご覧ください。</p>'.$content;
}
add_action('the_content','countdown');

コードの途中に出てくる700という数字はおおよそ1分で700文字読めるかなという目安です。一般的には400~600文字らしいですが、自分でいろいろな記事を読んでみて700が適当だったのでこの値にしました。実装したら調整してみてください。

また、「このページはおおよそ」と「分で読むことができます。時間がないときは、お気に入りに登録するなどして後からゆっくりご覧ください。」の文字は自由に変更できますので、サイトに合わせた言葉で表現されるといいと思います。

ちなみに、Metamanagerプラグインで自動的に作られる要約の先頭にこのメッセージが含まれるため、Googleの検索結果での要約にも反映され、「○○分で読めるのか~」とアクセスしてもらえるきっかけにもなりそうです。

functions.phpへ安全にコードを追加するために

functions.phpはWordpressの動作に必要な関数というのを格納しておく大切なファイルです。このファイルの編集に失敗すると画面が真っ白になって操作できなくなります。変更前にバックアップを取っておけば不具合が起きたときに元に戻せますが、大事なときに限ってバックアップを取り忘れるものです。そんな不具合を最小限にするためにWordpressには便利なプラグインがあります。functions.phpにコードを入力して動作するプログラムの塊のことを「スニペット」といいますが、このプラグインはスニペットをfunctions.phpに挿入したりスニペット毎に管理できるプラグインです。このプラグインには簡単な構文エラーチェック機能も備わっていますので、これを使うことでより安全にスニペットを追加することができます。

Wordpressの機能をカスタマイズする際には「プラグイン」を使う他にfunctions.phpへ直接「コードスぺニット」記述する方法があります。「Code Snippets」は、直接functions.phpに記述するコードを直接ファイルに挿入することなく管理できるプラグインです。
役に立つ情報でしたらぜひSNSやメールでシェアしてください
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
ページ先頭へ