【问题标题】:t() function does't add the string to the translation interfacet() 函数不会将字符串添加到翻译界面
【发布时间】:2011-10-04 10:43:48
【问题描述】:

我在我的一个视图中使用 customfiel php 代码来翻译字符串,因为 2.x 的视图不利于本地化。我使用以下 php 代码:

echo t('Watch Video');

但字符串没有出现在“翻译界面”部分。

感谢您的帮助。

卢卡斯

【问题讨论】:

    标签: drupal views translation


    【解决方案1】:

    接受的答案是错误,因为本地化脚本没有扫描任何内容。字符串在第一次以非标准语言通过 t() 函数时立即在翻译接口中注册。

    因此,对于翻译而言,您编写的代码是经过评估(从数据库解释)还是存在于源代码中并不重要。显然,好的做法是将代码保存在它所属的文件中。

    This blog post 描述了将您的字符串导入翻译界面需要做什么。

    【讨论】:

      【解决方案2】:

      本地化数据库是通过扫描源代码、查找t() 函数(以及Javascript 中的Drupal.t())实例来构建的。

      如果有问题的代码已输入到 Drupal 管理区域的文本框中,则它不在源代码中,因此不会被本地化进程拾取。

      出于这个原因(以及其他原因),您应该在管理文本框中输入尽可能少的代码。通常有另一种方法可以实现相同的目的,但即使没有,您也应该将代码减少到最低限度 - 最佳实践是除了单行函数调用之外什么都没有:让它调用一个函数,并在您的模块或主题中编写功能代码。这样,当您运行本地化时,它将被解析。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-09
        • 2018-03-04
        • 1970-01-01
        相关资源
        最近更新 更多