eZPublish& Twig trans filter:中文翻译

时间:2015-08-07 08:12:54

标签: symfony twig translation chinese-locale ezpublish

我目前正致力于eZPublish5网站的翻译工作,该网站将包含4种语言:法语,英语,俄语和中文,法语为原始语言和语言环境后备。

后端内容的翻译工作正常,但我正在努力翻译模板部分,我已将其封装在{% trans %}过滤器中。我不认为它与区域设置问题直接相关,因为{% trans %}标签使用的是法语,英语和俄语,但不是中文。

这样做我用过 php ezpublish/console translation:update --output-format=xlf locale bundle --force生成了 messages.fr.xlf messages.en.xlf messages.ru.xlf

使用中文时,如果我使用{{ app.request.locale }}将语言环境转储到树枝中,我会得到 zh_TW 作为结果,所以我生成了一个 messages.zh_TW.xlf ,没有任何结果。

在关于所有类型语言代码的loooong网络搜索之后,我开始失去耐心并产生:

  • messages.chi.xlf
  • messages.chi-TW.xlf
  • messages.cn.xlf
  • messages.zh.xlf
  • messages.zh-tw.xlf
  • messages.zh_TW.xlf

无济于事。 这个项目是我第一次使用eZpublish,我是Twig / Symfony逻辑下的第一个多语言。

显示语言声明的一些代码:

//ezpublish/config/ezpublish.yml
ezpublish:
    system:
        chi:
            languages:
            - chi-TW
            - fre-FR
        session:
            name: eZSESSID

知道我做错了什么吗?

1 个答案:

答案 0 :(得分:1)

SOOOO。 我找到了解决问题的解决方案,我很惭愧在这里分享。

-------巨大的启示!-------

$php app/console cache:clear

前三个语言文件已经创建了很久以来,缓存已经被清除了很多,所以这就是为什么这些trans文件正常工作。我清除了缓存,现在一切正常。 顺便说一下,我自己的问题的答案是: messages.zh_TW.xlf

现在我要隐藏自己一段时间。