Développer avec RBS Change : [Résolu] synchronisation des traductions

  • 60641.1

    18/06/2012 14:17


    ecoco
    Rang : Membre
    Bonjour,

    Concernant le "système de synchronisation des traductions",
    S'agit-il bien de proposer par défaut à l'utilisateur la page en version orignal si elle n'est pas traduite dans sa langue ?
    Comment activer cette fonction ?

    Merci

    RBS Change Version 3.6.1 - eCommerce Core
  • 60641.2 en réponse à 60641.1 écrit par ecoco

    18/06/2012 16:01


    Jean-Michel
    Titre : Community Manager
    Rang : Expert
    Pour être plus précis il s'agit essentiellement d'initialiser le contenu de la page pour une langue à partir du contenu de la page dans une autre langue.

    Ce système fonctionne via une tâche (Outils > Tâches > Tâches > task_I18nSynchroTask).

    Pour l'activer il suffit d'ajouter dans le fichier project.<profile>.xml dans le noeud config :
        <i18nsynchro>
          <entry name="en">fr</entry>
          <entry name="de">en</entry>
        </i18nsynchro>
    


    Ce qui a pour signification :
    - initialiser la version anglaise avec la version française de la page
    - initialiser la version allemande avec la version anglaise

    Il suffit ensuite de lancer une compilation de la configuration
    php framework/bin/change.php compile-config
    

    puis ne lancer qu'une seule et unique fois l'initialisation de la synchro :
    php framework/bin/change.php i18n-synchro --init
    

    Par la suite, tant qu'une page n'aura pas de traduction, elle sera mise à jour à chaque modification de la VO.
    Si par la suite on souhaite forcer la synchronisation, on utilisera :

    php framework/bin/change.php i18n-synchro --reset
    

    Édité par Jean-Michel 03/09/2012 15:23


    Pour une meilleure réponse, pensez à indiquer la version sur laquelle vous rencontrez des difficultés, ainsi que son type (CMS ou eCommerce core).
    Pour tout problème d'installation indiquez le nom de l'hébergeur et s'il s'agit d'un serveur mutualisé ou dédié.
  • 60641.3 en réponse à 60641.2 écrit par Jean-Michel

    18/06/2012 16:34


    ecoco
    Rang : Membre
    Merci pour votre réponse

    je précise qu'il ne faut pas oublier le tiret entre i18n et synchro :
    php framework/bin/change.php i18n-synchro --init
    

    php framework/bin/change.php i18n-synchro --reset
    

    RBS Change Version 3.6.1 - eCommerce Core
  • 60641.4 en réponse à 60641.3 écrit par ecoco

    18/06/2012 16:50


    Jean-Michel
    Titre : Community Manager
    Rang : Expert
    effectivement petite faute de frappe (corrigée maintenant) de ma part au temps pour moi :)

    Édité par Jean-Michel 18/06/2012 16:51


    Pour une meilleure réponse, pensez à indiquer la version sur laquelle vous rencontrez des difficultés, ainsi que son type (CMS ou eCommerce core).
    Pour tout problème d'installation indiquez le nom de l'hébergeur et s'il s'agit d'un serveur mutualisé ou dédié.
  • 60641.5 en réponse à 60641.2 écrit par Jean-Michel

    03/09/2012 15:16


    rbs@ecocea.com
    Rang : Adepte
    Si j'ai bien compris, en lançant un reset, les traductions sont définies à l'identique de celles dans la langue source et les documents dans la langue cible sont publiés, et tout ceci automatiquement.

    Seulement, ceci fonctionne en développement et non sur notre nouvel environnement d'intégration (pour l'heure en mode dev car nous avions besoin d'effectuer un reset-database à l'initialisation).

    Disons que la commande s'exécute bien, mais que rien n'est modifié dans les contenus.
    Y a-t-il un paramétrage particulier ?
  • 60641.6 en réponse à 60641.5 écrit par rbs@ecocea.com

    03/09/2012 15:36


    Jean-Michel
    Titre : Community Manager
    Rang : Expert
    Il est utile de déclarer la configuration de la synchronisation dans project.<profile>.xml si vous avez des développements spécifiques qui doivent êtres validés avec cette configuration, mais une fois que les validations sont faites, placez les directives dans le fichier project.xml de sorte à ce qu'elles soient propagées pour tous les profiles.

    Je suppose donc que dans le cas présent, les directives de synchro sont définies uniquement dans un fichier project.<profile>.xml. Du coup le profile pour le nouvel environnement d'intégration/production ne connait pas cette configuration.

    Par convention, les propriétés globales au projet sont configurées dans le fichier project.xml. Pendant la phase de développement, les propriétés globales peuvent faire une étape intermédiaire via le fichier de configuration correspondant au profile de développement, mais attention, il ne faut pas oublier de reverser les configurations globales dans le fichier project.xml.

    Une fois les options de configuration remises dans le fichier project.xml, ne pas oublier de recompiler la configuration

    Pour une meilleure réponse, pensez à indiquer la version sur laquelle vous rencontrez des difficultés, ainsi que son type (CMS ou eCommerce core).
    Pour tout problème d'installation indiquez le nom de l'hébergeur et s'il s'agit d'un serveur mutualisé ou dédié.
  • 60641.7 en réponse à 60641.6 écrit par Jean-Michel

    05/09/2012 15:30


    rbs@ecocea.com
    Rang : Adepte
    Malheureusement, c'est sans effet.

    Les articles ne sont toujours notés que FR (VO) dans le bloc synthese/traduction, et par conséquent, ne présentent pas le bloc switchLanguage.

    Il me faut manuellement faire une traduction anglaise puis publier la traduction pour que ce soit effectif sur un article et que le bloc switchLanguage s'affiche.
    Ce qui ne peut être fait, surtout sur l'arborescence catalogue...


    Voici mon fichier project.<profile>.xml dans lequel j'ai répliqué les définitions AG*LANGUAGES qui sont bien déjà dans mon project.xml ... au cas où, mais ça ne fonctionne pas mieux

    <?xml version="1.0" encoding="utf-8"?>
    <project>
    <defines>
    ....
    <define name="DEFAULT_UI_PROTOCOL">http</define>
    <define name="AG_SUPPORTED_LANGUAGES">fr en</define>
    <define name="AG_UI_SUPPORTED_LANGUAGES">fr en</define>

    </defines>
    <config>
    ...
    <i18nsynchro>
    <entry name="en">fr</entry>
    </i18nsynchro>
    </config>
    </project>
 
Merci de prendre connaissance et de respecter les règles des forums.
 
1356 membres
Aucun membre connecté