Forums / Setup & design / Problems to setup extension for i18n

"Please Note:
  • At the specific request of Ibexa we are changing this projects name to "Exponential" or "Exponential (CMS)" effective as of August, 11th 2025.
  • This project is not associated with the original eZ Publish software or its original developer, eZ Systems or Ibexa".

Problems to setup extension for i18n

Author Message

Ulrich L.

Wednesday 18 October 2006 12:55:09 pm

Hi all,

while multilingual content works fine, I have problems to make an own extension for translations with i18n running.

I setup my site as follows:

Extension "dictionary" is activated in settings/override/site.ini.append.php:

[ExtensionSettings]
ActiveExtensions[]=ezdhtml
ActiveExtensions[]=ezpaypal
ActiveExtensions[]=dictionary

Regional settings in settings/siteaccess/de (first language is english with sitaccess en, de is for German version) look like this:

[RegionalSettings]
Locale=ger-DE
SiteLanguageList[]=ger-DE
SiteLanguageList[]=eng-GB
SiteLanguageList[]=fre-FR
TextTranslation=enabled

In the extension directory I put the directory "dictionary" with subdirectories "settings" and "translations".
Extension/dictionary/settings/site.ini.append looks as follows:

[RegionalSettings]
TranslationExtensions[]=dictionary

Extension/dictionary/translations/ger-DE/translations.ts is

<!DOCTYPE TS><TS>
<context>
    <name>extension/dictionary</name>
    <message>
        <source>Content</source>
        <translation>Inhalt</translation>
    </message>
    <message>
        <source>Price</source>
        <translation>Preis</translation>
    </message>
    <message>
</context>
</TS>

Template code in one of my templates says:

<h6>{"Content"|i18n("extension/dictionary")}</h6

However - you are aready expecting it! - I don't get translated text (in the example above it should be "Inhalt" instead of "Content") with this piece of code. (I cleared all caches before.)
I get a debug warning instead:

No translation for file(translation.ts) in context(extension/dictionary): 'Content' with comment()

What is still wrong here?

Thanks for any help,
Ulrich

Łukasz Serwatka

Thursday 19 October 2006 12:01:55 am

Hi Ulrich,

i18n() is very sensitive on white-spaces, hidden extra chars, etc. Make sure that your translation.ts file is "clean". Remember to clear all the cache.

Check also if there is no typo somewhere.

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Claudia Kosny

Thursday 19 October 2006 3:31:39 am

Hi Ulrich

Maybe it is just a typo but in your post you mentioned the filename

Extension/dictionary/translations/ger-DE/translations.ts

The file must be named translation.ts (you have an 's' to much in the filename).

Claudia

Ulrich L.

Thursday 19 October 2006 12:23:31 pm

@Lukasz: I cannot figure out any redundant whitespaces. The posting above including the content of the translation.ts file has been created using copy&paste, and there is no wrong character inside, I think.

@Claudia: This was my fault while typing this posting, the real file names are fine.

Hmmm....

Ulrich L.

Thursday 19 October 2006 11:13:02 pm

Heureka! I found it!
In the translation.ts file there is just one open tag "message" too much. Having removed this, everything works perfectly!