pbootcms模板利用宝塔面板计划任务执行自动推送网址到百度

  • 在站点根目录创建 baidu.php 文件,添加以下代码:
<?php
header('Content-Type:text/html;charset=utf-8');
$xml_url = "https://www.adminbuy.cn/sitemap.xml"; // 修改为你的站点XML地图链接
$baidu_api = 'http://data.zz.baidu.com/urls?site=https://www.adminbuy.cn&token=123456789'; // 修改为你的百度推送接口

$xmldata = file_get_contents($xml_url);
$xmlstring = simplexml_load_string($xmldata, 'SimpleXMLElement', LIBXML_NOCDATA);
$value_array = json_decode(json_encode($xmlstring), true);

$url = [];
foreach ($value_array['url'] as $item) {
    $url[] = $item['loc'];
}

// 百度推送接口一次只支持推送2000条数据,所以超过2000条的话需要分组推送
$url_group = array_chunk($url, 2000);
$count = count($url_group);

for ($i = 0; $i < $count; $i++) {
    $ch = curl_init();
    $options = array(
        CURLOPT_URL => $baidu_api,
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => implode("\n", $url_group[$i]),
        CURLOPT_HTTPHEADER => array('Content-Type:text/plain'),
    );
    curl_setopt_array($ch, $options);
    $result = curl_exec($ch);
    curl_close($ch);
    echo $result;
}
?>
  • 登录宝塔面板,设置计划任务执行 baidu.php 文件。
posted @ 2024-10-30 09:01  黄文Rex  阅读(9)  评论(0)    收藏  举报