帝国cms TAG列表页面默认是按信息发布时间排序的,也就是查询数据库时order by:
newstime desc
用户可以通过增加myorder=1的get参数,实现order by:
newstime asc
然而上述newstime是在信息首次发布时录入enewstagsdata表的,后面再修改信息的发布时间,因为这个tag已经存在了,因此enewstagsdata表中的newstime不会同步更新。
当首次发布信息的newstime填写有误时,tag列表页面的信息排序可能就无法成为我们需求的样子,例如D9的新概念英语第一册列表页面,D9期望的是从第1课依次递增排序,但发布时newstime全都填写成一模一样的了,导致列表页课程乱序。
只能通过二次开发ecms的tags功能来实现需求了,将tag列表页面排序规则改为order by:
id asc
具体方法如下:
修改ecms目录/e/tags/index.php文件,将第160行:
$addorder='newstime desc';
改为
$addorder='id asc';
本文由 D9 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Mar 13, 2020 at 01:41 pm