SEO: JSON-LD, hreflang x-default, 404 page, localized OG
- FaqSection: h1/h2 based on standalone prop (fixes missing H1 on /faq) - faq/page: FAQPage JSON-LD, hreflang x-default, OG image/url - kontakty/page: LocalBusiness JSON-LD (address, geo, tel, openingHours), hreflang x-default, OG - uslugi/page: geo in H1 («в Пушкино»), hreflang x-default, OG, expanded description - [lang]/page: Organization JSON-LD, localized OG (ru_RU/en_US), x-default hreflang - [slug]/page: localized og:title/siteName, x-default hreflang, areaServed+telephone in Service JSON-LD - not-found.tsx: 404 page → generates 404.html for nginx error_page directive Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -18,6 +18,7 @@ export async function generateMetadata({ params }: { params: Promise<{ lang: str
|
||||
const d = getDictionary(lang)
|
||||
const svc = d.services.items.find(s => s.slug === slug)
|
||||
if (!svc) return {}
|
||||
const orgName = lang === 'ru' ? 'Сисадмингрупп' : 'SysadminGroup'
|
||||
return {
|
||||
title: svc.title,
|
||||
description: svc.description,
|
||||
@@ -26,11 +27,15 @@ export async function generateMetadata({ params }: { params: Promise<{ lang: str
|
||||
languages: {
|
||||
'ru': `https://sag24.ru/ru/uslugi/${slug}/`,
|
||||
'en': `https://sag24.ru/en/uslugi/${slug}/`,
|
||||
'x-default': `https://sag24.ru/ru/uslugi/${slug}/`,
|
||||
},
|
||||
},
|
||||
openGraph: {
|
||||
title: `${svc.title} | Сисадмингрупп`,
|
||||
title: `${svc.title} | ${orgName}`,
|
||||
description: svc.description,
|
||||
url: `https://sag24.ru/${lang}/uslugi/${slug}/`,
|
||||
siteName: orgName,
|
||||
locale: lang === 'ru' ? 'ru_RU' : 'en_US',
|
||||
images: [{ url: '/og-image.png' }],
|
||||
},
|
||||
}
|
||||
@@ -112,10 +117,13 @@ export default async function ServicePage({ params }: { params: Promise<{ lang:
|
||||
'@type': 'Service',
|
||||
'name': svc.title,
|
||||
'description': svc.description,
|
||||
'url': `https://sag24.ru/${lang}/uslugi/${slug}/`,
|
||||
'areaServed': lang === 'ru' ? 'Московская область' : 'Moscow Region',
|
||||
'provider': {
|
||||
'@type': 'Organization',
|
||||
'name': 'Сисадмингрупп',
|
||||
'name': lang === 'ru' ? 'Сисадмингрупп' : 'SysadminGroup',
|
||||
'url': 'https://sag24.ru',
|
||||
'telephone': '+7-495-363-74-76',
|
||||
},
|
||||
}),
|
||||
}}
|
||||
|
||||
Reference in New Issue
Block a user