From 7adff99e288bfd26767c2dae8a900c2279c9b7be Mon Sep 17 00:00:00 2001 From: Owen Date: Wed, 28 Jan 2026 15:23:47 +0100 Subject: [PATCH] add canonical url for locales --- src/app/[locale]/(main)/contact-us/ContactForm.tsx | 3 +++ src/app/[locale]/layout.tsx | 12 +++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/app/[locale]/(main)/contact-us/ContactForm.tsx b/src/app/[locale]/(main)/contact-us/ContactForm.tsx index 58a09c8..816716a 100644 --- a/src/app/[locale]/(main)/contact-us/ContactForm.tsx +++ b/src/app/[locale]/(main)/contact-us/ContactForm.tsx @@ -54,6 +54,7 @@ const ContactForm = () => { name="email" control={form.control} label={t("emailLabel")} + aria-label={t("emailLabel")} placeholder={t("emailPlaceholder")} required /> @@ -62,6 +63,7 @@ const ContactForm = () => { name="subject" control={form.control} label={t("subjectLabel")} + aria-label={t("subjectLabel")} placeholder={t("subjectPlaceholder")} required /> @@ -71,6 +73,7 @@ const ContactForm = () => { control={form.control} rows={6} label={t("messageLabel")} + aria-label={t("messageLabel")} placeholder={t("messagePlaceholder")} required /> diff --git a/src/app/[locale]/layout.tsx b/src/app/[locale]/layout.tsx index 89e27be..40d1629 100644 --- a/src/app/[locale]/layout.tsx +++ b/src/app/[locale]/layout.tsx @@ -6,11 +6,11 @@ import { Inter, Julius_Sans_One } from "next/font/google"; import { notFound } from "next/navigation"; import { LocaleChecker } from "@/components/LocaleChecker"; +import { MatomoAnalytics } from "@/components/MatomoAnalytics"; import "@/css/globals.css"; import Providers from "@/providers"; import Footer from "./(main)/components/Footer"; -import { MatomoAnalytics } from "@/components/MatomoAnalytics"; const inter = Inter({ subsets: ["latin"], variable: "--font-inter" }); const title = Julius_Sans_One({ @@ -31,10 +31,20 @@ export async function generateMetadata({ namespace: "Metadata", }); + const baseUrl = "https://echecsfrance.com"; + const canonicalPath = locale === "fr" ? "" : `/${locale}`; + return { title: t("title"), description: t("description"), keywords: t("keywords"), + alternates: { + canonical: `${baseUrl}${canonicalPath}`, + languages: { + fr: baseUrl, + en: `${baseUrl}/en`, + }, + }, }; }