\

D-haha 的情侣博客

D-haha's Feeling (原创情侣主题)

Search: 搞了个 Z-blog 插件 - 想法和经历

搜索
.clear

博文分类

  • 正在载入数据中...

最近发表

  • 正在载入数据中...

热门文章

  • 正在载入数据中...

随机文章

  • 正在载入数据中...

搞了个 Z-blog 插件 - 想法和经历

可视编辑 UBB编辑

D-haha 的情侣博客 » 网站日志 » 搞了个 Z-blog 插件 - 想法和经历

我一向不喜欢搞这种东东的, 因为我害怕经历其过程中废寑忘食的苦难. 所以站点地图和模板升级一拖再拖却仍旧没有开始. 这一切散慢的工作安排中却有一个东西抢了先儿, 就是这个插件 - 黑词自动更新系统.

造成这种情况的原因有两个: 一是最近的Spam实在所我惹火了, 手动删了一些后觉得实在没面子, 我怎么能沦落到这种地步? 但无论装那个防SPAM插件都觉得它的黑词设置实在麻烦. 于是想开发一个基于插件的插件来解决这个问题. 二是看了Zx.MYS修改的一些代码, 突然想再拿"Msxml2.ServerXMLHTTP写些代码", 有了一点点创作冲动.

昨天早上起来, 天儿很好, 思维很清楚, 于是开始考虑这个想法的一些细节, 同时在论坛上发了个贴子问问有没有其它人想过这些. 结果到了九点多我才意识到这么早不会有人起来. 而所有的细节却基本都已想清楚了. 这才摆脱了偷懒情结, 也不管有没有别人在做了. 着手写吧.

Z-blog的插件接口还是很方便的. 而这个插件的工作原理也简单, 加上细节也清楚, 到12点多基本完成了.

其工作流程大致就是这样的:

内核部分:

  1. 要有服务端数据, 不然这个插件就没意义了. 服务端数据我采用了XML格式, 这样可以比较灵活的控制类别.
  2. 要能把数据保存到已有插件的黑词列表中. Z-blog提供了很好的接口, 但找到这个接口并灵活使用还是费了些周折.
  3. 制作数据接收代码, 这部分代码大部分是从我的网站里移植过来的, 因为我用的XML格式要比RSS简单得多, 这个过程就是作减法.
  4. 把代码接入插件已有的部分, 这才发现我网站中很多变量都未声明, 加上还要改变所有变量的名称以避免冲突, 这带来了些麻烦.
  5. 选择XML数据中的分类的功能, 我是以检查关键词的办法解决的. 而不是预想的设置复选表单, 这省了很大力气.
  6. 把先择的数据合并, 利用第二步完成的代码把这些数据保存.


细节设置:

  1. 怎样知道服务器是否开放? 我采用JS调用的方式, 这样可以在检查更新前提供一些服务器信息. 同时也可以根据是否有这些信息来判断服务器是否开放或服务器地址填写的是否正确.
  2. 怎样知道服务器有更新?我的设置是在每次更新时把数据大小的值保存下来, 在下次更新时把新得到的数据大小和这个值比对. 另外,还可以通过服务器信息获知服务器在哪天更新过.
  3. 如果服务器连不上怎么办? 这时最下方确认表单中的列表将会从本地调用, 以避免误操作.
  4. 在论坛里看贴子, 有人提议加大黑词辑框, 觉得这个想法挺实用, 于是加上了.


最后完成了修改文字信息和完成说明文档.

不过也可笑, 插件都写完了还没有想名字, 后来只好老老实实的命名成"BWOL", 也就是 "BlockWordsOnLine" 的缩写. 虽然很不好看.但也顾不了这么多了. 如果晚用一天就会多被Spam骚扰一天. 先用上才是正道.

没完成的部分也不止是名字, 还有服务器端的在线帮助, Spam提交等. 甚至还没来得及想. 现在想到的, 也仅是服务器端的数据标准而已.

不过这些部分可以慢慢来, 在未来遥远的计划里, 用户还可以自定义一些特有的黑词来和服务器数据相互辅助. 并可把自定义的东西通过这个插件共享出来.

« 别碰这些词汇, 它们是危险的.去除播放"RM/RMVB"时不停弹出的网页 - Realfilter »

.clear

Tags:Z-Blog 插件  

分类:网站日志 评论:5 浏览:
我要添加新评论
点击这里获取该日志的TrackBack引用地址
相关文章:
    正在载入数据中...
    • 2007-3-12 19:04:23 [Report Spam]  
      你太帅了,我正想写呢,可是没有服务器……
      不过,40并发链接,似乎有点少(相对全国人口来说……Hehe
      Spam提交我认为可以在用户删除评论时让用户填几个,如果有超过3个人提交即认定为SPAM
      Zx.MYS 于 2007-3-12 19:04:23 回复
      可以考虑修改一下TOTORO,加一个“这些留言是SPAM,删除留言并提交到服务器”按钮,然后自动把留言中的URL和留言者主页URL纳入“疑似SPAM”数据库。
    • GravatarZx.MYS
    • 2007-3-12 21:09:27 [Report Spam]  
      可以考虑修改一下TOTORO,加一个“这些留言是SPAM,删除留言并提交到服务器”按钮,然后自动把留言中的URL和留言者主页URL纳入“疑似SPAM”数据库。
      haphic 于 2007-3-12 21:09:27 回复
      这要依赖于服务器端程序配套提供更多的功能. 但现在服务器端程序还是"0".
      这条路是很漫长的. 还得多想一想.
      如果修改TOTORO, 那又说到我曾说过的问题了. 每个人的构想都不同. 所以我不大爱改别人的东东. 这个插件也是放弃了很多想法后最终做成这种"完全独立"形式的.
      关于数据提交的形式, 我就想到了至少三种设计, 让我再多想想, 我的想法从来都很慢的, 我总觉得想的慢才能做得快.
      不过现在更流行的形式是, 客户端只提供最基本的功能, 复杂的操作都转移到服务端进行. 好处是可以节省资源, 提高效率, 方便在不惊动用户的情况下进行升级和改进.
      在有限的计划里我还是想再完善一下客户端插件.增加自定义列表给用户自主选择, 以做为服务器数据的补充. 但这一列表的设定形式还在考虑中...
    • GravatarZx.MYS
    Gravatar

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
    .clear
    .clear

    Copyright 2006-2008 haphic's blog. Some Rights Reserved.

    Powered By Z-Blog 1.8 Arwen Build 81206 Designed by luheou & Made by Sunny(haphic) [Top]