8768 sujets

Développement web côté serveur, CMS

Bonjour,
Je suis en train de réaliser un projet avec nodejs et express.
Je souhaite que le site soit disponible en plusieurs langues.

Pour cela, j'utilise i18next, le module i18next-express-middleware et le module i18next-node-fs

Tout marche très bien. Je peux traduire le site selon :
- la locale passée en paramètre ?lng=fr
- la locale passée dans l'url /:lng
- le header, cookie ou session

J'aimerais savoir quelle est la meilleur pratique pour les traductions :
- Ajouter la locale dans l'url et traduire l'url: /fr/accueil, /en/home ...

app.use('/fr/acceuil', function(req,res,next){
 action();
});
app.use('/en/home', function(req,res,next){
 action();
});


- Ajouter la locale dans l'url et ne pas traduire l'url: /fr/accueil, /en/accueil...

app.use('/:lng/acceuil', function(req,res,next){
 /* code */
});


- Passer la langue en paramètre : ?lang=fr, ?lang=en
-> pour chaque route
-> une fois et j'enregistre dans un cookie ou session jusqu’à une modification
-> ...
- Autres techniques

Je n'ai as trouvé de réponse sur internet concernant ce problème ou alors je n'ai pas utilisé les bons mots clés Smiley bawling

Si vous avez une idée ou un conseil, je suis preneur.
Merci beaucoup à tous !