从数据库角度,看Z-Blog2.0新版的变化

王朝学院·作者佚名  2016-08-22
窄屏简体版  字體: 小  |  中  |  大  |  超大  

应用中心写烦了,就写这么一篇文章来休息一下。

首先,先看Z-Blog 2.0的数据表。相比1.8,只增加了blog_Config和blog_Function。前者保存包括系统配置在内的一切配置,后者用于对侧栏进行管理。

打开blog_Article表(即文章表)

可以看到,相比1.8,它多出了“YEA”“NAY”“RATTING”“TEMPLATE”“FULLURL”“ISANONYMOUS”“META”

Yea、Nay、Ratting三个列的初衷是存储文章的评分的三个列。这三个列系统没有使用到。很多人都知道Z-Blog 1.8有一个插件“用心打分”,它有自带一个数据库。现在,Z-Blog2.0直接在数据库里加入了这三个列,插件可以任意调用了。

Template列是用于存储模板的。在后台的显示,就是这个:

这个功能的意义,我想各位都知道,也就不用说了。

IsAnonymous这个列,在系统里也没有用到。这个列的初衷是什么我也不知道,这是一个废列。。

Meta这个列基本每个表都有,在后面解释。

再看blog_Category:

同样的,多了一些新的东西。与上面相比,它有一个新的列——ParentID。

它的用途,就是指定二级分类的父分类。

接着,打开[blog_Comment]

这里有三个废列。。分别是“Reply”“LastReplyip”“LastReplyTime”。。“Yea”“Nay”“Ratting”的用途一样。。不过貌似RATTING在这里没什么用吧?

Z-Blog 1.8的回复评论广受诟病。它是通过UBB标签[REPLY=XXXXX]实现的,相当于你每回复一次评论就编辑了一次原评论。如果有SPAM,又难找又难清理。

在2.0,你对评论进行回复,就相当于发表一条评论的子评论。这样,前台用户体验更好,评论管理更方便。

IsCheck是专门为反SPAM插件量身定做的列。如果它的值为TRUE(或1),则后台评论管理和前台均不显示该评论,相当于评论进入了审核列表,等待用户的审核。相比以前的TOTORO插件用负的LOG_ID作为待审核的依据,isCheck列省去了插件在调用过程中还要手动POST+RESPONSE.END的麻烦,直接设置它为TRUE即可。

blog_Config只有两个列,一个用于保存插件名,一个用于保存具体配置项和配置值。

配置值的格式如下:

中间有几个CHR(1)和CHR(2)作为分隔符,全部的内容先ESCAPE一遍再存入数据库,保证了配置项的原汁原味。

最大的改动该blog_Counter莫属了。在1.8中,它是一个废表。2.0中,它的功能进行了强化,也有了一个类用于操作该表。

这个表里的内容不再赘述。它有什么意义呢?

开启了伪静态时,它可以为你记录蜘蛛行踪而不必去翻IIS日志。

某插件出现问题,它可以为你忠实记录下错误发生时的浏览器环境,也可以写入出错原因。

系统运行正常,但需要知道某些插件是否正常工作,没关系,它可以为你胜任。

为了保证效率,Z-Blog2.0系统内未使用该表,但是有现成的类可以调用。

这个表,是我们的blog_Function,侧栏管理的存放表。

1.8制作侧边栏,是众所周知的麻烦。于是,这个表配合“侧栏管理”应运而生

你还在模板里直接修改代码?你OUT了!有了它,可以直接在后台拖拖拉拉开开关关然后文件重建!

这个表,彻彻底底解放了模板,解放了制作者,也解放了使用者。

keyWord表是历史(1.6版本)遗留表,不管他。

trackback表也是历史(1.8版本)遗留表。

这个表,是BLOG_MEMBER表,用户表。

这个表,除去公共部分修改以外,还有一个“mem_Guid”列。

干啥用的?

1.8的密码大家都知道,直接用md5(密码)写入COOKIE,一个COOKIE能通行一堆弱密码站的后台。

2.0,就加了一个GUID。

这个GUID,让Z-BLOG的密码安全性大大增强。假设二十个站点密码全部是ADMIN888。过去,只需要一个密码的MD5值,这20个站点的后台就一览无余。现在,绝对不能直接通过密码的MD5值登录,你还必须知道GUID值。一个帐号一个GUID,这样可以有效防止1.8版本直接通过MD5+COOKIE绕过验证码的穷举破解。

其他的几个表也只是加了公共列。

看到这里,可能很多人还不明白这个META是干什么用的。当初我也不知道,还以为是存储META头的。后来才发现,这是一个强大的列。

用过YT.CMS的想必都知道它的字段功能。Z-Blog 2.0自带的CustomMeta的功能很多人也领会过。

没错,这个列就相当于字段的存储位置。它可以实现不修改数据库结构就能调用其他数据的功能。

这个列,对于CMS类的博客是非常有用的一个列。对于普通博客,它也有它的用处(以下均为可实现功能,不代表系统有内置):

保存发微博时返回的微博ID,之后若有评论直接从这个列里得到微博ID并以评论的方式同步到微博。

保存阅读该文章的访客的心情,如“愤怒”“开心”“无聊”等。

存某个评论者的信息,如使用Chrome访问、来自中国,不需要再用UA和IP进行查找,相当于一个缓存。

保存某个用户的个人简介,对于团队博客尤其有用

保存某个分类的附加信息,打开该分类文章时可自动显示。

…

FULLURL列呢,可以储存一个完整地址。它的作用是在不修改系统文件的情况下,任意修改某篇文章页面分类TAG作者的地址,并且不需要再去挂一些完全没必要的接口,对于静态插件和伪静态插件来说是再好不过的一个列了。

总的来说,Z-Blog 2.0的数据表变化不大,但是就这一点变化,却可以实现强大的功能。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航