小涵涵的童年生活之神墨特色幼儿园篇
在上面这个主题里有提到,通过核对版块信息主题数与主题列表页实际主题数,再结合数据表发现了没能在主题列表页显示的同名主题。
“通过替换tid值可以访问到对应主题是“小涵涵的童年生活之神墨特色幼儿园篇 ”,可为什么在列表页就不显示呢?查看主题相关表pw_threads和pw_tmsgs,以及这个回帖表pw_posts,没有看出异常,为什么就不显示呢?实在是想不通。”(引用内容)
其实早就注意过这种现象,主题列表页实际主题数与版块信息里的主题数对不上,在有的版块里会有“消失”在主题列表页的主题,一直都不知道是怎么回事。
今晚因整理月份文档需要,查看最后一个版块主题,建站历程◇调试升级。那里本来是有几个有关地摊网的主题的,却在主题列表页没有找到,反复查看都没有,最后通过搜索才找到。于是查看数据表,看这几个主题跟正常的普通主题到底有什么不同。经过一番查看,真的找到一些不同,还有规律。
主题数据表pw_threads,specialsort字段的值都是101,普通主题为0。字段名从字面上看就是特殊排序(未必准确),不知道这个值101是怎么来的。通过在论坛文件中搜索“specialsort”,结果有3,40个文件中包含这个词,最有可能的是和孔明灯有关,然而,论坛从来没有开启过孔明灯,所以又不对。不知道到底和哪里有关?说到规律,这些主题都是置顶帖(topped字段值为1,版块置顶)。本来是置顶帖,为什么后来就不是了呢?为什么就“消失”在列表页了呢?最有可能的原因就是这个specialsort字段值的改变造成的,原来应该是什么不知道,可后来怎么就变成了101呢?
把specialsort的值改为0,在后台清空主题列表页和站点缓存,再刷新前台页面,终于可以在列表页看到了。然而,虽然在列表页却不是置顶帖(显示在下面的普通主题列表里,而且前面有置顶帖的标志),回复一个帖子后才会成为置顶帖。
究竟是什么原因导致的specialsort的值发生变化,又为什么会变成101,暂时无法查明。
在修改数据表前,特意备份了论坛数据,时间是下午4点12分。在编辑主帖内容前恢复数据到了本地测试子论坛,查询结果为:
“显示行 0 - 29 (42 总计, 查询花费 0.0020 秒)”(引用内容)“SELECT * FROM `pw_threads` WHERE `specialsort` >0 LIMIT 0 , 30”(引用内容)