使用代码实现WordPress实现发布文章自动api推送给必应bing

简介

我们在写完文章后,想把写的最新的文章即时的推送给必应站长平台,这就需要用到必应的API来实现自动推送

了,有些站长喜欢用插件的方式,但我觉得如果代码可以实现的尽量不要用插件,太多的插件会拖慢网站访问的速度,

除了手动提交URL给必应,那我这就介绍一下如何用代码的方式实现发布文章自动推送给bing

 

教程

登录https://www.bing.com/webmasters   >> 点击网页右上角的齿轮图标  >> API访问管理凭据

再点API 密钥  >>  创建  >> 复制秘钥 ,我这里是已经创建完成的,可以直接查看秘钥

通过api提交给必应,必应的官方站长平台提供了json和xml两种提交方式

我们想要实现也很简单,用如下代码即可实现,将下列代码添加到当前主题functions.php文件中保存

把下面siteUrl":"你的网站域名"(填入你网站的地址),apikey=你申请的API-KEY(这里填入你申请的API-KEY秘钥)

//API推送给必应
function bd_bing_api( $post_ID, $post, $update ) {
if ( wp_is_post_revision( $post_ID ) || wp_is_post_autosave( $post_ID ) ) {
return;
}
if(get_post_meta($post_ID,'Bingsubmit',true) == 1) return;
if ( 'publish' === $post->post_status ) {
if ( 'post' === $post->post_type ) {
$urls = '{ "siteUrl":"你的网站域名","url":"'.get_permalink($post_ID).'" }';
$api = 'https://ssl.bing.com/webmaster/api.svc/json/SubmitUrl?apikey=你申请的API-KEY';
$httpheard = array('Content-Type: application/json', 'charset=utf-8');
$ch = curl_init();
$options = array(
CURLOPT_URL => $api,
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => $urls,
CURLOPT_HTTPHEADER => $httpheard,
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
add_post_meta($post_ID, 'Bingsubmit', 1, true);
curl_close($ch);
}
}
}
add_action( 'save_post', 'bd_bing_api', 10, 3 );

如果不想在functions文件中添加,还可以考虑使用snippets插件来管理代码,这样即使你更换主题,也不影响代

码生效,更便于管理代码片段

 

最终效果如下,发布后,必应站长后台立刻可以看见url列表提交的

THE END