共计 1898 个字符,预计需要花费 5 分钟才能阅读完成。
提醒:本文最后更新于 2019-05-12 14:32,文中所关联的信息可能已发生改变,请知悉!
为了方便广大使用 wordpress 建站的站长朋友及时提交数据,百度站长平台设计和开发了一款 wordpress 插件—Baidu Links Submit 工具,该工具是基于百度站长平台 ping2.0 的链接提交接口。本插件只需您简单的配置下您的 site 和 token 即可使用。确保您的网站以快速的提交方式,以保证新链接可以及时被百度收录。
安装看了下,发现还能显示当日提交限额、已提交数量和剩余数量:
这倒是不错,虽然代码版我也能轻松实现,只要借鉴一下插件的查询函数即可,但是代码版就应该保持代码版的简洁高效才好。
但是,在我看完整个插件的关键代码后,发现依然存在以前那个结构化插件的弊病:修改已发布文章或页面会重复推送到百度!一是会拖慢文章更新提交的速度,二是重复提交很有可能会被百度判断为内容不稳定而放入沙盒,造成收录延迟展示的问题!
不过,有了以前的思路,我很简单的就解决了重复推送的问题:文章首次发布时,会推送到百度,如果推送成功则新增一个名称为 baidusubmit 的自定义栏目。回头再来更新修改该文章时,则先判断是否存在这个自定义栏目,如果存在则不再推送到百度。
这样就保证了每篇文章只会成功推送一次。如果你铁了心想让某篇文章再大改后重新推送到百度,则只需要删除该文章的自定义栏目 baidusubmit 即可:
最后,提供优化版的下载地址:
[wzk_down]https://pan.baidu.com/s/1AW4ljfMPB1mYnu0drSUWPA[/wzk_down]
密码:hbv5
如果你想安装这个插件,那么推荐你使用张戈博客分享的优化版,有益而无害!
安装插件后,记得到插件设置界面填写域名和 token 值【token 值获取地址】。另外,如果之前已经集成了张戈博客的代码版,请记得删除掉,否则首次发布文章会连续推送 2 次!
2015-09-27 更新记录:
首先感谢露兜大神的给力提醒,为了减少垃圾数据的产生,将插件的判断机制改成:
①、文章首次发布时进行推送,如果推送失败则新增自定义栏目 Baidusubmit,值为 false:
// 判断推送结果,如果失败则计入自定义栏目 Baidusubmit,值为 false
if (!$error = $http->error()) {$ret = self::obj_to_array(json_decode($result, true));
if (isset($ret['error'])) {add_post_meta($post_id, 'Baidusubmit', 'false', true);
}
}
// 判断推送结果,如果失败则计入自定义栏目 Baidusubmit,值为 false
if (!$error = $http->error()) {$ret = self::obj_to_array(json_decode($result, true));
if (isset($ret['error'])) {add_post_meta($post_id, 'Baidusubmit', 'false', true);
}
}
Ps:这里设置并判断值是否为 false,主要是为了避免重复推送以前 Baidusubmit 值为 1 的文章。
③、另外,插件获取文章地址的写法存在冗余调用:
$_url = get_permalink(get_post($post_id));
已改成:$_url = get_permalink($post_id);
$_url = get_permalink(get_post($post_id));
已改成:$_url = get_permalink($post_id);