feat(lang): routage préfixé /fr/ et /en/ avec redirect JS langue sur les chemins non préfixés

- page-redirect sur / et tous les chemins sans préfixe : localStorage zektyc-lang
  puis navigator.language, défaut fr ; fallback FR si la page n'a pas de version EN
- /en/ sert enfin la home EN (public/en/), fix de LANG_ROUTES.en
- home EN générée à partir d'i18n.json (ld+json Organization/FAQPage valides)
- i18n.js/components.js : switch de langue par préfixe + liens préfixés
- anciennes URLs /zmap/en/* : 301 vers /en/zmap/* ; pages EN zmap déplacées
  vers le layout <page>/en/ standard
- canonicals/hreflang fr-en-x-default sur toutes les pages statiques + sitemaps
  (équipe, zmap, archives, vitesses-par-route ajoutées) ; suppression du domaine
  obsolète zektyc.duckdns.org (robots, sitemap index, security.txt)
This commit is contained in:
riricdev 2026-09-06 16:12:16 +02:00
commit d1c994bc7f
30 changed files with 566 additions and 124 deletions

View file

@ -2,5 +2,5 @@
Contact: mailto:riric65@protonmail.com
Expires: 2027-02-14T00:00:00.000Z
Preferred-Languages: fr, en
Canonical: https://zektyc.duckdns.org/.well-known/security.txt
Policy: https://zektyc.duckdns.org/tos
Canonical: https://riricdev.tail5ea5cd.ts.net/.well-known/security.txt
Policy: https://riricdev.tail5ea5cd.ts.net/fr/tos