Gérer les traductions avec Hugo

J’ai joué avec les traductions et Hugo ces jours-ci, et je suis en admiration devant leur système de traduction.

Hugo a une approche tellement intelligente, et je peux facilement combiner les outils intégrés de traduction avec mes fichiers markdown.

Leur documentation est fantastique mais j’ai eu un peu de mal à trouver un élément que je trouve très pratique, vous pourriez en avoir besoin également.

Au lieu d’utiliser l’approche par liens symboliques, on peut ajouter un tag spécial dans le frontmatter (~ entête) du fichier markdown translationKey:

translationKey = "hugo-i18n"

C’est celui que j’utilise sur ce post. Il faut l’ajouter dans toutes les traductions, y compris le post d’origine et c’est tout!

Il suffit ensuite d’utiliser dans les templates quelque chose comme :

{{- if .IsTranslated }} 
  {{- range .Translations }}
    <a href="{{ .Permalink }}">{{ .Title }}</a>
  {{- end }}
{{- end }}

Génial!