当前位置: 首页 > news >正文

wordpress文章页调用此文章的阅读时间

在WordPress文章页调用阅读时间,有直接使用代码和安装插件两种方式。如果只需要简单功能,推荐使用代码方式,更轻量可控;如果希望有更多自定义选项或不想操作代码,可以直接安装插件。

方法一:在主题的functions.php中添加函数

这是目前最推荐的方式,针对中文内容优化,不依赖插件。

第一步:将以下代码添加到您当前主题的functions.php文件中

// 自定义文章阅读时间 function custom_reading_time() { global $post; // 获取文章内容,并去除HTML标签和短代码 $content = strip_shortcodes( $post->post_content ); $content = strip_tags( $content ); // 计算中文字符数 (使用mb_strlen) $text_num = mb_strlen( $content, 'UTF-8' ); // 设定每分钟阅读字数,中文建议设为300,可根据需要调整[citation:2] $words_per_minute = 300; // 计算阅读分钟数,并向上取整 $read_time = ceil( $text_num / $words_per_minute ); // 返回阅读时间文本,您可以根据需要修改这里的显示格式 return '预计阅读时长:' . $read_time . ' 分钟'; }

注意:mb_strlen() 函数依赖服务器的mbstring扩展,大部分主机都已默认支持。

第二步:在文章页模板中调用函数

找到主题中的single.php文件,在您希望显示阅读时间的位置(例如文章标题下方、内容之前),插入以下调用代码:

<span class="read-time"> <?php echo custom_reading_time(); ?> </span>

如果您希望阅读时间自动出现在文章内容最前面,可以将以下代码添加到functions.php中:

// 将阅读时间自动添加到文章内容之前 function add_reading_time_to_content( $content ) { if ( is_single() && in_the_loop() && is_main_query() ) { $reading_time_html = '<div class="reading-time">' . custom_reading_time() . '</div>'; return $reading_time_html . $content; } return $content; } add_filter( 'the_content', 'add_reading_time_to_content' );

方法二:使用插件(更简单、自定义选项多)

如果不想编辑代码,安装插件是更快捷的选择。以下是两款评价不错的插件:

GlitchSolvers Reading Time Estimator:提供简码 [glitchsolvers_reading_time],可在设置中调整阅读速度(默认200词/分钟)和显示格式。

Sam Reading Time:同样提供简码 [sam_reading_time],在 “Posts > Reading Time Settings” 可以调整每分钟阅读词数和前后缀文字。

安装后,您可以在文章内容中直接插入对应的简码,或在模板文件中使用

<?php echo do_shortcode('[简码]'); ?>

进行调用。

如何调整阅读速度?

代码中的 $words_per_minute = 300; 这一行就是设定阅读速度的。如果您觉得估算时间偏长或偏短,可以修改这个数字。数值越大,计算出的阅读时间就越短。对于中文内容,一般建议设为 300 字/分钟。

原文

http://www.haerge.com/blog/48.html

http://www.gsyq.cn/news/1587814.html

相关文章:

  • 3分钟解决Android重复操作:AutoTask自动化助手完整使用指南
  • 剪辑师必备视频下载工具:支持100+主流视频网站, 4K/8K画质
  • 从下载到编码仅需117秒:IntelliJ IDEA 2026极简安装流水线(含自动化脚本+校验哈希值+IDE Settings Sync一键迁移)
  • 好用的国产 PLM 软件目前都有哪些?
  • iPhone宽度时间序列回归建模实战:从数据清洗到780年外推
  • DALSA 59-XX-A654X-00通讯模块
  • ViVeTool GUI终极指南:解锁Windows隐藏功能的图形化利器
  • ChatGPT如何重塑真实场景中的对话系统
  • 安仕达ERP软件烘焙行业组装拆卸功能深度解析
  • CISAW风险管理认证2026深度解读:行业趋势与持证价值分析
  • 第6章 循环:让程序重复处理一批数据
  • 群晖DSM 7.2+ Video Station终极恢复实战指南
  • Stirling PDF:8 万多 Star 的开源 PDF 处理平台
  • 用桑基图可视化混淆矩阵:让业务方看懂模型错在哪
  • AbilityMeta 能力元信息:不只是能调用,还要能看懂
  • AI工程师五阶实战路径:从RAG到可信模型交付
  • 数字孪生体实战指南:打造高保真AI认知镜像
  • 关于位图结构在集合操作中的性能优势与局限的技术7
  • 汽车质检从人工抽检到AI全检:四种感知技术如何重构制造质量体系
  • Claude 3.5 Sonnet如何让AI编排层‘归零’
  • 2026亚马逊广告优化指南:如何提高大促期间广告ROI?
  • 如何用Flowframes实现专业级AI视频插帧:新手快速上手指南
  • 3步永久免费解锁IDM:开源激活脚本完整使用指南
  • AI漫画翻译APP:MT阅读器,手机一键翻译日漫教程 MT阅读器、AI漫画翻译、漫画翻译APP、漫画OCR识别、日漫翻译工具、手机漫画翻译、AI翻译漫画、安卓漫画阅读器、悬浮窗翻译、漫画OCR软件
  • vLLM 部署避坑指南,解决 Instinct GPU 上的编译报错与依赖冲突
  • TrollInstallerX完整指南:如何在iOS设备上快速安装TrollStore
  • 算力“新中间层”:Token分销模式兴起与商业逻辑重构
  • 深度解析STS-Bcut:基于必剪API的自动化语音转字幕实战指南
  • 四门超级跑车Star Matrix
  • 代码注入与内存操作:从原理到实战的逆向工程核心技术