中涛营销

主动推送的傻瓜式教程,让网站收录起飞!

2019-04-29293

很多SEO从业者都不太会使用百度站长的主动推送,今天云无限小韩就来为大家带来主动推送代码的傻瓜式教程,让大家的网站收录无忧!

主动推送代码的意义

主动推送代码是把我们的网站url主动提交给百度,可以更方便和快捷的让蜘蛛来抓取我们的网站。主动推送代码有四种方式:curl推送,post推送,php推送和ruby推送。因为现在php环境的网站使用最为普遍,所以今天小韩主要为大家介绍php推送。

主动推送代码的傻瓜式教程

主动推送之php推送

四种提交的链接的方式都是按照每行一条url的格式将urls写入一个文本文件中,小韩习惯性命名此文件为sitemap.txt,此文件需要放在网站根目录。

既然是傻瓜式教程,那么自然不能让大家一条一条的去记录urls,所以下面小韩就来告诉大家如何自动生成sitemap.txt文件

如何自动生成sitemap.txt

有很多软件可以直接生成sitemap.txt和sitemap.xml,但是每次生成和上传都是比较麻烦的。而很多后台都有自动更新sitemap.xml的插件。比如织梦、帝国后台就可以非常方便的实现自动更新sitemap.xml功能。而小韩的自动生成sitemap.txt就是依靠sitemap.xml来实现的。下面请看代码:

//判断txt文件是否存在,存在则删除从新生成
$file = "sitemap.txt";
if (!unlink($file))
{
  ("Error deleting $file");
}
else
{
  ("删除成功 $file");
}
//正则根据xml获取url
$content = file_get_contents('sitemap.xml');
$content1= preg_replace("//","】",$content1);
$content3=preg_replace("/【loc】/",">",$content2);
$content4=str_replace("【/loc】","|<",$content3); $content4='<'.$content4.'>';
preg_replace("//","",$content4);
$body = preg_replace('/<.*>/sU', '', $content4);
$body= str_replace("|","\r\n",$body);
//生成txt文件
$myfile = fopen("sitemap.txt", "a") or die("Unable to open file!");//这个是在根目录生成文件
fwrite($myfile, $body);//写入内容,可以写多次哦,不过没啥意义,因为你拼接好字符串,一次写入就行了
fclose($myfile);//关闭该操作

代码实现的就是根据sitemap.xml文件,来自动生成sitemap.txt文件。下面我们需要的就是做数据提交了,一样请看代码:

//主动提交
$urls = array();
$sitemap=fopen('sitemap.txt','r');
while(!feof($sitemap)){
  $site='';
  $site=fgets($sitemap);
  $urls[]=$site; 
}
fclose($sitemap);
$api = 'http://data.zz.baidu.com/urls?site='.$web.'&token='.$token.'';
$ch = curl_init();
$options =  array(
  CURLOPT_URL => $api,
  CURLOPT_POST => true,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POSTFIELDS => implode("\n", $urls),
  CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
echo $result = curl_exec($ch);

这个代码实现的就是将sitemap.txt文件里的urls主动推送给百度。小韩将此文件合并到了一起做成了一个sitemap.php文件,而我们只要定期更新sitemap.xml,然后手动访问sitemap.php就可以实现主动推送了。在文件中唯一需要修改的只有前两行:你的网站域名和百度站长的token代码。

实现自动访问sitemap.php

看到这里大家是不是感觉非常简单了,小韩告诉大家还有更省事的呢!我们还可以实现自动访问网站的sitemap.php。

在一开始,小韩是准备写一个windows服务来实现定期访问网站的sitemap.php,后来灵机一动,想到可以通过服务器的计划任务来实现,这样是不是更简单呢?一般来说我们根据网站内容更新频率来进行设置,小韩一般设置是每天访问一次。当然建议大家尽量避免在网站访问高峰期去进行主动推送呢!

主动推送傻瓜式教程代码

在这里小韩附上sitemap.php的源代码下载,大家只需要修改前两行即可。需要注意的是,主动推送单次推送urls不能超过1000条,关于这些细节设置大家不懂的可以随时咨询小韩,如果大家有更好的方式欢迎进群一起讨论,加群链接在文章末尾喔

2019,SEO行业交流本文为云无限小韩原创文章,欢迎转载请注明出处:https://www.zhongtao.net/neaymy/zeAZNj.html