阿里云服务器2核2G3M仅需99元/年,续费同价华纳云香港服务器

WordPress站点如何添加必应站长主动推送功能?

WordPress主题推荐

前面boke112百科跟大家分享了『WordPress纯代码实现发布文章即通过API自动推送给必应』,用新站点boke123导航测试每一篇新发布或者更新重新保存的文章都能够正常提交给必应,必应后台的URL提交数据也显示正常,不过有站长说测试代码没有成功,并提到了代码狗站长分享的『wordpress添加必应站长主动推送功能』测试成功,希望帮忙改进一下代码增加一个修订版本不推送和自定义栏目防止重复推送功能,所以今天就大概调整一下代码,请自行测试哦。

WordPress站点主动推送给必应的代码(原)

将下面代码添加到你的wordpress主题的functions.php文件中,注意修改下面的apikey为你自己的。

//https://www.daimadog.com/8161.html
//wordpress添加必应站长主动推送功能
function dmd_post_to_by_tui()
{
$url='https://ssl.bing.com/webmaster/api.svc/json/SubmitUrlbatch?apikey=这里填你自己的apikey';
global $post;
$plink = get_permalink($post->ID);
if( $plink ){
$data=json_encode(array('siteUrl'=>home_url(),'urlList'=>array($plink)));
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json; charset=utf-8',
'Content-Length: ' . strlen($data)
)
);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
}
}
add_action('publish_post', 'dmd_post_to_by_tui');

WordPress站点主动推送给必应的代码(改进)

将下面代码添加到你的wordpress主题的functions.php文件中,注意修改下面的apikey为你自己的。

//https://www.daimadog.com/8161.html
//wordpress添加必应站长主动推送功能
function dmd_post_to_by_tui()
{
$url='https://ssl.bing.com/webmaster/api.svc/json/SubmitUrlbatch?apikey=这里填你自己的apikey';
global $post;
if ( wp_is_post_revision($post->ID ) || wp_is_post_autosave($post->ID) ) {
return;
}
if(get_post_meta($post->ID,'Bingsubmit',true) == 1) return;
$plink = get_permalink($post->ID);
if( $plink ){
$data=json_encode(array('siteUrl'=>home_url(),'urlList'=>array($plink)));
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json; charset=utf-8',
'Content-Length: ' . strlen($data)
)
);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
add_post_meta($post->ID, 'Bingsubmit', 1, true);
curl_close($ch);
}
}
add_action('publish_post', 'dmd_post_to_by_tui');

理论上应该根据提交后的结果来判断是否添加自定义栏目,如果成功提交就添加一个自定义栏目,以后就不再提交。不过老古觉得只要成功一次后以后基本上都是成功的,加上boke112百科技术有限,所以就简化代码只要执行一遍就自动添加一个Bingsubmit自定义栏目,然后就不再执行第二遍。

本文地址:https://boke112.com/post/9900.html

赞 (1) 打赏
版权声明:本文内容来源于互联网资源,由 boke112百科 整理汇总!发布此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请联系我们,确认后马上更正或删除,谢谢!
wu