解决Popularity Contest插件与Google Sitemaps Generator 3.0插件的兼容性问题
Written on 九月 28, 2007 – 12:22 下午 | by paopao
在让Popularity Contest插件适用于WordPress 2.3之后,漫步留言说Popularity Contest和Google Sitemaps Generator 3.0这两个插件之间的兼容性有问题,如果同时启用评论会有问题。我本地测试了一下,确实在提交评论的时候会出现错误,错误原因是mysql_query函数使用了不存在的一个数据库用户名。查看popularity-contest.php文件,发现里面使用了mysql_xxx类函数。而Google Sitemaps Generator 3.0里面也使用了mysql_xxx类函数,并且在最后使用了mysql_close($con);语句来关闭了数据库连接,这样就导致了popularity-contest.php无法使用有效的数据库连接。
我的解决办法是把popularity-contest.php里面所有的mysql_xxx类函数都用功能相同的WodrPress提供的wpdb类中的函数来替代。以下是修改好的Popularity Contest插件:
与Google Sitemaps Generator 3.0兼容的Popularity Contest插件
这个问题在Google Sitemaps Generator 2.7.1版本里不会出现,因为2.7.1版本里没有使用mysql_xxx类函数,不知道为什么3.0版本里会使用,而不是使用wpdb类。我个人是认为在插件涉及到WordPress的数据库时最好使用wpdb类,这样一来比较安全,二来也减少了因为WordPress升级而可能带来的不兼容性。
当然,有什么问题还是可以给我留言或者发信给我^_^
Popularity: 64% [?]
Tags: google-sitemaps-generator-3, plugin, popularity-contest, wordpress-2.3

12 Responses to “解决Popularity Contest插件与Google Sitemaps Generator 3.0插件的兼容性问题”
By 漫步 on 九 28, 2007 | Reply | Quote
非常感谢, 试用了一下,不会出错了, good job , thx
By motta on 九 29, 2007 | Reply | Quote
开始在本地没测出来,后来在服务器上发现了这个问题! 原来是和sitemap兼容的问题啊. 非常感谢!! 这回没问题了!
By zhenzhong on 十二 2, 2008 | Reply | Quote
刚刚接触wordpress,先下来试试,谢谢分享~