解决Popularity Contest插件与Google Sitemaps Generator 3.0插件的兼容性问题
星期五, 九月 28th, 2007在让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升级而可能带来的不兼容性。 当然,有什么问题还是可以给我留言或者发信给我^_^
