操作前请完成3项准备工作,避免操作失误导致站点异常:
本指南所有操作针对苹果CMS V10正式版,其他版本路径差异可自行对应调整。
该方案无需修改代码,直接通过后台配置即可调整规则,适合90%以上的常规运营需求。
登录苹果CMS后台,依次点击左侧菜单系统→参数配置→性能优化,找到「热门内容排序规则」配置项。
默认配置为hits desc,id desc,含义为总点击量倒序排列,点击量相同时新发布内容优先。可直接替换为自定义规则,常用可调用字段如下:
可直接复制以下规则粘贴到配置框,权重系数可根据运营需求自行修改:
weekhits10 + dayhits5 + hits2 desc, addtime desclikes8 + comments10 + hits3 desc, id deschitsif(addtime>unix_timestamp(now())-604800,1.5,1) desc, addtime desc
配置完成后点击「保存」,再依次点击后台左侧缓存管理→清空全部缓存,前台刷新即可看到效果。如果你的后台没有找到该配置项,说明当前使用的模板自行定义了热门排序逻辑,需使用下文的代码修改方案调整。
如果后台配置无法满足需求,可直接修改底层查询代码实现任意排序逻辑。
使用FTP或服务器文件管理器进入站点根目录,根据模块定位对应文件:
order('hits desc')的PHP文件即可打开文件后找到热门内容的查询代码段,默认代码如下:
``` $hotList = Db::name('vod') ->where('status',1) ->order('hits desc, id desc') ->limit(20) ->select(); ```直接修改order括号内的规则即可,比如实现「播放量权重为点击2倍、7天内内容加权1.8倍」的规则,修改后代码如下:
保存修改后的文件,回到后台清空全部缓存,同时删除站点根目录下/runtime/template文件夹内的所有文件,避免模板缓存导致规则不生效。
调整完成后,打开前台热门内容板块,随机抽取3-5条内容,对比对应字段的数值是否符合你设置的排序规则,比如按周点击排序的话,第一条的周点击量应当大于等于第二条的周点击量。
cast(字段名 as signed)转成整型再计算。hot_score数值字段,用定时脚本每天计算所有内容的热度分,排序直接按hot_score desc即可,性能可提升10倍以上。定时脚本可直接添加服务器crontab任务:
```
0 1 /usr/bin/php /你的站点根目录/cron/hot_score.php
```
hot_score.php完整可复制代码如下:
```
where('status',1)->update([
'hot_score' => Db::raw('hits2 + likes5 + plays3')
]);
// 计算文章内容热度分
Db::name('article')->where('status',1)->update([
'hot_score' => Db::raw('hits2 + likes3 + comments5')
]);
echo '热度分更新完成';
?>
```












易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图