diff --git a/app/[locale]/products/[...slug]/page.tsx b/app/[locale]/products/[...slug]/page.tsx index 8f932d9a..7f4a6ee9 100644 --- a/app/[locale]/products/[...slug]/page.tsx +++ b/app/[locale]/products/[...slug]/page.tsx @@ -53,17 +53,17 @@ export async function generateMetadata({ params }: ProductPageProps): Promise ( @@ -381,7 +381,7 @@ export default async function ProductPage({ params }: ProductPageProps) { / {categoryTitle} @@ -504,7 +504,7 @@ export default async function ProductPage({ params }: ProductPageProps) { '@type': 'Offer', availability: 'https://schema.org/InStock', priceCurrency: 'EUR', - url: `${SITE_URL}/${locale}/products/${slug.join('/')}`, + url: `${SITE_URL}/${locale}/${await mapFileSlugToTranslated('products', locale)}/${slug.join('/')}`, itemCondition: 'https://schema.org/NewCondition', }, additionalProperty: technicalItems.map((item: any) => ({ @@ -515,7 +515,7 @@ export default async function ProductPage({ params }: ProductPageProps) { category: product.frontmatter.categories.join(', '), mainEntityOfPage: { '@type': 'WebPage', - '@id': `${SITE_URL}/${locale}/products/${slug.join('/')}`, + '@id': `${SITE_URL}/${locale}/${await mapFileSlugToTranslated('products', locale)}/${slug.join('/')}`, }, } as any } diff --git a/components/RelatedProducts.tsx b/components/RelatedProducts.tsx index 483b99d0..0660d57f 100644 --- a/components/RelatedProducts.tsx +++ b/components/RelatedProducts.tsx @@ -2,6 +2,7 @@ import { getAllProducts } from '@/lib/mdx'; import { getTranslations } from 'next-intl/server'; import Image from 'next/image'; import { RelatedProductLink } from './RelatedProductLink'; +import { mapFileSlugToTranslated } from '@/lib/slugs'; interface RelatedProductsProps { currentSlug: string; @@ -16,6 +17,7 @@ export default async function RelatedProducts({ }: RelatedProductsProps) { const products = await getAllProducts(locale); const t = await getTranslations('Products'); + const productsSlug = await mapFileSlugToTranslated('products', locale); // Filter products: same category, not current product const related = products @@ -61,7 +63,7 @@ export default async function RelatedProducts({ return (