怎么給文章增加閱讀時間? – WordPress教程

    這次的wordpress開發教程教大家如何添加文章的閱讀時間。

    今天分享 一個有趣的玩意。那就是給文章增加閱讀時間Meta值。之前分享過統計文章字數的,這個可以統計閱讀文章大概需要多久的,可以配合使用哦。

    效果圖

    怎么給文章增加閱讀時間? - WordPress教程

    廢話不多說。下面的統計計算閱讀時間的相關主代碼:

    /*-----------------------------------------------------------------------------------*/
    # Calculate reaad time
    /*-----------------------------------------------------------------------------------*/
    if(!function_exists('ie_calculate_reading_time')){
      function ie_calculate_reading_time($postID = false, $echo = false) {
        $wpm = 250;
        if(!$postID){
          $postID = get_the_ID();
        }
        $include_shortcodes = true;
        $exclude_images = false;
        $tmpContent = get_post_field('post_content', $postID);
        $number_of_images = substr_count(strtolower($tmpContent), '<img ');
        if ( ! $include_shortcodes ) {
          $tmpContent = strip_shortcodes($tmpContent);
        }
        $tmpContent = strip_tags($tmpContent);
        $wordCount = str_word_count($tmpContent);
        if ( !$exclude_images ) {
          $additional_words_for_images = ie_calculate_images( $number_of_images, $wpm );
          $wordCount += $additional_words_for_images;
        }
        $wordCount = apply_filters( 'ie_filter_wordcount', $wordCount );
        $readingTime = ceil($wordCount / $wpm);
        // If the reading time is 0 then return it as < 1 instead of 0.
        if ( $readingTime < 1 ) {
          $readingTime = esc_html__('< 1 min read', 'ie-core');
        } elseif($readingTime == 1) {
          $readingTime = esc_html__('1 min read', 'ie-core');
        } else {
          $readingTime = $readingTime.' '.esc_html__('mins read', 'ie-core');
        }
        if($echo){ 
          echo $readingTime;
        } else {
          return $readingTime;
        }
      }
    }
    ?

    因為大多少文章還有圖像。我們還需要定義閱讀圖像的時間,代碼如下:

    if(!function_exists('ie_calculate_images')){
      function ie_calculate_images( $total_images, $wpm ) {
        $additional_time = 0;
        // For the first image add 12 seconds, second image add 11, ..., for image 10+ add 3 seconds
        for ( $i = 1; $i <= $total_images; $i++ ) {
          if ( $i >= 10 ) {
            $additional_time += 3 * (int) $wpm / 60;
          } else {
            $additional_time += (12 - ($i - 1) ) * (int) $wpm / 60;
          }
        }
        return $additional_time;
      }
    }

    把上面兩段代碼復制粘貼到你的主題的funtion.php文件里面。在你想要的位置加入調用下面的調用代碼就行了。

    <?php echo ie_calculate_reading_time(); ?>

    太麻煩了?

    試試這個簡單的版本,但是只能估算到分,但也夠用了

    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主題統計文章字數也加上吧:

    怎么統計文章字數? – WordPress教程

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 亚洲狠狠狠一区二区三区| 国产精品伦子一区二区三区| 精品国产鲁一鲁一区二区| 亚洲AV成人一区二区三区在线看 | 无码精品一区二区三区| 久久精品一区二区| 精品一区二区三区在线视频观看| 亚洲一区精品中文字幕| 中文无码精品一区二区三区| 日本一区二区三区精品国产 | 日韩a无吗一区二区三区| 亚洲综合一区二区精品导航| 国产福利视频一区二区| 日本精品一区二区三区四区| 风间由美在线亚洲一区| 色婷婷av一区二区三区仙踪林| 日日摸夜夜添一区| 久久久老熟女一区二区三区| 国产精品毛片VA一区二区三区| 一区 二区 三区 中文字幕| 在线精品自拍亚洲第一区| 亚洲国产欧美国产综合一区 | 中日韩一区二区三区| 国产成人无码aa精品一区| 无码日韩精品一区二区免费| 一本一道波多野结衣AV一区| 中文字幕乱码人妻一区二区三区| 精品人妻系列无码一区二区三区 | 日韩视频在线一区| 夜夜精品视频一区二区| 日本一区二区三区久久| 在线日韩麻豆一区| 亚洲AⅤ无码一区二区三区在线 | 亚洲国产成人久久综合一区| 精品无码日韩一区二区三区不卡| 国产精品揄拍一区二区久久| 亚洲熟女乱色一区二区三区| 日本福利一区二区| 久久综合一区二区无码| 久久一区二区精品| 国产情侣一区二区|