Dotclear


Version 2 (modified by jcdubacq, 14 years ago) (diff)

Automatic synchronization with the enclosed documentation

English

dctranslations

Permet d'écrire des articles dans plusieurs langues liées ensemble, autorisant une navigation d'une langue à l'autre tout en affichant le maximum d'éléments de navigation dans la langue préférée de chaque visiteur.

Auteurs/Contributeurs?

Développement

Bugs et demandes de fonctionnalités

Dépôt

Changements récents

[3062] by franck on 07/24/11 07:46:40

Metadata -> Tags

[2910] by franck on 01/29/11 20:32:54

Dotclear 2.2.2 compliance

[2703] by franck on 10/02/10 14:27:39

Remise en place de l'auteur original dans les entêtes de licence

Documentation

Si vous voulez faire un blog en une seule langue, Dotclear le fait très bien par défaut. Si vous voulez mélanger des articles dans une langue et dans une autre, sans effort particulier de traduction, c'est également très bien géré. Si vous voulez faire un blog avec des articles en deux langues, tous traduits intégralement, vous pouvez (encore une fois par défaut) utiliser les capacités multi-blogs de Dotclear et faire simplement deux blogs distincts.

Mais si vous voulez réellement faire du contenu bilingue (petit à petit ou tout d'un coup), avec une réelle correspondance entre les articles, en en traduisant certains mais pas tous, en permettant aux lecteurs bilingues de sauter d'une traduction à l'autre, en mettant le maximum d'éléments dans la langue du visiteur (la navigation tout d'abord, et si un article existe en plusieurs versions, celle qui est préférée par le lecteur) tout en laissant accès au reste, bref, pour faire un réel site multilingue, cette extension dctranslations est pour vous.


La page de maintenance de ce plugin est à cette adresse : http://jean-christophe.dubacq.fr/post/dctranslations

Installation

Utilisez le fichier zippé fourni dans la page de maintenance. La zone d'administration est dans Blog > Traductions. La langue du blog doit être mise à une valeur vide (c'est fait automatiquement lorsqu'on se rend sur les paramètres du blog et qu'on les sauve ; il est important d'aller ensuite dans la zone d'administration des traductions pour régler les langues visibles et la langue de dernier recours). Le fonctionnement du plugin n'est pas correct tant que le paramètre de langue n'est pas vide (on peut vérifier dans Extensions > about:config).

Cette extension rajoute un panneau de commande pour choisir les langues utilisables par les lecteurs pour naviguer sur le site, une interface pour traduire les billets, les pages statiques ou des petits éléments de navigation. La traduction des widgets (definition) ou des descriptions de catégories sont laissées à d'autres extensions (mentionnées plus loin).

source:/plugins/dctranslations/doc/dctranslations-admin.png

Ce plugin requiert l'usage du plugin stacker, en version au moins 0.4.

Cette extension redéfinissant des codes internes standards de Dotclear, il est recommandé après l'avoir installé d'aller dans le tableau de bord, et de faire Extensions -> Maintenance -> Vider le cache des templates.

L'extension autolocale joue un rôle similaire à cette extension pour ce qui est de présenter le blog en changeant la langue de navigation automatiquement selon les préférences de l'utilisateur, mais aucun contrôle plus fin n'est permis (et pas de traduction de billets). Pour un système multilingue complet, il est recommandé d'installer la dernière version du plugin translatedwidgets, ainsi que le plugin kezako.

La version courante de cette extension est 1.7 (local svn 343).

Cette extension est sous la licence GPL version 2.0.

Utilisation

Simple utilisateur

Lorsque vous naviguez sur un blog muni de cette extension, Dotclear choisit votre langue préférée (soit la dernière que vous aviez choisie manuellement, soit celle qui est indiqué dans votre navigateur). En dernier recours, une langue a été choisie par l'auteur du blog (si aucune de vos langues indiquées ne convient).

Pour indiquer une langue à votre navigateur, il s'agit presque toujours d'une préférence que vous pouvez modifier. Cette page de l'organisation W3C indique (en anglais) selon votre navigateur où trouver ce réglage : http://www.w3.org/International/questions/qa-lang-priorities.

Lorsqu'un billet ou une page est disponible en plusieurs langues, la langue préférée est présentée par défaut. Un widget (qui peut avoir été ajouté au site) permet de choisir une autre traduction (si un locuteur multilingue désire voir une autre version).

Simple auteur

Lorsque vous composez (ou éditez) une page ou un billet, apparaît en dessous de la zone usuelle de saisie une zone pour saisir une nouvelle traduction, ainsi qu'une zone pour chaque traduction déjà entrée. Chaque zone comporte cinq indications: titre, langue, extrait, contenu, URL (la signification de chacun de ces cinq champs est la même que pour la langue d'origine). La zone peut être masquée partiellement, laissant alors apparaître seulement langue et titre.

source:/plugins/dctranslations/doc/dctranslations-entry.png

Pour effacer une traduction déjà entrée, il suffit d'effacer la langue complètement et de sauvegarder. Une seule traduction supplémentaire peut être saisie simultanément, mais il suffit de sauvegarder l'entrée en cours pour voir une nouvelle zone (vide) de traduction.

L'URL sera déterminée automatiquement à partir du titre traduit, sauf si elle est modifiée manuellement. L'URL d'un billet est :

  • ...nomdusite/tpost/lang/url-de-la-traduction (billet traduit)
  • ...nomdusite/opost/lang/url-du-billet (billet dans la langue d'origine)
  • ...nomdusite/post/url-du-billet (prend automatiquement la langue préférée du lecteur)

Chargé de traduction

Parce que tout n'est pas parfait, il est parfois nécessaire de rentrer à la main des éléments de traduction. Par exemple, la traduction des mots-clefs (tags), des titres de widgets (lorsque ce n'est pas le titre par défaut), etc. Le panneau d'administration (Blog > Traductions) permet d'entrer des traductions qui, ajoutées aux traductions déjà livrées avec Dotclear, servent à traduire les éléments visibles.

source:/plugins/dctranslations/doc/dctranslations-preferences.png

Le panneau d'administration comporte deux parties, une pour les réglages multi-lingues du blog, et une autre sur les éléments de traduction. Le réglage du blog se fait de deux façons extrêmement simples: il y a une liste de langages autorisés (disponibles pour la navigation). La valeur par défaut est « en,fr » ce qui autorise à naviguer en anglais ou en français (les deux langues les mieux traduites pour Dotclear). La deuxième valeur est la langue de dernier recours (qui doit être une des langues autorisées pour la navigation) qui est la langue utilisée si un lecteur vient naviguer sur le site et que son navigateur n'accepte aucune des langues autorisées. L'anglais est utilisé par défaut.

La deuxième partie sert à ajouter les éléments de traduction. Pour traduire un élément, il suffit que le terme tel que rentré dans l'interface soit dans la première colonne (« Chaîne »), et que la traduction correspondante soit la colonne correspondante à la langue.

Par exemple, si j'ai un mot-clé « calendar », je peux rajouter sa traduction française « agenda » dans la colonne « Français » et sa traduction allemande dans la colonne « Deutsch ». Je laisse la traduction anglaise vide, puisqu'il n'y a rien à traduire. J'aurais aussi pu choisir que le terme à rentrer était « agenda » et le traduire respectivement en anglais et allemand par « calendar » et « Kalendar ».

Pour ajouter une nouvelle entrée, il y a toujours une ligne vide dans la page 1 (les traductions sont présentées 16 par 16). Un petit menu à cliquer permet de faire apparaître automatiquement des lignes pour tous les titres de catégories et tous les titres de tags (la liste complète des termes sans traduction est alors affichée aussi en dessous).

Pour supprimer une traduction, il faut laisser la première colonne « Chaîne » et supprimer toutes les traductions. Une meilleure interface sera proposée dans l'avenir.

L'effet est normalement visible immédiatement en zone publique.

Administrateur

Comme précisé plus haut, il faut s'assurer que toutes les extensions requises sont présentes (et celles qui sont recommandées aussi), et que la langue du blog est réglé sur la chaîne vide. Il faut aussi remplacer les widgets déjà présents par les widgets équivalents traduits (de translatedwidgets). Par ailleurs, la permission « editor » doit être conférée aux utilisateurs autorisés à s'occuper de la traduction de l'interface (pas des billets; par exemple, traduire les mots-clés et autres éléments graphiques du thème qui ne seraient pas traduits par défaut -- titres de widgets différents du titre par défaut, par exemple). Les administrateurs d'un blog n'ont pas besoin de cette permission.

source:/plugins/dctranslations/doc/dctranslations-widget1.png

Trois widgets sont disponibles et à ajouter aux endroits adéquats. Le premier, actif uniquement sur une page de billet ou une page statique, permet de lister toutes les traductions existantes du billet.

source:/plugins/dctranslations/doc/dctranslations-translation-fr.png

source:/plugins/dctranslations/doc/dctranslations-translation-de.png

Le deuxième, « langue de navigation », permet de choisir sa langue de navigation (elle devient alors la langue préférée pour ce site) sans passer par les préférences de son navigateur (toutefois, il peut être indispensable de recharger la page en « outrepassant » le mécanisme de cache, souvent par shift-F5, ou en quittant son navigateur). Il est assez important de le mettre, car beaucoup d'utilisateurs ne paramètrent pas correctement leur navigateur.

source:/plugins/dctranslations/doc/dctranslations-widget-fr.png

source:/plugins/dctranslations/doc/dctranslations-widget-de.png

source:/plugins/dctranslations/doc/dctranslations-widget-en.png

Le troisième, enfin, permet de remplacer le widget de choix des langues en sélectionnant les articles par leur langue s'ils existent dans la langue en question, pas seulement par leur langue d'origine. Il est appelé « Montrer seulement les billets en ... ». L'autre widget est gardé pour des raisons historiques, mais remplit moins de services (et s'appelle toujours « Langues du blog »).

Pour signaler un bug ou aider cette extension

Le mieux est de me contacter par courrier (pour un bug) ou de laisser un commentaire (pour dire que vous avez testé cette extension). En cas de mise à jour, je modifierai ce billet.

Liste des changements

Note : ce journal est non-exhaustif, généré automatiquement, en anglais, et sans doute non-informatif avant 2009.

  • Local SVN release 343 (jcdubacq,2009-04-22)
    • Reindent code
    • Change licence to GPL version 2.0
  • Local SVN release 322 (jcdubacq,2009-02-07)
    • Translate blog name and description also
  • Local SVN release 305 (jcdubacq,2009-01-27)
    • Fix (mostly german) locales
  • Local SVN release 299 (jcdubacq,2009-01-26)
    • Adapt to version 0.3 of stacker (behavior initStacker)
  • Local SVN release 278 (jcdubacq,2009-01-01)
    • Finalize documentation, make new release utility, release
  • Local SVN release 275 (jcdubacq,2008-12-26)
    • Reinstate version keyword
  • Local SVN release 274 (jcdubacq,2008-12-26)
    • Delete svn counter
  • Local SVN release 273 (jcdubacq,2008-12-26)
    • Fix tag feed, add SVN revision to number
  • Local SVN release 260 (jcdubacq,2008-11-18)
    • Merge supportedlang and dctranslations
  • Local SVN release 242 (jcdubacq,2008-11-11)
    • Reformatting
  • Local SVN release 168 (jcdubacq,2008-05-06)
    • Order plugins and themes
  • Local SVN release 43 (jcdubacq,2008-02-15)
    • Adding all other personal plugins

Travail restant à faire

  • Permettre la suppression de traductions de façon plus naturelle.
  • translatedwidgets: faire un widget texte multilingue.

Sites map