成航先森 成航先森

成都航院计算机系一个学生的个人博客

 

建站分享

最新文章

建站分享
当前位置: 首页 » 建站分享 » WordPress百度主动提交插件避免重复提交

WordPress百度主动提交插件避免重复提交

编辑:狂族晨曦 来源:建站分享WordPress技巧 日期:2015-09-27 阅读: 2,535 次 2 条评论 » 百度已收录

最后更新时间:2015-10-10

9月21日,百度推出了新的WordPress插件:Baidu Links Submit 前几天,本站也对此发布了一篇文章:

百度推出新的Wordpress链接提交插件

当时刚看到公告,立马就下载安装了,有什么优缺点都还不知道。现在,经过几天的使用,发现这个插件还是像以前的那个wp-baidusubmit一样,存在严重的重复提交问题。也就是,修改已发布文章或页面会重复推送到百度!一是会拖慢文章更新提交的速度,二是重复提交很有可能会被百度判断为内容不稳定而放入沙盒,造成收录延迟展示的问题!

关于这个问题,通过张戈博客找到了解决办法,下面就为大家介绍方法。

修改代码

① 打开baidu-links-submit-9.23\inc\hooks.class.php ,打开至第114行,在下方插入以下代码:

//已提交过的文章避免重复提交
		if(get_post_meta($post_id,'Baidusubmit',true) == 1) return;

效果如下,115-116行:

修改hooks.class.php -1

另外,大神露兜提出,“get_permalink函数本身就支持post_id来做参数,百度原版的代码何必再get_post一次呢?这样应该好点:

$_url = get_permalink( $post_id );

”,也就是上图中的第117行,也算是对百度自己做的代码提出了优化。

②打开baidu-links-submit-9.23\inc\common.class.php ,打开至第88行,在下方插入以下代码:

	//判断结果,如果成功则计入自定义栏目baidusubmit,值为1
		if (!$error = $http->error()){
			$ret = self::obj_to_array(json_decode($result,true));
			if(!isset($ret['error'])){
			  add_post_meta($post_id,'Baidusubmit',1,true);
			}
		}

效果如下,第85-95行:

修改common.class.php -2

这样就解决了重复推送的问题:文章首次发布时,会推送到百度,如果推送成功则新增一个名称为baidusubmit的自定义栏目。回头再来更新修改该文章时,则先判断是否存在这个自定义栏目,如果存在则不再推送到百度。

如果你铁了心想让某篇文章再大改后重新推送到百度,则只需要删除该文章的自定义栏目baidusubmit即可:

删除baidusubmit -3

好了,这样就OK了,快去试试吧!

标签:
本文参考自:http://zhangge.net/5065.html,由狂族晨曦(capjsj.cn)整理编辑,本文共1036个字。
本文链接地址:https://www.capjsj.cn/wp_bdzdtjcjbmcftj.html , 转载请保留本说明!
已有 2 位"计工"发布了激烈的评论,还有N多人围观笑而不语评论
的头像
欢迎发表评论
取消评论

表情
疑问调皮伤心抠鼻黑线微笑可爱奸笑震惊吓到了撇嘴大兵忍不住笑笑狂骂狂怒噢?鼓掌酷⊙﹏⊙b汗鄙视大哭嘿嘿

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. 的头像

    重复提交应该也没有关系吧

    2015-10-09 22:30 回复
    • 博主的Gravatar 头像

      @云上小悟独立博客: 重复提交导致的问题有两个:一是会拖慢文章更新提交的速度,二是重复提交很有可能会被百度判断为内容不稳定而放入沙盒,造成收录延迟展示的问题。

      2015-10-09 22:34 回复
官方微信
发表评论 返回顶部