Canonico
Assegna a ogni pagina localizzata il proprio codice canonico
Se /en/pricing e /fr/pricing sono pagine in lingue diverse, ciascuna dovrebbe normalmente identificarsi come URL canonico per quella versione linguistica. Non canonizzare ogni traduzione in inglese solo perché la versione inglese è stata pubblicata per prima.
- Canonicalize the exact protocol, host, path, and locale URL you want indexed.
- Keep redirected, parameterized, or duplicate variants out of the canonical set.
- Use the same canonical policy in metadata and the sitemap.
export async function generateMetadata({ params }) {
const { locale, slug } = await params;
const product = await getProduct(slug);
const path = `/products/${product.slug}`;
return {
title: product.seoTitle[locale],
description: product.seoDescription[locale],
alternates: {
canonical: `https://example.com/${locale}${path}`,
languages: {
en: `https://example.com/en${path}`,
fr: `https://example.com/fr${path}`,
de: `https://example.com/de${path}`,
},
},
};
}