本文共 142 个字数,平均阅读时长 ≈ 1分钟
修改functions.php文件
底部增加,文件路径: /usr/themes/Joe
找一个风水宝地放以下代码
// 文章阅读时长设置
$onlineTime = new Typecho_Widget_Helper_Form_Element_Select(
'onlineTime',
array(
'off' => '关闭(默认)',
'on' => '开启',
),
'on',
'是否启用文章阅读时长统计',
'介绍:开启后,文章底部展示文章字数,预计阅读时长和已阅读时长'
);
$onlineTime->setAttribute('class', 'joe_content joe_other');
$form->addInput($onlineTime->multiMode());
修改article.php文件
文件路径: usr/themes/Joe/public
{tabs-pane label="代码"}
代码语言:javascript复制<div class="contain" style="margin-bottom: 10px; <?php if(Helper::options()->onlineTime !== 'on') echo 'display:none;' ?>">
<blockquote id="onlineTime">本文共 <?php art_count($this->cid); ?> 个字数,平均阅读时长 ≈ <?php echo art_time($this->cid); ?>分钟</blockquote>
</div>
</div>
{/tabs-pane} {tabs-pane label="截图"}
{tabs-pane label="代码"}
代码语言:javascript复制fetchRow ($db->select ('table.contents.text')->from ('table.contents')->where ('table.contents.cid=?',$cid)->order ('table.contents.cid',Typecho_Db::SORT_ASC)->limit (1));
$text = preg_replace("/[^x{4e00}-x{9fa5}]/u", "", $rs['text']);
$text_word = mb_strlen($text,'utf-8');
echo ceil($text_word / 400);
}
//文章字数统计
function art_count ($cid){
$db=Typecho_Db::get ();
$rs=$db->fetchRow ($db->select ('table.contents.text')->from ('table.contents')->where ('table.contents.cid=?',$cid)->order ('table.contents.cid',Typecho_Db::SORT_ASC)->limit (1));
$text = preg_replace("/[^x{4e00}-x{9fa5}]/u", "", $rs['text']);
echo mb_strlen($text,'UTF-8');
}
?>
var second=0;
var minute=0;
var hour=0;
window.setTimeout("interval();",1000);
function interval()
{
second ;
if(second==60)
{
second=0;minute =1;
}
if(minute==60)
{
minute=0;hour =1;
}
var onlineTime = "您已阅读:" hour "时" minute "分" second "秒。";
var joe_message_content = "本文共 " <?php art_count($this->cid); ?> "个字数,平均阅读时长 ≈ " <?php echo art_time($this->cid); ?> "分钟,";
$('#onlineTime').text(joe_message_content onlineTime);
window.setTimeout("interval();", 1000);
}
{/tabs-pane} {tabs-pane label="截图"}