自定义下述代码为任意文件名的php文件,配置好您的api,可实现自动读取网站的sitemap.xml地图文件,并像百度默认推送100条链接。

可配合宝塔计划任务进行定时定量推送,各位自行琢磨!

<?php 
$token='http://data.zz.baidu.com/urls?site=www.xxx&token=xxxxx';//去百度获取
$xml_string = file_get_contents("http://www.xxx.cn/sitemap.xml");//网站xml地图
$xml_string = trim($xml_string);
$xml_object = simplexml_load_string($xml_string);
$array=[];
$i=0;
foreach ($xml_object->url as $key=>$value){
    //默认一次提交100,适合用于泛目录的xml地图(因为刷新一次就随机变),普通的网站的会出现重复提交,慎用,非要用就把$i数值改成2000 百度不允许超过2000
    if($i===100){
        break;
    }
    $array['aa']= get_object_vars($value);
    $url.=$array['aa']['loc']."\n";
    $i++;
}
$urls=explode("\n",$url);
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $token,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
?>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.

 

作者:Alone°李道长ご