!
也想出现在这里? 联系我们
广告位
当前位置:首页>教程分享>服务器教程>宝塔计划任务提取网站地图(sitemap)链接,进行百度主动推送

宝塔计划任务提取网站地图(sitemap)链接,进行百度主动推送

我之前主动推送网站地图(sitemap.xml)都是利用的推送软件来推送的。网站一多了之后,操作起来很麻烦,要复制每一个网站的 api 链接进行提交,而且有时候会忘记。所以在网上找到了一个方法来进行自动提交。非常好用。

之前写到过,宝塔计划任务执行 PHP 文件的文章。原文:《宝塔 Nginx 面板 PHP 文件计划任务 配置教程》。接下来我们就利用这个方法来做一个定时自动推送。

首先在网站根目录建设一个 PHP 文件(可以放在任何目录,只要在计划任务时候填写正确的路径即可)。我这里将这个 PHP 文件命名为,Baidu_Push.php

代码:

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

给TA打赏
共{{data.count}}人
人已打赏
服务器教程

香港云服务器innodb数据库批量转换表引擎为MyISAM

2021-4-17 18:50:38

服务器教程

服务器意外断电MySQL/Mariadb无法启动日志解决办法

2021-4-17 18:50:40

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 [email protected] 或点击右侧 私信:吉吉国王 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
OneEase