免插件实现WordPress主动推送文章到百度

摘要:免插件实现WordPress主动推送文章到百度,推送文章到百度的意义在于通知百度蜘蛛收录你的新文章页面,部分插件可以实现同样的效果,但是是有些插件可能存在漏洞而导致的安全性问题,比如Baidu Sub […]

免插件实现WordPress主动推送文章到百度,推送文章到百度的意义在于通知百度蜘蛛收录你的新文章页面,部分插件可以实现同样的效果,但是是有些插件可能存在漏洞而导致的安全性问题,比如Baidu Submit URLs就出过安全性漏洞。所以转载了一篇免插件实现的文章。

把下面这段代码添加在主题的function.php里,

$WEB_TOKEN = ‘token值’; 这里请换成你的网站的百度主动推送的token值

到https://ziyuan.baidu.com上选择你的站点,点击 链接提交 进入后 自动提交–主动推送(实时)–推送接口

接口调用地址: http://data.zz.baidu.com/urls?site=https://www.meowdata.com&token=xxxxxxxxxx

添加完成后,发布文章成功后,如果主动推送成功就在文章自定义栏目里有一个 Baidusubmit值为1 代表发布成功

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);
}
分享到:

评论0

请先

没有账号? 忘记密码?

社交账号快速登录

社交帐号登录后,请去用户中心修改邮箱