From Zen Cart(tm) Wiki
Revision as of 05:30, 9 June 2006 by DrByte (talk | contribs) (Language packs)
Jump to: navigation, search


Translations are done on a volunteer basis, so the quality and even installation instructions may vary.
You are always welcome to help improve a translation, by either making your suggestions known to the author of the translation or by making your wanted changes yourself.

Installing a language pack

  1. Download the language pack.
  2. If the language pack was written for an older version of Zen Cart, you'll need to update the language pack before proceeding.
  3. Upload the files and directories to your server.
  4. Go to Admin > Localization > Languages and click the "new language" button. Fill in the details and make sure you put the correct directory in "Directory" with proper case - 'English' is not the same as 'english'.

Make sure that the files and directories are uploaded to the appropriate places, which are:

  • includes/languages/<your language>.php
  • includes/languages/<your language>/
  • admin/includes/languages/<your language>.php
  • admin/includes/languages/<your language>/
  • includes/templates/template_default/buttons/<your language>/



Some language packs may not include the admin files, which will result in errors when you enter the admin area. To solve this issue, simply copy the english language files for the admin area into a directory for your language.

In other words, copy



admin/includes/languages/<your language>.php
admin/includes/languages/<your language>/

Note to translators: If you haven't translated the admin area, please include the english language files for the admin in your language pack so users don't have to experience this.

Creating a new translation

Read about editing in PHP to learn how to properly edit text definitions.

The following files and directories with subdirectories should all be included in the language pack, whether they're translated or not

  • includes/languages/<your language>.php
  • includes/languages/<your language>/
  • admin/includes/languages/<your language>.php
  • admin/includes/languages/<your language>/
  • includes/templates/template_default/buttons/<your language>/

All paths should be included in the package as shown above in order to make it easy to extract onto a server without the need to move files or directories around.

Additionally but not required, there's the SQL file


which contains text that will appear on certain admin pages. This means that the admin area isn't 100% multi-lingual, but this will most likely be dealt with in a future version of Zen Cart.

You should also include a file named README.txt where you say something about what has been translated and what has not, along with any other information you feel is appropriate.

Info.png setlocale()
As the minimum required version for PHP now is 4.3, we can specify multiple locales for setlocale():

It makes it easier for users if they don't have to know the correct locale themselves, and we can guess it for them by editing the call to setlocale() in the following files to use the above code:

  • includes/languages/<your language>.php
  • admin/includes/languages/<your language>.php

The Zen Cart download area isn't working at the moment, but the team is working on a new support site. Meanwhile, there seems to be no organised way of uploading your translations, so untill the new support site is done, feel free to contact dwno if you need server space for your translation. (If anyone else have a better solution, let's hear it. ;-))

Updating an older translation

If a language pack is out of date, you can easily make it up to date by comparing the english language files from the Zen Cart version that the language pack you wish to update was made for against the english language files of the new Zen Cart version you wish to update to.

Here's how to do that:

  1. Download the Zen Cart version that matches the original language pack and the Zen Cart version you wish to update the language pack for.
  2. Unpack the 2 packages into 2 separate directories
  3. Open a comparison program like WinMerge(for windows) or FileMerge (for MacOSX - free utility with Xcode developer tools from Apple.)
  4. Compare the 2 versions of the directories includes/languages and admin/includes/languages, and be sure to include subfolders
    • If a file exists only in the older release, delete it from your language pack
    • If a file exists only in the newer release, copy that english language file into your language pack and translate it
    • If a file has changed between the 2 versions, compare those english files to see what exact changes has been made, and update your language pack accordingly
  5. Compare the 2 versions of the directory includes/templates/template_default/buttons/english/ and see if there are any new files. You may also consider updating the images if anyone have changed, but that's probably not strictly necessary.

Please share your updated translation with the community. Thank you!

<div id="List_of_known_language_packs" />

Language packs

Also see the download area for a lot of older translations.

If you're looking for older versions of Zen Cart or the default English language files, they can be found at the project's section at

If you know of any language packs not mentioned here, please add them to this list in alphabetical order and remember to provide a download link.

Wanted translations

Feel free to add any languages you would like to see for Zen Cart here. This could be used to connect people who wants to translate into a certain language, so you might want to leave a way of contacting you if you're willing to participate in translating.

  • Japanese: 1.2.6d
  • Korean: 1.2.6d

International support sites