Joomla INI翻译

时间:2014-06-17 07:16:53

标签: joomla joomla2.5 translation ini

我需要在我的ini文件中翻译一个带有“()”或“/”符号的单词,但是当我这样做时它似乎会制动。

例如。

sometext(text)="otherLanguagetext(text)" <-- this causes an error in the ini file an brakes all translations.
sometext/text = "someOthertext/text" <-- Broken also

让空格正常工作:

Some text="Some text1" <--Works

事实是,原始语言是数据库生成的,没有任何翻译标签或类似joomla翻译标签。

我只是以这种方式输入要翻译的单词。 我搜索了一个可以自动解决这个问题的ini编辑器(例如放置'/'或其他东西),但我没有运气。

3 个答案:

答案 0 :(得分:0)

试试这个,

SOME_TEXT  = "otherLanguagetext(text)" 
SOME_OTHER_TEXT = "someOthertext/text" 

希望它有效

答案 1 :(得分:0)

尝试在这些符号之前使用反斜杠:

"otherLanguagetext\(text\)"
"someOthertext\/text"

P.S。你不能在你的常量中使用任何特殊符号!尝试将它们命名为:

OTHER_LANGUAGE_TEXT
SOME_OTHER_TEXT

答案 2 :(得分:0)

您的示例key无效。 INI个文件by definition不能包含以下任何字符:?{}|&~![()^"

  

注意:保留字不得用作ini的键   文件。这些包括:null,yes,no,true,false,on,off,none。   值null,off,no和false导致“”。值,是和真   结果为“1”。字符?{} |&amp;〜![()^“不得在任何地方使用   关键,并在价值中有特殊意义。

- http://www.php.net/manual/en/function.parse-ini-string.php

Joomla language files also have their own specification,如果不遵循则会在Joomla加载并解析语言文件时导致错误。

INI文件和Joomla语言文件中,值对特定字符也有特殊解释,并且需要转义才能使用某些字符,如双引号等。

最后,Joomla有language overrides允许最终用户覆盖由核心软件或第三方扩展设置的任何字符串,这也会影响密钥的翻译方式。