现在的位置: 首页用户体验>正文
关于博客日志的排序问题
2010年07月22日 用户体验 暂无评论 ⁄ 被围观 354 views+

自从ASBLOG从2.1升级到2.5之后,博客首页排序就成了我最头痛的问题。因为AS25是默认以日志生成的ID进行排序,虽然可以自定义发表时间,但不可自定义选择排序条件。而早期的AS21是可以选择以发表时间进行排序的,但不可自定义发表时间。主要是程序人员为了保证发表文章的不可逆性而做的改动。但这样做,必然造成转移旧日志时,总会排在新发表的日志之上。

因为博客时常会被攻击丢失数据,所以我也总会时不时地从别的博客中转移一些备份数据过来。也导致大家在阅读时会看到两篇2010年的文章之间夹杂着一篇07或是09年的旧资料。不但访客在体验上大跌眼镜,我看也这些鸡肋式的旧闻,弃之也觉得可惜。

博客创办自今,终于听说了AS3的改版中增加了更人性化的自定义,但至AS25发布之后,AS3已经遥遥无期。好在AS25的稳定性、可编辑性上还是不错,至少在我体验了其他BLOG程序之后,这样认为。

于是我只能四处求教,海兰国度早期的基本流量都是因为这个问题而来的。

有的说查找程序中“Order By Log_ID Desc”字样,替换成你要的排序字段即可。试过后发现,太多的IF语句嵌套,在搞不清哪条代码和参数分别是代表什么意思的前提下,还是不动为好。

试过修改数据库,把Log_ID字段里的数据重新编号,结果发现这个字段既然是自动编号,只要做了修改,就不可能再改成自动编号。

在决定手动修改后,如此囫囵,持续了两月有余。直至近日gaolee.cn站长的帮忙,也是他的鼓励,让我决定写下这篇内容:

你把AS_LOG复制一份,然后把原来的AS_LOG表里面的记录全部删除

再将复制的AS_LOG里面内容按照Log_time字段排序

最后把排序后的内容复制到空记录的AS_LOG表中

复制的时候不要选择自动编号(Log_ID)的那列就行了

其实用可以用导入功能的,但是懒得写语句,导入的时候选择排序

以上完成。虽然治标不治本,但总比没有好了。

数据库改完后,别忘了还有评论表中记录对应。即AS_Comment表中Comment_FromID字段必须与AS_Log表中Log_ID字段对应。这个部分必须手动修改。

最后效果详见海兰国度站点首页。

给我留言

留言无头像?


无觅相关文章插件,快速提升流量

.