ホームページ > 記事 > CMS チュートリアル > WordPressテーマに記事の文字数と読書時間を追加
記事の文字数と読了時間を表示します。この機能は何に使うのですか?わかりませんが、他のユーザーが持っている場合に追加してもよいかという質問があったので、追加しましょう。次のコラム WordPress チュートリアル では、WordPress テーマに記事の文字数と読書時間を追加する方法を紹介します。
WordPress テーマの記事の文字数と読書時間を追加WordPress テーマの記事の文字数と読書時間を追加
具体的なコードはここでも共有されています:
記事の単語数
// 字数统计 function zm_count_words ($text) { global $post; if ( '' == $text ) { $text = $post->post_content; if (mb_strlen($output, 'UTF-8') < mb_strlen($text, 'UTF-8')) $output .= '<span class="word-count">共' . mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8') .'字</span>'; return $output; } }
コードは、現在のテーマの関数テンプレートfunctions.phpに追加されます。
記事閲覧時間
// 阅读时间 function zm_get_reading_time($content) { $zm_format = '<span class="reading-time">阅读时间%min%分%sec%秒</span>'; $zm_chars_per_minute = 300; // 估算1分种阅读字数 $zm_format = str_replace('%num%', $zm_chars_per_minute, $zm_format); $words = mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($content))),'UTF-8'); $minutes = floor($words / $zm_chars_per_minute); $seconds = floor($words % $zm_chars_per_minute / ($zm_chars_per_minute / 60)); return str_replace('%sec%', $seconds, str_replace('%min%', $minutes, $zm_format)); } function zm_reading_time() { echo zm_get_reading_time(get_the_content()); }
コードは現在のテーマの関数テンプレートfunctions.phpに追加されます。
記事の文字数と読み取りタイムコードを呼び出します
記事の文字数コードを表示:
<?php echo zm_count_words($text); ?>
読み取りタイムコードを表示:
<?php zm_reading_time(); ?>
上記の呼び出しコードを追加します現在のテーマ本体テンプレートの適切な位置で十分です。
ただし、単語数と朗読時間はあまり正確ではなく、特に朗読時間はさらにナンセンスで、デフォルトは CCTV アナウンサーの話す速度に基づいています。
この記事を書いた後、インターネット上にもっと簡単なコードがあることを知りました。違いは、上記のコードは秒単位の精度であるのに対し、次のコードは分単位までしか推定できないことです。
function count_words_read_time () { global $post; $text_num = mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8'); $read_time = ceil($text_num/300); // 修改数字300调整时间 $output .= '本文共计' . $text_num . '个字,预计阅读时长' . $read_time . '分钟。'; return $output; }
呼び出し元コード:
<?php echo count_words_read_time(); ?>
以上がWordPressテーマに記事の文字数と読書時間を追加の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。