typecho首页文章按照浏览量进行排序输出

默认情况下,typecho 首页输出的文章是按照创建时间的先后顺序进行排序输出的,如何按照文章的阅读量进行排序输出呢?

因为我之前的文章 粗略统计网站访客数量 中介绍了我的网站是如何粗略统计文章的阅读数量的,在content表中添加了viewsNum字段记录文章的浏览数。

具体如何操作呢?

找到以下文件

/var/Widget/Archive.php

搜索 仅输出文章,找到下面这行代码

$select->order('table.contents.created', Typecho_Db::SORT_DESC)

修改为:

$select->order('table.contents.views', Typecho_Db::SORT_DESC)

说明:views是之前手工添加过的,我在functions.php中增加了get_post_view()函数,当每个文章阅读时可自动生成并递增,原版typecho没此字段。即可——大功告成!