Z-Blog本身并没有评论投票功能,并且数据库也没有相应字段,我花了几天时间调试了一个评论投票插件,不过在使用过程中需要修改Z-Blog的源码、数据库和模版。
先要修改Z-Blog的评论表,在里面增加comm_digg和comm_bury两个数字字段,默认数值是0,然后同SQL语句将这两个字段的数值全部清0,数据库的修改完毕。
之后修改源代码c_system_lib.asp,修改Export_CMTandTB函数,增加comm_digg和comm_bury的调用,修改TComment类,增加两个变量Public Digg和Public Bury,修改LoadInfoByID、LoadInfoByArray和MakeTemplate函数,增加对新增字段的支持。
修改完源代码之后,修改b_article_comment.html模版,在模版的适当位置加入以下内容:
<span id="note<#article/comment/id#>"></span><a href="javascript:commDig(<#article/comment/id#>);">支持</a>(<span id="sdig<#article/comment/id#>"><#article/comment/digg#></span>)<a href="javascript:commDown(<#article/comment/id#>);">反对</a>(<span id="sdown<#article/comment/id#>"><#article/comment/bury#></span>)
之后,修改即可完成,最终显示效果可以参见我博客的评论内容部分。
我现在在考虑,对于博客评论是否按照投票数目进行重新排序显示(按照“支持”-“反对”的结果进行排序),如果重新排序的话,对于用户的使用体验是否会提高,或者下降,请大家反馈一下。
更新:根据读者反馈,目前评论功能已经增加了重新排序的功能,按照“支持”-“反对”的结果进行排序,“支持”的越多,评论名次越靠前,“反对”的越多,评论名次越靠后。修改方法,也是修改源代码c_system_lib.asp,修改一下SQL语句,增加ORDER BY ([comm_bury]-[comm_digg]),[comm_ID],[comm_PostTime]即可。
这样修改之后,“沙发党”应该就不会存在了。用户也能够最先看到最有价值的评论,提高用户的浏览体验。
补充:关于有人需要Z-Blog插件问题,该功能因为修改了Z-Blog数据库和源码,很难以插件的方式提供,如有可能,等Z-Blog的下一个版本吧。
来源:月光博客