最近comment 爬虫比较猖獗,我不得不把评论改成了手工认证方式。今天下午终于腾出时间,参考了这篇文档,把评论模块加上了验证码功能。祝大家国庆快乐。
分类: wordpress
wordpress 1.5.1.3关于content type的一个bug
症状:IE等浏览器,在访问wordpress 1.5.1.3架设的站点时,显示下载本页面文件的窗口,而不是正常显示页面内容。
分析:用Firefox查看Response headers,发现Content-type为空。
原因:不详,疑为某处代码问题。
解决方案:在模板的head.php内加入:
<?php header(“Content-Type: text/html; charset=”.bloginfo(‘charset’));?>
对弹出评论页不能正确重定向的一点修改
目前本站正在使用的wordpress 1.5 beta版本,在弹出评论页面提交后,会出现一个小问题:页面不会重定向回评论页面,而是返回了对应的文章,这显然不是我们需要的结果。查看代码我们可以发现:弹出评论页面是模板的一部分,即comments-popup.php,它忠实的将评论内容提交给wordpress根目录下的wp-comments-post.php,显然问题发生在后者身上。打开源代码发现这么一段:
$location = get_permalink($comment_post_ID);
header(“Location: $location”);
很明显,设计者没有考虑用户在非文章页面提交评论的情况,而且这个冲突发生在wordpress提供的默认模板上了,算是一个遗憾的瑕疵,也许1.5正式版已经更正了吧。不过不要紧,我们将$location一行换为
$location = $_SERVER[“HTTP_REFERER”];
即可,$location总会取回提交数据到该页的来路页面,实现代码的通用性。
站点更新通告兼发布myadsense for wordpress&Plog插件
花费了两天时间,将本站转移到了wordpress平台下。这个blog系统具有更加良好的功能设计,包括多层分类、完美的面向搜索引擎的url优化,同时拥有丰富的插件和模板,以及对应管理模块。原bo-blog平台的大部分文章随后将陆续拷贝过来。
很荣幸有朋友对我前些天做的”myadsense”小程序产生了兴趣。这个程序的主要功能是:在banner位置随机展示几个友情链接,及其简要介绍和图片;特别地,当用户从你的友情站点链入你的站点时,该友情站点将显示在banner的最前处;在页面一侧将所有友情链接随机排列,并附简要介绍。
我借着改版的时机,将以上功能整合为一个wordpress插件,点击这里下载。插件里有两个函数,分别显示banner和links。安装方法很简单:将myadsense.php放入wp-content/plugins目录,修改函数前面的参数,并激活插件;在主页模板内放入my_adsense()和my_link()函数;书写myadsense的数据文件,一个链接占一行,格式如下,“站点名称|站点域名|站点URL|站点简介[|站点logo的URL]”;适当修改css文件,建议将两个函数各放入一个div,并定义div及其中的img、.url等样式。注意:如果您的站点是GB2312编码,而非UTF-8,或者您的空间不支持iconv,则需将包含iconv在内的两行代码删除。
另外顺手制作了For Plog的myadsense插件,请点击这里下载。安装方法类似wordpress插件,修改PluginMyAdsense()构造函数里的参数,并建立自己的数据文件,在模板文件内加上{$myadsense->AdsenseBanner()}和{$myadsense->MyLink()}即可展示两种风格的友情链接。
其实这两插件的功能可以进一步扩充,比如通过读取blogrolling的站点列表和flickr的图片信息来展示链接,通过设置不同的权重来改变显示频率,等等。
欢迎任意分发、修改,请保留版权信息。