Translating plugins

From Koha Wiki
Jump to navigation Jump to search

Relevant bugs

Bug 25099 - Sending a LANG variable to plug-in template

From the bug description:

To make internationalised plug-ins, it may be useful to get the lang
from C4::Languages::getlanguage. This patch adds
C4::Languages::getlanguage result to a LANG variable which is sent to
the template plugin.

In your plugin, you can add a i18n directory containing
lang[-DIALECT].inc files with a TOKENS hash like this:

   [%
     TOKENS = {
       PLUGIN_NAME = "Mannequin"
       PRESENTATION = "Voici un example d'outil."
       CLICK_ME = "Cliquez moi !"
     }
   %]

The plugin template can then include such a lang[-DIALECT].inc with a
hash containing all the plugin strings:

   [% TRY %]
       [% PROCESS "$PLUGIN_DIR/i18n/${LANG}.inc" %]
   [% CATCH %]
       [% PROCESS "$PLUGIN_DIR/i18n/default.inc" %]
   [% END %]

The strings are then printed in the template with something like:

   [% TOKENS.PRESENTATION %]

Examples in the wild