"; ?> '/', 'priority' => '1.0', 'changefreq' => 'daily'], ['url' => '/tentang-kami', 'priority' => '0.8', 'changefreq' => 'monthly'], ['url' => '/hubungi-kami', 'priority' => '0.8', 'changefreq' => 'monthly'], ['url' => '/bantuan', 'priority' => '0.8', 'changefreq' => 'monthly'], ['url' => '/info-pengiriman', 'priority' => '0.7', 'changefreq' => 'monthly'], ['url' => '/kebijakan-privasi', 'priority' => '0.5', 'changefreq' => 'yearly'], ['url' => '/syarat-ketentuan', 'priority' => '0.5', 'changefreq' => 'yearly'], ['url' => '/products.php', 'priority' => '0.9', 'changefreq' => 'daily'], ['url' => '/produk-fisik', 'priority' => '0.8', 'changefreq' => 'daily'], ['url' => '/produk-digital', 'priority' => '0.8', 'changefreq' => 'daily'], ['url' => '/login.php', 'priority' => '0.3', 'changefreq' => 'yearly'], ['url' => '/register.php', 'priority' => '0.3', 'changefreq' => 'yearly'], ['url' => '/cart.php', 'priority' => '0.6', 'changefreq' => 'daily'], ['url' => '/checkout.php', 'priority' => '0.5', 'changefreq' => 'monthly'], ['url' => '/panentas', 'priority' => '0.8', 'changefreq' => 'monthly'], ]; foreach ($static_pages as $page) { echo " " . "\n"; echo " " . $base_url . $page['url'] . "" . "\n"; echo " " . $current_date . "" . "\n"; echo " " . $page['changefreq'] . "" . "\n"; echo " " . $page['priority'] . "" . "\n"; echo " " . "\n"; } // Product categories (only if category column exists) $check_category = $conn->query("SHOW COLUMNS FROM products LIKE 'category'"); if ($check_category && $check_category->num_rows > 0) { $query = "SELECT DISTINCT category FROM products WHERE status = 'active' AND category IS NOT NULL AND category != ''"; $result = $conn->query($query); if ($result && $result->num_rows > 0) { while ($category = $result->fetch_assoc()) { $category_slug = createSlug($category['category']); $category_url = $base_url . "/kategori/" . $category_slug; echo " " . "\n"; echo " " . htmlspecialchars($category_url) . "" . "\n"; echo " " . $current_date . "" . "\n"; echo " weekly" . "\n"; echo " 0.6" . "\n"; echo " " . "\n"; } } } // Products $query = "SELECT id, name, slug, updated_at FROM products WHERE status = 'active' ORDER BY updated_at DESC"; $result = $conn->query($query); if ($result && $result->num_rows > 0) { while ($product = $result->fetch_assoc()) { // Use slug from database, fallback to generated slug $slug = !empty($product['slug']) ? $product['slug'] : createSlug($product['name']); $product_url = $base_url . "/produk/" . $slug; $lastmod = date("Y-m-d\TH:i:s+07:00", strtotime($product["updated_at"])); echo " " . "\n"; echo " " . htmlspecialchars($product_url) . "" . "\n"; echo " " . $lastmod . "" . "\n"; echo " weekly" . "\n"; echo " 0.7" . "\n"; echo " " . "\n"; } } ?>