文章实时采集(自动提交又可以分为主动推送和sitemap三种链接提交通道)

优采云 发布时间: 2021-10-01 10:07

  文章实时采集(自动提交又可以分为主动推送和sitemap三种链接提交通道)

  很多人为了节省时间,选择了自动提交的方式。但是,如您所知,自动提交可以分为三个链接提交渠道:主动推送(实时)、自动推送和站点地图。

  下面我就给大家分析一下这三种链接提交渠道的优劣,看看哪个更适合我们。

  1、主动推送(实时)

  这是最快的提交方式。技术改造后,您的网站每次更新文章时,都可以通过这种方式主动推送给百度,保证新链接能及时被百度收录接收。但有一个缺点,就是技术发展起来后才能使用。

  2、自动推送

  自动推送是百度搜索资源平台推出的一款提高网站新网页发现速度的工具。安装了自动推送JS代码的网页,无论访问哪个页面,页面URL都会立即自动推送到百度。

  要使用它,需要将JS代码安装在一个全站共享的模板页面中,例如在一个类似于header.htm的header模板页面中,以达到一次安装,整个站点的效果。

  这个方法很好,很适合优采云,安装完成后可以实现自动链接推送功能。但是这样的js代码会拖慢网站,一点也不友好。

  3、站点地图提交

  Sitemap是站点地图的意思,指的是你网站上的网页列表。创建并提交站点地图将帮助百度找到并理解您网站 上的所有网页。

  除了这个便捷的功能,您还可以使用Sitemap提供关于您的其他信息网站,如最后更新日期、Sitemap文件的更新频率等,仅供百度蜘蛛参考。

  百度不保证所提交的站点地图数据的所有网址都会被抓取并编入索引。不过,百度搜索引擎会利用Sitemap中的数据来了解网站的结构等信息,可以帮助百度搜索引擎蜘蛛改进爬取策略,在以后更好的捕获网站的Pick。

  顺便说一下,Sitemap网站 地图可以使用爱站SEO toolkit 和SitemapX 等工具制作。还有一点需要说明的是,百度搜索引擎蜘蛛不会定期来更新Sitemap网站。

  此站点地图与搜索排名无关。不是说更新站点地图越频繁,网站的排名就越高,不是这样的。

  所以,综上所述,最适合我们的链接提交方式是主动推送(实时)。

  接下来教大家修改API提交,实现只要在WordPress后台点击发布文章,就可以主动推送文章(实时)到百度.

  其实方法很简单。我们只需要在funtions.php模板中写入如下代码,发布文章就会自动推送到百度。

  date_default_timezone_set('Asia/Shanghai'); add_action('publish_post', 'publish_bd_submit', 999);

function publish_bd_submit($post_ID){ global $post;

$bd_submit_enabled = true;

if($bd_submit_enabled){

$api ='http://data.zz.baidu.com/urls?appid=155928620287932&token=ami4Q0OsrEjWnKw&type=realtime'; if($post->post_status != "publish"){

$url = get_permalink($post_ID);

$ch = curl_init();

$options = array(

CURLOPT_URL => $api,

CURLOPT_POST => true,

CURLOPT_RETURNTRANSFER => true,

CURLOPT_POSTFIELDS => $url,

CURLOPT_HTTPHEADER => array('Content-Type: text/plain')

);

curl_setopt_array($ch, $options);

$result = curl_exec($ch);

// $result = json_decode($result, true);

$time = time();

$file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录

if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){

$handle = fopen($file,"w");

}else{

$handle = fopen($file,"a");

}

$resultMessage="";

if($result['message']){

$resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result;

}

if($result['success']){

$resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n";

}

fwrite($handle,$resultMessage);

fclose($handle);

}

}

if($bd_submit_enabled){

$api ='http://data.zz.baidu.com/urls?site=https://www.wnag.com.cn&token=RyVub79SqbRkLu0k';

if($post->post_status != "publish"){

$url = get_permalink($post_ID);

$ch = curl_init();

$options = array(

CURLOPT_URL => $api,

CURLOPT_POST => true,

CURLOPT_RETURNTRANSFER => true,

CURLOPT_POSTFIELDS => $url,

CURLOPT_HTTPHEADER => array('Content-Type: text/plain')

);

curl_setopt_array($ch, $options);

$result = curl_exec($ch);

// $result = json_decode($result, true);

$time = time();

$file = dirname(__FILE__).'/by_baiduSubmit.txt';//生成日志文件,与代码所处文件同目录

if(date('Y-m-d',filemtime($file)) != date('Y-m-d')){

$handle = fopen($file,"w");

}else{

$handle = fopen($file,"a");

}

$resultMessage="";

if($result['message']){

$resultMessage= date('Y-m-d G:i:s',$time)."\n提交失败".$result['message'].":\n网址:".$url."\n\n".$result;

}

if($result['success']){

$resultMessage= date('Y-m-d G:i:s',$time)."\n提交成功".":".$url."\n\n";

}

fwrite($handle,$resultMessage);

fclose($handle);

}

}

}

  上面的代码有两个API,改成自己的就好了。注:第一个api是天机收录的接口调用地址。只有受原创保护的站长才有资格使用它。第二个api地址是主动推送(实时)接口调用地址,别搞错了。

  另一个是关于 funtions.php 模板的路径。现在我给你一些提示。目前Kang使用的wordpress主题是Robin,这个funtions.php模板的路径在/wp-content/themes/begin/根目录下,大家可以自己找。

  版权所有:科鼎博客 © WNAG.COM.CN

  文章标题:《wordpress如何实现向百度发布文章主动推送(实时)》

  这篇文章的链接:

  特别声明:除非另有说明,本站所有文章均为原创,本站文章原则上禁止转载。如果真的要转载请联系我们:尊重他人劳动成果,谢谢Over~

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线