It's better when it's simple

User Tools

Site Tools


Localizing DokuWiki (the Software)

DokuWiki's user interface can be configured to use any language by setting the appropriate option in the config.

You can help translating DokuWiki to your language by visiting the DokuWiki Localization Hub. We recommend to join the I18N Mailing List to be informed when new strings are added and need to be translated.

Localizing DokuWiki and its plugins and templates

Most of DokuWiki and its plugins and templates only provide localization for English and some other languages. We encourage you to translate them into your native language.

Important things to keep in mind when translating:

  • Please try to complete your countries main official language before starting another dialect.
  • If you do major translation work it is recommended to check your translations in the development snapshot. This gives you the opportunity to correct errors and verify the layout in your language.
  • In some languages words and sentences tend to get longer than the original English words. Keep in mind that your translation needs to work on any screen size and it often looks better if words are in line with other items on the page.
  • When translating technical descriptions of external origin like the API's delivered by Github, Twitter, Google etc please read the external manual first. This is especially important for translating interfaces. Maybe a localized version of the manual or helppages is already at the external source and you can use all or part of these.
  • As DokuWiki wants to be standards-compliant, consider learning about these regarding your language first. You can learn about correct spelling and interpunction from dictionaries or webpages maintained by public institutions.
  • Always keep the format strings intact, i.e. identical. Strings like these %1$d and <i>%s</i> and <strong>Update:</strong>. The word Update: should be translated but the word <strong> not.

Howto add a new language

To prevent spam, only has languages which exist in the source code DokuWiki. To initiate a new language you can send a pull request with some translated lines or if you do not program you can open an issue in our Bug tracker. Please use ISO 639-1 (2-letter) and ISO 639-3 (3-letter) language code format, see… When accepted the language becomes available for easier translation via the translation tool.

Directions for consistent translations

At the consistent translations page you can find:

  • some preferred translations for regularly used words
  • and how to handle placeholder order in non-english strings.


Plugin authors can register their plugin at where you can easily help to translate the plugin.

If a plugin is not translatable via the translation tool you can do it manually:

  • Copy the content of lib/plugins/<pluginname>/lang/en/ to
  • Edit the contained .php and .txt files in a UTF-8 capable text editor
  • Zip up the new language folder and send it to the author for inclusion in future releases

For any further questions or general help you could send a mail to the I18N-Mailinglist or ask for help in the IRC-Channel.

Changing some localized texts and strings in your installation

There are many localized texts in DokuWiki like emails that are sent on registration, password forgotten, the text above the edit form, and more. Also the strings used in the buttons and links are translated. You can modify these by creating custom files with your version of the texts. This way your changes aren't overwritten on upgrades.

You can change these texts by copying the <name>.txt files or copying some strings from lang.php:

  • from inc/lang/<ISO 639-1-lang-code>/
  • to conf/lang/<ISO-lang-code>/

and editing the copied content.

You can do the same thing for plugins and templates by copying <name>.txt or some strings from lang.php:

  • from lib/plugins/<plugin>/lang/<ISO-lang-code>/
  • to conf/plugin_lang/<plugin>/<ISO-lang-code>/
  • from lib/tpl/<template>/lang/<ISO-lang-code>/
  • to conf/template_lang/<template>/<ISO-lang-code>/

Copy only strings from lang.php which you will modify. The remaining strings are read from the original file.


Example of an English lang.php file. This is possible for every language.

 * Customization of the english language file
 * Copy only the strings that needs to be modified
$lang['btn_admin']             = 'Admin Panel';

Translating (the documentation)

Translating the DokuWiki documentation here at is encouraged. Translated pages are to be named like their English counterparts and stored in a separate namespace based on their ISO code. To make this easier the Translation Plugin adds links to existing and missing translations in the upper left corner of every page.

Only languages manually configured by the administrator are shown in the selector. If you want to add translations for a language currently not shown, just manually create the pages in the appropriate language subnamespace and send a mail to the I18N mailing list asking for your language to be added.

Translation Guidelines

  • Feel free to create any missing translation
  • Only pages in the top namespace should be translated
  • Translated pages need to have the same (English) name as the original page
  • Translated pages have to be stored in a sub namespace of the root namespace named by the ISO language code
  • Please don't add stubs saying the page does not exist, yet.
  • Please refrain from cluttering translations with credit lines – if you want to be recognized as translator, log in first
  • A good starting point for translations is the manual
  • You may also want to translate the sidebar to your language

Disabling translation feature for certain pages

Where translation is not sensible the ~~NOTRANS~~ macro should be inserted into the page.

See also

localization.txt · Last modified: 2023-12-11 20:15 by oiv

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki