写点什么好呢?
还是不写了吧

wordpress插件之柳城百度地图插件问题

我的博客安装了这个插件生成xml格式的地图发现里面文章的<lastmod>也就是最后修改时间跟我真实的时间相差8个小时,这个比较纳闷了。相信很多人都用的wordpress的百度地图插件,而且wp的百度地图插件里面最好用的莫过于柳城的“Baidu Sitemap Generator”插件,这个插件是国内的一个叫郑柳城的人写的,插件很好用,至于网站为什么要安装百度地图插件,自己去琢磨吧。我来说说我使用了这个插件的问题吧。

我之前写过一个叫“wordpress的UTC时间与本地时间相差8个小时解决方法”,我已经按照我写的方法把wordpress的时间修改了。但是用了这个插件发现xml格式里的文章<lastmod>时间跟我的真实的时间相差8个小时,而我在编辑文章的页面看到我的文章的最后修改时间是正确的,于是我就找了这个插件的作者,加QQ没有反应我就在他的博客进行了留言,如图

柳城博客留言 柳城博客留言

作者回复是下次更新时检查检查,我等了一周左右还是没有更新,于是我准备自己研究研究,我找到这个插件的源码,打开发现插件在生成文章的最后修改时间时调用的是post_date_gmt,然后我打开mqsql数据库找到这个发现这个时间跟我时间确实相差8个小时,这个post_date_gmt 我觉得应该是utc的时间跟我们的本地时间相差8个小时,在数据库中还有个post_date这个是本地时间,只要我们把插件文章最后需改日期的调用换成post_date 这个就可以了,想到这我马上去修改了一下源码,当然这里还涉及到一些细节我就不细讲了,总之就插件生成xml的文件在生成文件的最后修改时间时调用的post_date_gmt这个有问题只要调用post_date 这个就可以了。

那么我把需要修改的代码贴出来大家参考一下吧。

1.我们需要修改的就是插件的baidu_sitemap.php 这个文件(具体的路径是:wp-content/plugins/baidu-sitemap-generator/),打开这个文件找到 $sql_mini = "select ID 在这段语句中添加post_modified,post_date 这个2个单词,添加完的效果就是$sql_mini = "select ID,post_modified,post_modified_gmt,post_date_gmt,post_date,post_type FROM $wpdb->posts,

2,还是在这个文件中找到$priority = '0.6' 在这个代码的上面2行处有个  if($post->post_modified_gmt == '0000-00-00 00:00:00'){ $post_date_gmt = $post->post_date_gmt; } else { $post_date_gmt = $post->post_modified_gmt; }这个代码,然后我们把它修改成为if($post->post_modified_gmt == '0000-00-00 00:00:00'){ $post_date_gmt = $post->post_date; } else { $post_date_gmt = $post->post_modified; }   然后保存就可以了。只要修改$priority = '0.6'的这段代码就可以,其它的处的这段代码不要修改否则会造成其它时间的问题。

这样你在手动生成地图可以看到文章的最后修改时间就是真实的时间了。

注意:大家在发现这个问题时首先看一下你的wordpress的时间是否正确,这个可以参考我写的wordpress的UTC时间与本地时间相差8个小时解决方法 这个文章。

如果大家自己修改代码有问题的话,可以下载我修改好的文件,下载下面的文件解压出来以后,用ftp登录以后打开你的网站根目录直接上传覆盖就可以了。

文件下载连接:wp百度地图插件修改文件

压缩包的解压密码是:www.liangwei.cc


本文作者:梁伟
本文链接:https://www.liangwei.cc/website_tech/wordpress_baidu_di_tu_cha_jian_wen_ti.html
版权声明:本文为原创文章未经允许不得转载
当前页面:梁伟的无聊日志 » 网站建设 » wordpress插件之柳城百度地图插件问题

评论 3

  • 您的昵称:无法获取您的昵称,请先登录或者在评论框下方填写昵称和邮箱
  • 请输入8+10的计算结果:

    1. 脑精网

      正在考虑网站用一个地图插件,百度官方的还有这柳城的,另外有个Google XML Sitemaps,没能区分出哪个好一些,还在纠结中

      脑精网评论于2015-05-07 14:10:26     回复
      • 梁伟

        百度有地图插件?这个不了解,我一直用柳城的,还不错,google这个没用过,其实用哪个都可以,就看你用那个方便,其实最重要的是网站内容,这个只是辅助

        梁伟作者回复评论于2015-05-08 13:48:28     回复
    2. wordpress的UTC时间与本地时间相差8小时 | 劲草电脑技术吧

      [...] 如果你安装的是柳城的“Baidu Sitemap Generator”这个插件,如果发现生成xml格式的文件里面文章的最后修改时间与本地时间相差8个小时,那么请按照我的另一个“wordpress插件之劲草百度地图插件问题” 的博文去修改插件的代码就可以了。 [...]

      wordpress的UTC时间与本地时间相差8小时 | 劲草电脑技术吧评论于2014-05-27 08:46:50     回复