IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WordPress PHP Discussion :

Internationalisation i18n : Bonnes pratiques & Plugins. Master Page Template Gestion URLs Variables Dynamique


Sujet :

WordPress PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2020
    Messages : 4
    Par défaut Internationalisation i18n : Bonnes pratiques & Plugins. Master Page Template Gestion URLs Variables Dynamique
    Bonjour,

    Je suis actuellement sur l'internationalisation de mon site web WordPress 5.5 / PHP 7.4 / Divi Theme 4.5.7

    Etat de l'art
    De ce que j'ai pu comprendre :
    Il vaut mieux privilégier pour des raisons de SEO, des URLs/Routes uniques (/FR /EN...),
    l'agent webbrowser donne la localisation par défaut, Le stockage des préférences utilisateurs se fait par cookies.
    Des fichiers ressources servent à la localisation des langues (.po / .mo) avec un système de clé/valeur (couple key/traduction) qu'un système vient consommer.

    Ce que j'aimerai réaliser
    Avoir un Framework ou Plugin qui gère automatiquement à partir de fichiers ressources (FR, EN...) :
    - Urls/Permaliens : les Routes de langues dynamiques (FR, EN...)
    - Une page modèle/Template avec des variables/clé/key qui vont servir à mapper la traduction avec les fichiers ressources.

    Lorsque j'indique que j'aimerai que ce soit automatique. Il suffirait d'ajouter un nouveau ficher ressources (CN par exemple), pour qu'automatiquement des Urls/Permaliens se créées et que le système viennent chercher la traduction en chinois dans mon exemple.

    Ce que j'aimerai éviter
    C'est de devoir dupliquer toutes mes pages par N traductions. Si je veux ajouter une langue, alors je dois tout dupliquer. Si je dois mettre à jour une page, je dois le faire sur N pages, etc.
    Je me retrouve donc avec un problème de factorisation.
    C'est ce que semble pourtant proposer l'un des plugins les plus populaires tel que : Polylang.
    Je n'ai pas bien compris non plus ce qu'apportait la version payante.

    Est-ce que la solution que j'aimerai trouver existe ? sous-forme de plugin ou de framework proposé dans WP ? Avez-vous des best practices à me conseiller ?

    En synthèse
    Je cherche la meilleure solution pour traduire mes pages et après plusieurs recherches j'ai pu remarquer que la tendance est à l'ajout de page pour chaque traduction/langue.
    J'aimerais savoir s'il n'existait pas de méthode plus générique ?
    Est-il possible d'avoir en quelque sorte une page master qui, à l'aide de fichiers de traduction par exemple, traduira les différentes variables du site ?

    Merci d'avance pour vos réponses.

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 698
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 698
    Par défaut
    l'utilité des pages est surtout de pouvoir utiliser l'éditeur pour faire une modification en passant par l'espace d'administration.
    dans votre cas si c'est l'extension qui gère le contenu, vous n'avez pas besoin d'avoir une page wordpress pour chaque page de chaque langue.

    pour cela votre extension doit faire 2 choses.
    la 1re partie est de gérer les différentes pages avec par exemple un shortcode dans une page wordpress. si le shortcode est dans "page-gestion-langues", vous aurez les URL suivants par exemple pour 2 pages dans 2 langues
    serveur/page-gestion-langues?page=page1-FR
    serveur/page-gestion-langues?page=page1-EN
    serveur/page-gestion-langues?page=nos-clients
    serveur/page-gestion-langues?page=customers

    la 2e partie sera de générer la réécriture d'URL pour rediriger par exemple "serveur/nos-clients" vers "serveur/page-gestion-langues?page=nos-clients". cela se fait avec cette fonction :
    https://codex.wordpress.org/Rewrite_...d_rewrite_rule

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2020
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2020
    Messages : 4
    Par défaut
    Merci beaucoup Mathieu pour ces informations.

    Malheureusement, j'ai cru comprendre que passer la langue via des querys était mauvais pour le SEO..

    Je suis toujours à la recherche de la méthode de traduction qui correspondra le mieux à mon projet.

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/04/2011, 16h14
  2. Outils d'internationalisation et de traduction
    Par philnext dans le forum Langage
    Réponses: 1
    Dernier message: 02/02/2008, 11h04
  3. Traduction
    Par PierDIDI dans le forum Composants VCL
    Réponses: 3
    Dernier message: 17/09/2002, 23h43
  4. Changement de langue dynamique (D6 et outils de traduction)
    Par agon dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/09/2002, 16h15
  5. [CR] internationalisation d'un report
    Par osoudee dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 24/06/2002, 16h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo