<?php
/*
 * 网站地图 XML（动态生成，含首页+栏目+文章+TAG标签）
 */
header('Content-Type: application/xml; charset=utf-8');

$root = __DIR__;
$db = new SQLite3($root . '/data/d777ce190a82629e6fc10b69cfacc6be.db');
$db->busyTimeout(5000);

$site = $db->querySingle("SELECT * FROM ay_site WHERE acode='cn'", true);
$domain = ($site && $site['domain']) ? $site['domain'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '');
// 自动识别HTTPS
$scheme = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https://' : 'http://';
$base = $scheme . $domain;

echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">' . "\n";

// 首页
echo "    <url>\n";
echo "        <loc>".htmlspecialchars($base)."</loc>\n";
echo "        <changefreq>daily</changefreq>\n";
echo "        <priority>1.0</priority>\n";
echo "    </url>\n";

// 栏目
$sorts = array();
$r = $db->query("SELECT * FROM ay_content_sort WHERE status='1' ORDER BY sorting,id");
while ($row = $r->fetchArray(SQLITE3_ASSOC)) {
    $sorts[$row['id']] = $row;
    $url = $base . '/' . $row['filename'] . '/';
    echo "    <url>\n";
    echo "        <loc>".htmlspecialchars($url)."</loc>\n";
    echo "        <lastmod>".date('Y-m-d',strtotime($row['update_time']))."</lastmod>\n";
    echo "        <changefreq>weekly</changefreq>\n";
    echo "        <priority>0.8</priority>\n";
    echo "    </url>\n";
}

// 文章列表
$art = $db->query("SELECT * FROM ay_content WHERE status=1 AND issearch=1 ORDER BY updatetime DESC");
while ($row = $art->fetchArray(SQLITE3_ASSOC)) {
    $scode = $row['scode'];
    $sortInfo = $sorts[$scode];
    if(!$sortInfo) continue;
    $artUrl = $base.'/'.$sortInfo['filename'].'/'.$row['filename'].'.html';
    echo "    <url>\n";
    echo "        <loc>".htmlspecialchars($artUrl)."</loc>\n";
    echo "        <lastmod>".date('Y-m-d',strtotime($row['updatetime']))."</lastmod>\n";
    echo "        <changefreq>monthly</changefreq>\n";
    echo "        <priority>0.6</priority>\n";
    echo "    </url>\n";
}

// ==========【新增 TAG标签 部分】==========
// 查询所有启用的tag，Pboot tag表 ay_tag
$tagRs = $db->query("SELECT * FROM ay_tag WHERE status=1 ORDER BY id DESC");
while ($tagRow = $tagRs->fetchArray(SQLITE3_ASSOC)) {
    // TAG地址格式：/tag/标签别名/
    $tagUrl = $base . '/tag/' . $tagRow['filename'] . '/';
    echo "    <url>\n";
    echo "        <loc>".htmlspecialchars($tagUrl)."</loc>\n";
    echo "        <lastmod>".date('Y-m-d',strtotime($tagRow['updatetime']))."</lastmod>\n";
    echo "        <changefreq>weekly</changefreq>\n";
    echo "        <priority>0.4</priority>\n";
    echo "    </url>\n";
}

// 闭合标签
echo '</urlset>';
