Langues Drupal 8

En 2018

plus sur site officiel "Configuring Content Translation" et http://hojtsy.hu/blog/2015-jan-27/drupal-8-multilingual-tidbits-17-conte...

 

Cas des reférences des termes de tags (dans article) :

  • A ou reftags traduisible et pas les termes du vocab' :
    on a diverses listes de termes par langues (colonne des termes : chaque TermX a un seul label d'une langue)
  • B (si on souhaite traduire les termes) ou reftags non traduisible (dans article) avec les termes du vocab traduisibles sur la meme page.
    On garde ainsi les meme tags (TermX, TermY pour tt les langues), les termes (EN label, FR label...) étant traduits => chaque TermX a plusieurs labels
  • C (A+B essayer de l'éviter) ou reftags et les termes de vocab' traduisible

Article a une taxo

Ce système est plus proche de Entiy translation (sans Title) que de i18n du core drupal 7.

Il vaux mieux (stabilité...) utiliser admin/config/regional/content-language car travailler sur le bundle ou les champs peuvent mener à un plantage ou des bugs.

La maj de novembre 2018 (drupal 8.6.3) corrige pas mal de bugs sur i18n et la traduction des contenus (alors que j'avais commencé des tests d'importation).

 


En 2013

http://hojtsy.hu/blog/2013-jun-12/drupal-8-multilingual-tidbits-2-more-c...

Un site italien aura la conf: Langues drupal 8 d'un site qu'il n'a qu'une seule langue (core)
Transliteration est intégré au core.

On installe directement drupal en francais, et les modules suivants sont dispo (core):

  • Language : ajout et choix de la sélection (url session...). Ex: un blog (interface anglaise) avec posts en uk, fr et de : cela lui suffit.
    Comporte la fonction qui affiche les langues dans les blocs, permatant d'afficher ou nom un bloc en fonction des langues..
  • Interface Translation : avoir une interface utilisateur en plusieurs langues (ex: le meme blog est vu en fr ou en uk).
    enlightened Language + Interface Translation de drupal 8 = Locale drupal 7
  • Configuration Translation : drupal 8 intère certaines fonctions de Features. II s'agit ici de la gestion de la configuration.
  • Content Translation : n'a rien à voir avec la version drupal 7, permet la traduction de champs, termes... facon i18n.

Le Language neutral drupal 7 est différencié en : "Not applicable" et "Not specified" (sera fait plus tard).

Assigner une langue a changé

Un bon ex: à la création d'une Views (name and descrition)), views propose une langue (et suppose que les données à afficher sont la langue par défaut du site).

Drupal 8 introduit les entitées content (content entities) qui stoquent les comments, users, termes de taxonomie, nodes, items de menu et de raccourcis, custom blocks, fichiers.
Pour chaque type d'entité, on peux configurer son bundle à admin/config/regional/content-language

Dans Drupal 8 : site name, slogan, menus etc. sont tous devenus des blocs. Avec "block language visibility" (module Language) => chaque langue peut donc avoir son menu (dans un bloc), on configure pour quelle(s) langue(s) ce bloc apparait.
On peux configurer un bloc de contenu avec des négociations différentes de langues, pour avoir des blocs "interface blocks" ou "content blocks" via admin/config/regional/language/detection.

http://hojtsy.hu/blog/2013-jul-09/drupal-8-multilingual-tidbits-7-langua...

Fichiers YAML

core/modules/system/config/install/system.site.yml a les settings du site pour la 1ere install (n'a servi qu'une fois, on le voit au chemin) et a la clé langcode (dans son ex: langcode: en).

Traduire du contenu

configurer à /admin/config/regional/content-language

En configurant un bundle en "traduisible" ouvre au niveau du champ de nouvelles conf.
Il y a des métadata de trad qui permettent d'avoir des statuts par langues différents pour Promu en p acc et en haut. Des métadata de publication (auteur de la trad, date de pub et de modif) pour garder ses droits de trads.

Pour les termes de taxo on a le choix (ex pour article, qui a par défaut "tag", voir image plus haut).

 

3 facons de configurer les traductions des termes