WordPress 百度快速普通收录 API 自动提交代码及教程

百度站长的资源提交分为快速收入和普通收录,资源的提交方式有:API 提交、Sitemap 提交、手动提交三种方式。那么如何选择提交方式百度也给出了了说明。多种提交方式互不冲突,部署了 API 提交方式,还可以使用 Sitemap 方式提交两者互不影响。

API推送:最为快速的提交方式,建议您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
Sitemap:您可以定期将网站链接放到Sitemap中,然后将Sitemap提交给百度。百度会周期性的抓取检查您提交的Sitemap,对其中的链接进行处理,但收录速度慢于API推送。
手动提交:如果您不想通过程序提交,那么可以采用此种方式,手动将链接提交给百度。

0x01 API token

登录百度站长 → 资源提交 → 普通收录,参照下面的图片,模糊的值是我的API token值,如果你登录了百度站长就可以看到你自己的 API 提交的 token 值;

0x02 添加代码

以上了解了百度站长资源的提交方式后,开始添加代码在你的 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);
	}

在更换域名后你可能需要重新推送文章,上面的代码中加了判断当 Baidusubmit 的值为1则不会在推送这篇文章,下面的 SQL 语句批量将 Baidusubmit 的值修改为 0 当编辑或者更新文章后会再次推送;以下代码设计到数据库执行前需要先备份;

UPDATE `wp_postmeta` SET `meta_value`='0' WHERE `meta_key` = 'Baidusubmit'  # 批量设置文章状态为未推送;

0x03 数据反馈

以下是添加了 API 提交代码后,发布新文章后自动提交的数据反馈,添加代码后如果有数据反馈则说明提交成功;

相关推荐
python ERROR: Command errored out with exit status 1:
Windows Server 2016 搭建 SMB 共享文件
Windows Server 2019 域环境搭建 SMB 共享文件服务
Parallels Desktop 15.1.3