今天为大家带来的这个WordPress集成百度收录API提交的功能,可以帮助我们实现wordpress自动提交百度收录,原理是通过百度普通收录的API推送功能,来实现最为快速的提交方式,文章发布的同时就将文章链接通过此方式自动推送给百度,可以保证新链接及时被百度抓取并且收录。
首先我们需要在百度搜索资源平台添加并验证自己的的网站,首先进入https://ziyuan.baidu.com/,注册并且登录百度搜索资源平台,在用户中心的站点管理中添加并验证自己的网站,这一步很简单不多做阐述。
接下来进入搜索服务,选择普通收录,然后我们就能看到普通收录模块的功能,如下图所示,模糊的值就是我们需要在后面使用到的API token值,如果你登录了百度站长就可以看到你自己的 API 提交的 token 值;
WordPress集成百度收录API提交:wordpress自动提交百度收录
接下来我们可以开始添加代码在你的 WordPress 博客中使用API自动将文章推送到百度的快速收录或者普通收录;将以下代码添加到您自己主题的 functions.php 中,注意需要填写自己在百度站长中 API 提交的 token值;
/* WordPress 百度快速收录 API 提交代码 */
if(!function_exists('Baidu_Submit')){
function Baidu_Submit($post_ID) {
$WEB_TOKEN = '这里请换成你的网站的百度主动推送的token值'; //这里请换成你的网站的百度主动推送的token值
$WEB_DOMAIN = get_option('home');
//已成功推送的文章不再推送
if(get_post_meta($post_ID,'Baidusubmit',true) == 1) return;
$url = get_permalink($post_ID);
$api = 'http://data.zz.baidu.com/urls?site='.$WEB_DOMAIN.'&token='.$WEB_TOKEN;
$request = new WP_Http;
$result = $request->request( $api , array( 'method' => 'POST', 'body' => $url , 'headers' => 'Content-Type: text/plain') );
$result = json_decode($result['body'],true);
//如果推送成功则在文章新增自定义栏目Baidusubmit,值为1
if (array_key_exists('success',$result)) {
add_post_meta($post_ID, 'Baidusubmit', 1, true);
}
}
add_action('publish_post', 'Baidu_Submit', 0);
}
好了,不要忘记保存,这样我们就实现了将百度收录API提交功能集成到了wordpress,上面的代码中加了判断当 Baidusubmit 的值为1则不会在推送这篇文章。