Files
nobat724_front/app/sitemap.js
T
hamed a8c3a57114 feat(doctor): enhance doctor schema with addresses, ratings, and social media links
feat(robots): update disallow rules to include '/panel'
feat(sitemap): implement separate sitemaps for doctors, clinics, and blogs
feat(icons): add social media icons for doctor profiles
2026-06-21 12:35:15 +03:30

40 lines
1.4 KiB
JavaScript

import { headers } from 'next/headers';
import { getBaseUrl } from '../utils/sitemap';
const MAIN_DOMAIN = 'nobat724.com';
function getCurrentDomain() {
try {
const headersList = headers();
const host = headersList.get('host');
return host || MAIN_DOMAIN;
} catch {
return MAIN_DOMAIN;
}
}
const NOW = new Date();
function getStaticPages(baseUrl) {
return [
{ url: baseUrl, lastModified: NOW, changeFrequency: 'daily', priority: 1 },
{ url: `${baseUrl}/about-us`, lastModified: NOW, changeFrequency: 'monthly', priority: 0.8 },
{ url: `${baseUrl}/contact-us`, lastModified: NOW, changeFrequency: 'monthly', priority: 0.8 },
{ url: `${baseUrl}/blogs`, lastModified: NOW, changeFrequency: 'weekly', priority: 0.9 },
{ url: `${baseUrl}/doctors`, lastModified: NOW, changeFrequency: 'daily', priority: 0.9 },
{ url: `${baseUrl}/clinics`, lastModified: NOW, changeFrequency: 'daily', priority: 0.9 },
{ url: `${baseUrl}/specialties`, lastModified: NOW, changeFrequency: 'weekly', priority: 0.9 },
];
}
export default async function sitemap() {
try {
const domain = getCurrentDomain();
const baseUrl = getBaseUrl(domain);
return getStaticPages(baseUrl);
} catch (error) {
console.error('Error generating sitemap:', error);
return [];
}
}