Traduction de noeud vs traduction d'entité (champ)

26

Je voudrais savoir ce que vous recommandez pour un site multilingue. Par exemple, considérons le cas suivant: Une page et son contenu doivent être disponibles en 3 langues (par exemple allemand, anglais et espagnol); le site utilise un type de profil, plusieurs types de contenu et vues, la taxonomie, les références de taxonomie, les références de nœuds, les références d'utilisateurs et de champs, les collections de champs, les menus, etc. Toutes ces informations doivent être traduisibles.

Pour autant que je sache, il y a deux façons de l'obtenir: avec Entity Translation et la méthode "basée sur les nœuds", ou celle habituelle avec les modules d' Internationalisation et l10n.

Comment dois-je choisir? Dans quel cas et pourquoi devrais-je envisager une méthode au lieu de l'autre?

Lance
la source

Réponses:

8

Randy Fay a récemment créé un article discutant des possibilités obtenues avec de Entity Translations, où Gabor Hojtsy a commenté certaines des considérations à peser:

Certaines bonnes choses offertes par la [bonne vieille] traduction de nœuds incluent la prise en charge des commentaires de nœuds séparés (par exemple, vos commentaires en allemand et en anglais ne seront pas mélangés); prise en charge des révisions par langue; les workflows de publication (par exemple, le nœud allemand peut être dans un workflow de révision de pré-publication alors que l'anglais est déjà publié, des actions coordonnées peuvent publier plusieurs versions linguistiques lorsque toutes atteignent une certaine étape du workflow, etc.); gestion différente des autorisations (par exemple, certaines personnes ne peuvent éditer que les traductions allemandes et non les originaux anglais), grâce au système excessif d'accès aux nœuds de Drupal, etc. Pensez aux menus. La plupart des sites ne prévoient pas de structures de menu 1-1 pour toutes les versions traduites.

La principale mise en garde telle que je la vois pour la traduction au niveau du contenu / de l'entité / du champ se résume actuellement à ce cas spécial du drupalisme séculaire: le titre du nœud ... Ce n'est pas vraiment un champ, donc il n'est pas traduisible sans un autre module, et potentiellement quelques correctifs. À l'heure actuelle, je pense que la traduction sur le terrain est encore un terrain "expérimental", mais plus de pouvoir pour vous de pousser vers de nouveaux territoires.

JamesWilson
la source
Merci. Points et avantages très intéressants pour la traduction de nœuds.
Lance
5

La présentation de Suzanne Kennedy et Florian Loretan à DrupalCon Denver a répondu à cette question. Il semble que la traduction d'entité soit la voie de l'avenir et soit au moins partiellement prévue pour l'intégration dans le noyau.

Leur recommandation était d'utiliser la traduction d'entité à moins que vous n'ayez besoin de support pour la révision.

Patrick Kenny
la source
2
En effet, Entity Translation fait désormais partie de Drupal 8 Core. Selon sa page de projet .
tanius
5

J'ai utilisé la traduction Node mais maintenant après avoir essayé la traduction d'entité , c'est définitivement ma préférée!

Je pense que le principal problème est la fonction d'importation avec Entity Translation, car il y a une longue discussion dans la communauté Drupal. Sinon, j'ai lu un nouveau module, mais je ne l'ai pas encore essayé. Mais je vous donnerai mon avis après!

Si vous combinez Entity Translation avec le module Title , vous pouvez tout traduire. Je préfère également le module " Mise à jour de la localisation ".

Vous devez donc installer et activer ces modules contribués:

Et vous devez activer ces modules de base:

  • Lieu.
  • Traduction de contenu.

Bonne chance!

weristsam
la source
Excellent résumé sur ce sujet, +1!
Pierre.Vriens
2

Je sais que je ressuscite les morts ici mais:

D'après ce que je peux dire, la méthode de traduction de nœuds à 6 styles (chaque traduction est un nouveau nœud) est toujours le seul moyen utile de traduire du contenu, ayant l'avantage d'être ce à quoi tout le monde est habitué et d'être fonctionnellement complet. (Les titres des nœuds ne sont pas des champs en 7 et ne peuvent donc pas être traduits sur le terrain, entre autres lacunes idiotes.)

Vous allez toujours utiliser i18n / locale, le seul choix (qui n'est pas vraiment un choix) est la traduction au niveau du nœud ou au niveau du champ, dont seule la traduction du nœud est susceptible d'être utile.

Edit: Depuis que cela a été écrit, le module Traduction d'entité + Titre a rendu la traduction au niveau du champ très efficace. Si vous pouvez les utiliser, vous devriez.

lotyrine
la source
5
C'est un module contrib, mais le module Title ( drupal.org/project/title ) permet aux titres des nœuds d'être convertis pour fonctionner comme des champs.
Patrick Kenny
1

La traduction d'entités est beaucoup plus logique dans la plupart des cas que la traduction de nœuds; mais malheureusement, ce n'est pas vraiment une option viable pour D7 car de nombreux modules ne le prennent toujours pas en charge. Les gens qui font des présentations et montrent à quel point c'est génial ne font qu'un travail très simple. Par exemple, quelque chose d'aussi commun / populaire que les collections de champs n'est toujours pas pris en charge par ET.

Lorsque nous démarrons un nouveau site multilingue, nous commençons toujours par ET car c'est une excellente idée. Nous nous en tenons jusqu'à ce que nous trouvions trop de problèmes avec des choses qui ne sont pas compatibles .. puis nous revenons finalement à l'ancienne méthode D6.

liquidcms
la source
Pourriez-vous fournir plus de détails sur les difficultés que vous avez rencontrées? Nous sommes dans la même situation que vous avez décrite (création d'un nouveau site, besoin de décider du modèle que nous allons utiliser pour la traduction), et je me demande si notre site est assez simple, nous ne rencontrerons pas les problèmes que vous avez. Connaître plus de détails sur vos expériences serait extrêmement utile.
Josh
Il y a plus de 6000 modules pour D7; difficile de dire lesquels fonctionneront et lesquels ne fonctionneront pas. Je sais que les collections de champs ne se traduisent pas correctement avec ET. Je suis sûr qu'il y en a d'autres. Le mieux est d'essayer chaque paquet au fur et à mesure que vous le créez et de voir s'il peut être traduit en utilisant ET. Vous pouvez mélanger ET et NT sur le même site; mais pas dans le même lot. Cela rend ET plus dangereux comme si vous finissiez par ajouter un type de champ plus tard que vous n'aviez pas vérifié auparavant et qu'il n'était pas pris en charge; ou vous ajoutez des fonctionnalités non prises en charge; vous pourriez avoir des ennuis.
liquidcms