为WordPress添加文章字数统计

知更鸟
知更鸟
知更鸟
站长
2587
文章
0
粉丝
WordPress21716,313阅读模式
摘要  Wordpress在后台编辑日志时编辑框左下角有一个字数统计,不过只显示在后台,能不能在前台也加上文章字数统计功能呢?研究了一下程序源文件,发现中文版WP后台的字数统计功能,是...

WordPress在后台编辑日志时编辑框左下角有一个字数统计,不过只显示在后台,能不能在前台也加上文章字数统计功能呢?研究了一下程序源文件,发现中文版WP后台的字数统计功能,是通过wp-content\languages目录的zh_CN-word-count.js实现的,就是不知道如何调用。网上搜了一下,找到两篇老外给出的代码:

代码一、把下面代码加到主题的functions.php文件中:

  1. function count_words($str){
  2.     $words = 0;
  3.     $str = eregi_replace(" +"" "$str);
  4.     $array = explode(" "$str);
  5.     for($i=0;$i < count($array);$i++)
  6.      {
  7.         if (eregi("[0-9A-Za-zÀ-ÖØ-öø-ÿ]"$array[$i]))
  8.             $words++;
  9.     }
  10.     return $words;
  11. }

然后在single.php中希望显示字数统计的位置加上:

  1. Word count: <?php echo count_words($post->post_content); ?>

原文

代码二、还是将下面代码加到functions.php文件中,此方法与上面不同的是,还加上了一个估算的阅读时间:

  1. // Custom functions
  2. // START : Show word count
  3. function show_post_word_count(){
  4. ob_start();
  5. the_content();
  6. $content = ob_get_clean();
  7. return sizeof(explode(" "$content));
  8. }
  9. // END : Show word count
  10. // START : Estimated reading time
  11. if (!function_exists('est_read_time')):
  12. function est_read_time( $return = false) {
  13. $wordcount = round(str_word_count(get_the_content()), -2);
  14. $minutes_fast = ceil($wordcount / 250);
  15. $minutes_slow = ceil($wordcount / 150);
  16. if ($wordcount <= 150) {
  17. $output = __("< 1 minute");
  18. else {
  19. $output = sprintf(__("%s - %s minutes"), $minutes_fast$minutes_slow);
  20. }
  21. echo $output;
  22. }
  23. endif;
  24. if (!function_exists('est_the_content')):
  25. function est_the_content( $orig ) {
  26. // Prepend the reading time to the post content
  27. return est_read_time(true) . "\n\n" . $orig;
  28. }
  29. endif;
  30. // END : Estimated reading time

同样在single.php中希望显示字数统计的位置加上:

  1. The following <?php echo show_post_word_count(); ?> words should take about <?php echo est_read_time(); ?> to read.

原文

可惜上述两种方法对汉字统计无效,只适合纯英文站点,网上也没发现与中文博客字数统计相关的文章,没办法还是自己折腾一个吧。

WordPress中文博客文章字数统计代码

添加方法与上述相同,首先把下面代码加到functions.php文件中。( 注:HotNews主题加到“//全部结束”前面 )

  1. //字数统计
  2. function count_words ($text) {
  3. global $post;
  4. if ( '' == $text ) {
  5.    $text = $post->post_content;
  6.    if (mb_strlen($output, 'UTF-8') < mb_strlen($text, 'UTF-8')) $output .= '本文共' . mb_strlen(preg_replace('/\s/','',html_entity_decode(strip_tags($post->post_content))),'UTF-8') . '个字';
  7.    return $output;
  8. }
  9. }

再把调用统计代码加到自己认为适合的位置。

  1. <?php echo count_words ($text); ?>

经测试对中文统计没有什么问题,英文统计的是字母。

效果看这篇文章标题下面信息栏

这个评论可见功能参见:WordPress博客评论可见实现方法

本站文章大部分为原创,用于个人学习记录,可能对您有所帮助,仅供参考!

weinxin
我的微信
微信号已复制
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
 
知更鸟
评论  217  访客  196  作者  5
    • jmls
      jmls

      好吧,我来坐沙发,学习下~~

        • 义乌招聘网
          义乌招聘网

          @ jmls 我也跟你一样来学习的,博主人很好。能解决我的问题。

        • 一堵墙
          一堵墙

          好吧,没有做到沙发啊

          • 一堵墙
            一堵墙

            回复可见插件啊,不错不错,对SEO会有影响的吧

            • Fly
              Fly

              看一下

              • vileny
                vileny

                鸟哥怎么也搞这样的了

                • dsasd
                  dsasd

                  我更对这个回复可见的功能有兴趣哈

                  • 小丁
                    小丁

                    来看看

                    • 郝康辉
                      郝康辉

                      提示:以下内容需要您 添加留言 并刷新后方可查看!
                      这是什么插件啊?
                      留下脚印~看看!

                      • 管理教程
                        管理教程

                        很感谢这个代码,对于下载类的网站提升人气很有帮助,谢谢!期待鸟哥的新版本更新

                        • cc
                          cc

                          看看

                          • cc
                            cc

                            看看看看啊看看

                            • 情歌
                              情歌

                              对回复可见比较感兴趣。。。

                              • Tmd
                                Tmd

                                回复可见
                                好东西

                                • Tmd
                                  Tmd

                                  function.php添加函数实现的,嘿

                                  • neverno
                                    neverno

                                    哇,回复可见功能~好功能,求分享~

                                    • 丽水SEO
                                      丽水SEO

                                      什么代码,显示一下吧!我用的是第三方插件呢!

                                      • 火星人
                                        火星人

                                        回复可见插件啊

                                        • 苏人主意
                                          苏人主意

                                          回复 可看,插件,是个好东西呀

                                          • cz
                                            cz

                                            看看那

                                            • beyondme37
                                              beyondme37

                                              确实回复可见这个功能很犀利,鸟哥要分享啊!!

                                              • shiki
                                                shiki

                                                不错。。学习学习了。

                                                • 苏人主意
                                                  苏人主意

                                                  试了在网上找这个回复可见的代码,找到了,但还不够完整,没有排除 本文作者及网站管理员,即 本文作者及网站管理员 也需要回复 才可见。

                                                  • china
                                                    china

                                                    不错,学习一下

                                                    • 女包
                                                      女包

                                                      鸟哥,博客访问量大,可以去申请个CDN加速啊 CloudFlare与WebLuker的都不错

                                                      • 小东
                                                        小东

                                                        我也看看。。。不知道怎么样。看了之后在评论

                                                        • Louis Han
                                                          Louis Han

                                                          还得刷新才能看到

                                                          • 惜墨
                                                            惜墨

                                                            哈哈,看一下这个功能。

                                                            • 一堵墙
                                                              一堵墙

                                                              评论回复是怎么实现的可以说下一吗

                                                              • 娟娟
                                                                娟娟

                                                                为什么我的的第几 位访客不能加 的啊数字都不变的 希望哥哥能教教我呀很期待哦

                                                                • 笔头°
                                                                  笔头°

                                                                  哈哈,过来测试的,貌似谷歌的PR值更新了,大家自己看看,不知是不是~~

                                                                  • Feeng
                                                                    Feeng

                                                                    额。评论可见。

                                                                    • kay
                                                                      kay

                                                                      bucuo !不错!

                                                                      • 永恒之塔基地
                                                                        永恒之塔基地

                                                                        哇,人气真是不错啊。

                                                                        • 有点蓝
                                                                          有点蓝

                                                                          现场测试下这个效果,包括回复可见。

                                                                          • 有点蓝
                                                                            有点蓝

                                                                            回复评论可见的效果在切换了浏览器后就无效了。。。

                                                                            • clairelume
                                                                              clairelume

                                                                              好久没来了,鸟哥又添加了好多功能啊!~

                                                                              • dsasd
                                                                                dsasd

                                                                                这个一定要收下,不错哈

                                                                                • emxz
                                                                                  emxz

                                                                                  鸟哥V5,支持

                                                                                  • 趣味网
                                                                                    趣味网

                                                                                    测试测试啦。

                                                                                    • 小麦amigo
                                                                                      小麦amigo

                                                                                      鸟哥 当前浏览者这个代码 好用么?我怎么改完中文之后放进去了不太好使呢 我和同事同时在线却只显示一个人在线。。

                                                                                      • 歐塔庫
                                                                                        歐塔庫

                                                                                        看看

                                                                                        • zdroom温暖小窝
                                                                                          zdroom温暖小窝

                                                                                          收了

                                                                                          • haodongxi
                                                                                            haodongxi

                                                                                            这是个好东西

                                                                                            • 东

                                                                                              学习了。呵呵

                                                                                              • 纳豆
                                                                                                纳豆

                                                                                                恍惚间,博主将cn域名更换成com域名,又一年,博主PR5了,真牛啊

                                                                                                • 张自云(朋)
                                                                                                  张自云(朋)

                                                                                                  看看原理是什么

                                                                                                  • bolo
                                                                                                    bolo

                                                                                                    通过修改hack zh_CN-word-count.js也可以达到统计统计字数的功能,只是实现比较迂回一些,但是个人认为比在后台统计字数要好。

                                                                                                    • 123
                                                                                                      123

                                                                                                      看看!

                                                                                                      • 皆为浮云
                                                                                                        皆为浮云

                                                                                                        这评论可见的功能,对博客来说并无太大好处,无非增加一些停留时间。

                                                                                                        • dango
                                                                                                          dango

                                                                                                          支持

                                                                                                        匿名

                                                                                                        发表评论

                                                                                                        匿名网友

                                                                                                        拖动滑块以完成验证