【问题标题】:Drupal : how to change current language of taxonomyDrupal:如何更改当前的分类语言
【发布时间】:2011-06-01 21:26:50
【问题描述】:

我有一个英文 Drupal 网站,其中包含英文的内容,即节点和分类法。现在我想将所有内容转换为西班牙语。我也想保留英文内容。

为了分类翻译,我安装了 Locale 和 i18n 模块。我搜索了所有分类并添加了他们的西班牙语翻译。但是,当我将网站的默认语言切换为西班牙语时,分类法继续以英语显示。

有什么想法或建议吗?

【问题讨论】:

  • 您是否查看了所有分类术语并将其语言设置为英语?
  • 我对词汇表使用“本地化”模式。但是我通过翻译界面设置了英语和西班牙语的翻译。但是还是不行。
  • 我遵循的步骤是 1. 安装 i18。 2. 添加西班牙语 3. 保留默认语言为英语 4. 将词汇模式设置为本地化术语。 5.按照说明添加翻译 6.现在当我将网站的默认语言设置为西班牙语并尝试使用 t($taxonomyterm, array(), $language->language) 打印分类术语时,它不起作用。请让我知道我是否错过了什么

标签: drupal drupal-6 internationalization multilingual taxonomy


【解决方案1】:

要翻译分类术语,您应该使用分类翻译模块(Internationalization package 的一部分)。分类词汇及其术语有三种翻译模式。如果您想保留相同的术语但翻译它们的标题(和描述),您应该将您的词汇模式设置为Localize terms。执行此操作时,以站点默认语言输入每个术语(在您的情况下可能是英语)。然后,使用translate strings interface,您可以提供翻译。

查看Multilingual Taxonomy handbook page了解更多信息。

分类法翻译模块应处理标准术语显示,以便它们使用翻译。如果您需要检索术语名称和描述以在某些自定义代码中输出,则必须使用i18ntaxonomy_localize_terms 来获取翻译。将术语的名称或描述传递给 l() 将不起作用。

【讨论】:

  • 谢谢@mongolito404。我遵循了您的所有指示,即 1. 安装了 i18。 2. 添加西班牙语 3. 保留默认语言为英语 4. 将词汇模式设置为本地化术语。 5.按照说明添加翻译 6.现在,当我将站点的默认语言设置为西班牙语并尝试使用 t($taxonomyterm, array(), $language->language) 打印分类术语时,它不起作用。(注意 I已将 $language 声明为全局)
  • 输出还是原来的条款
  • 请参阅原始响应中添加的有关 i18ntaxonomy_localize_terms 的部分。
  • 以下代码理想情况下应该在数组中打印西班牙语术语(当我将默认语言更改为西班牙语时),但它没有。
  • $vid = 1; $items = 数组(); $terms = taxonomy_get_tree($vid); if (module_exists('i18ntaxonomy')) $termsnew = i18ntaxonomy_localize_terms($terms, array('name', 'description'));打印“
    ”; print_r($termsnew);打印“
    ”;
猜你喜欢
  • 2010-12-06
  • 2018-03-29
  • 1970-01-01
  • 1970-01-01
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 2019-07-15
  • 1970-01-01
相关资源
最近更新 更多