PrestaShop provides you with a full translation tool for your shop. This helps you add and edit your pages translations. This way, you are the master of your shop, and can handle your translated strings, or expressions, without having to wait for official translators to publish their corrections. Indeed, PrestaShop comes in many languages, and both the administration panel and the default theme are already translated in more than 20 languages.
Even if you do not want to correct the translators' work, you might want to change the wording they chose to use (less formal, less wordy, etc.), and customize the various available text, thus tailoring your website to your audience; for instance, a hip-hop clothing shop might be better off using different expressions from that of a luxury watches shop.
The process of adapting a program to foreign languages is called internationalization and localization, or i18n and L10n for short. The PrestaShop team has chosen to use its own built-in translation tool, so that anyone with a PrestaShop installation may customize their shop to their needs. |
|
The most important tool of the "Translation" page is in the "Modify translations" section. This is where you can choose to add a translation, and completely customize each and every sentence if you wish so.
Select the part of the current translation that you wish to edit:
If you are looking for a specific expression either in "Back office", "Theme" or "Email templates" sections, but you are unable to find it, it might be under the "Other translations" section. |
Some categories have a second drop-down list, which lists the available themes. PrestaShop themes have their own strings, but can also have their own modules and email templates. The drop-down list enables you to choose which theme you want to work with.
Once your selection is done, choose the language code of the language in which you wish to edit that category of translation and click on "Modify".
A new page opens where you can manage translations. It is organized into several sections.
At the top of the page, there is a search bar to help you find a specific word, sentence or expression that you could want to modify or translate. On the right, it indicates the number of expressions available in this section, and how many are not translated yet, in the language you selected.
Enter the searched expression and click "Search" to find it.
The expressions matching your search will be displayed below. You can either modify or translate it and click "Save" to save your changes. Clicking "Reset" will replace your custom translation by the official PrestaShop translations: either restore the initial translation if a translation was available or empty the field if no translation was available.
The left column is here to help you browse through the various strings available in the category you want to translate or modify. It relies on what we call translation domains: each expression within PrestaShop is assigned a domain, giving translators more context, and making it possible to know where this expression is displayed in PrestaShop, and what it is about.
For the back office and front office section, you will see two main domains, the second being modules. Indeed, modules have content that can either be displayed on the back or the front office, so these expressions will be available when you want to translate the back or front office.
Next to each domain, the number of missing expressions is displayed. It helps you know where you should focus is you want to fully translate PrestaShop.
To see the expressions for a domain, click its name: you will see all the expressions on the left.
While at first it can seem complicated to browse through translations domains, you will quickly understand how it works and you will easily find your way through the domain tree. Each section (back office or theme) is further divided into functional domains, matching each sections of the back office (or theme).
For example, for the back office, the following domains correspond to their matching pages in the interface:
These domains can have several sublevels: Feature, Notification, and Help. It means the following:
On the other side, some domains are more generic:
The same logic can be applied to the theme translations:
|
When you open a domain to see all its strings, you can then modify existing translations, or fill out missing ones.
Clicking "Save" will logically save your changes.
Clicking "Reset" will replace your custom translation by the official PrestaShop translations: it either restores the initial translation if a translation was available or empties the field if no translation was available.
Some strings use a special syntax with placeholders, such as When you find a string with such placeholder, it means that PrestaShop will replace it with an actual dynamic value before displaying the translated string. Technically, having placeholders prevents strings from being split in parts. |
In case of a string with a placeholder, you should make sure that the content of that placeholder will be placed in the correct flow of the sentence, and avoid literal translation.
Numbered placeholders (%1$s
, %2$d
, etc.) enable translators to rearrange the order of the placeholders in the string while maintaining the information each is replaced with. This way, a French translator could choose to translate "Order #%1$d from %2$s" into "Commande n°%1$s du %2$s" or "Le %2$s, commande n°%1$s".
The way email templates translations are handled is a bit different from the other translations.
Strings are split into fieldsets, but they are not simple text fields anymore. Each e-mail has two templates: a HTML one, which is styled and colored, and a text one, when is plain and simple. While the plain text one can be edited directly in the textfield, the HTML one can only be edited by clicking on the "Edit this e-mail template" button at the bottom of the preview. That click turns the preview into a WYSIWYG textfield (what you see is what you get), with a complete editor at the top (based on TinyMCE: http://www.tinymce.com/). In addition to editing the text, you can change the design as you see fit, for instance you can change the colors in order to adhere to your shop's design.
Note that the e-mail templates feature placeholders, such as {lastname}
or {shop_name}
, which PrestaShop replaces with the actual values when sending the e-mail. Make sure to keep them in both your translation.
PrestaShop translations are available in packs, which combine all the different translation categories into a zip file. Many language packs are available freely for you to download and install, directly from the PrestaShop servers. PrestaShop will take care of downloading the language pack, unpacking it and creating the correct sub-folder in your installation's /translation
folder.
You can then manage the new language in the "Languages" page of the "Localization" menu.
In the case where you do not want to use an official PrestaShop translation pack, but rather a custom one (either provided by someone you know, or one that you exported from another PrestaShop installation), then this tool is for you.
Select the Zip file, select the theme to which you want that pack to be applied to, then click the "Import" button, and it will install the pack in the /translation
folder.
If there is already a language folder with the same ISO 639-1 code, it will be replaced by the files from the pack you are importing. |
You can create your own language pack using this tool, either as a way of making a backup of your customizations, or in order to share your translations with other PrestaShop installation – your own or someone else's.
Simply choose the language and the theme of the translation you wish to export, and click the "Export" button.
Note that the pack will contain the theme that your translation is supposed to support.
You can copy the content of one language to another. This is especially useful when you wish to replace a theme's language with the same language from another theme.
Choose the source language and theme, then the destination language and theme, then click the "Copy" button. In most case, the language should remain the same in both drop-down lists.
If there is already a language folder for this language in the destination theme, it will be replaced by the files from the language and theme you are copying. You might prefer to first create a new language for the destination theme before copying the source language to it. |