WordPress代码实现新文章发布自动提交百度收录
分类:WordPress教程 | 作者:XiaoBai 发表于 2020年12月29日 阅读 815 次
WordPress主题自带 ping 服务可以在发表新文章时,自动通知站点更新服务。除去这种方式通知百度进行抓取,还可以通过百度提供的链接提交API进行推送。
百度的链接主动提交能使用API、JS、sitemap等方式。wordpress只需要在当前使用主题的 functions.php 添加代码即可实现这个功能。
详情见:https://ziyuan.baidu.com/linksubmit/index
原理很简单,当新文章发布时,通过CURL访问百度提交链接的API即可。主要用到了wordpress的publish_post钩子
上代码:注意:token改为自己的
function push_to_baidu($ID) { //获得文章的链接 $permalink = get_permalink($ID); $api = 'http://data.zz.baidu.com/urls?site=www.网址.com&token=百度链接提交API的TOKEN'; $ch = curl_init(); $options = array( CURLOPT_URL => $api, CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => $permalink, CURLOPT_HTTPHEADER => array('Content-Type: text/plain'), ); curl_setopt_array($ch, $options); $result = curl_exec($ch); //下面这一行是写日记到正题目录,可选 //file_put_contents(dirname(__FILE__)."/pushLog.txt",$result."n",FILE_APPEND); } add_action('publish_post', 'push_to_baidu');
以上代码添加到主题的functions.php,每次发布、更新文章时就可主动提交文章的链接给百度,通知百度的蜘蛛前来抓取。