fix
All checks were successful
Build & Deploy KLZ Cables / build-and-deploy (push) Successful in 13s
All checks were successful
Build & Deploy KLZ Cables / build-and-deploy (push) Successful in 13s
This commit is contained in:
@@ -11,6 +11,8 @@ import GallerySection from '@/components/home/GallerySection';
|
|||||||
import VideoSection from '@/components/home/VideoSection';
|
import VideoSection from '@/components/home/VideoSection';
|
||||||
import CTA from '@/components/home/CTA';
|
import CTA from '@/components/home/CTA';
|
||||||
import Reveal from '@/components/Reveal';
|
import Reveal from '@/components/Reveal';
|
||||||
|
import { getTranslations } from 'next-intl/server';
|
||||||
|
import { Metadata } from 'next';
|
||||||
|
|
||||||
export default function HomePage({ params: { locale } }: { params: { locale: string } }) {
|
export default function HomePage({ params: { locale } }: { params: { locale: string } }) {
|
||||||
return (
|
return (
|
||||||
@@ -34,3 +36,45 @@ export default function HomePage({ params: { locale } }: { params: { locale: str
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function generateMetadata({ params: { locale } }: { params: { locale: string } }): Promise<Metadata> {
|
||||||
|
// Use translations for meta where available (namespace: Home.meta)
|
||||||
|
// Fallback to a sensible default if translation keys are missing.
|
||||||
|
let t;
|
||||||
|
try {
|
||||||
|
t = await getTranslations({ locale, namespace: 'Home.meta' });
|
||||||
|
} catch (err) {
|
||||||
|
// If translations for Home.meta are not present, try generic Home namespace
|
||||||
|
try {
|
||||||
|
t = await getTranslations({ locale, namespace: 'Home' });
|
||||||
|
} catch (e) {
|
||||||
|
t = (key: string) => '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const title = t('title') || 'KLZ Cables';
|
||||||
|
const description = t('description') || t('subtitle') || '';
|
||||||
|
|
||||||
|
return {
|
||||||
|
title,
|
||||||
|
description,
|
||||||
|
alternates: {
|
||||||
|
canonical: `/${locale}`,
|
||||||
|
languages: {
|
||||||
|
'de': '/de',
|
||||||
|
'en': '/en',
|
||||||
|
'x-default': '/en',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
openGraph: {
|
||||||
|
title: `${title} | KLZ Cables`,
|
||||||
|
description,
|
||||||
|
url: `https://klz-cables.com/${locale}`,
|
||||||
|
},
|
||||||
|
twitter: {
|
||||||
|
card: 'summary_large_image',
|
||||||
|
title: `${title} | KLZ Cables`,
|
||||||
|
description,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user