【问题标题】:Kentico10 Cultures not independent [closed]Kentico10 文化不独立[关闭]
【发布时间】:2017-11-30 14:27:58
【问题描述】:

我建立了一个 kentico10 网站,但不同的语言以某种方式链接在一起。因此,如果我对网站的西班牙语版本进行更改,其他人也会随之更改。任何想法以及这可能是什么?

【问题讨论】:

  • Brendon,这里的关键要点之一是 - 在 Kentico 中 - Design 选项卡并不真正属于页面,它属于页面模板。在上面的示例中,您没有更改西班牙语版本,而是更改了共享模板。作为一项规则,我尽量避免在设计选项卡中进行更改以加强这一点,并将我的编辑更改集中在页面选项卡和表单选项卡中。

标签: content-management-system multilingual kentico culture


【解决方案1】:

如果您在模板布局中硬编码了文本/代码,那么您将需要使用本地化资源字符串来获取正确的值,或者通过使用不同的 webpart 和区域来更新您的模板以使其更具动态性。我建议不要为每种语言使用不同的模板,这将成为管理的噩梦。使您的模板具有足够的动态性,以便为不同的语言放置不同的内容。

在您的示例中,页脚文本似乎不是英文的,它应该是。这是一个完美的例子。在模板布局的那个位置添加一个 webpart 布局,然后在设计视图上,在其上放置一个可编辑的文本 webpart。然后,当您在语言之间进行更改时,您可以根据每种语言编辑文本。我提到的另一种选择是使用localization resource string。这些

【讨论】:

    【解决方案2】:

    您可以按照自己的方式进行设置。转到属性\模板 - 并为您的语言版本选择不同的模板。读 Developing unique page templates for specific languages

    【讨论】:

      【解决方案3】:

      这是因为 Kentico 提供了一种机制来翻译多语言网站上的文档,但不提供翻译整个页面模板的机制。

      您可以为每种语言使用相同的模板,方法是为您在模板中输入的任何文本使用本地化的资源字符串。 (在本地化 > 资源字符串下)。

      Kentico 10 Localized resource strings

      然后您可以在宏中使用资源字符串的键来显示当前语言的资源字符串。根据上面的截图 如果当前语言是英语,{$ObjectType.CompanyXYZ_Doctor$} 将呈现为“Doctor”,如果当前语言是法语,则呈现为“Docteur”。

      【讨论】:

      • Kentico 确实提供了翻译模板代码的方法。请参阅文档docs.kentico.com/k10/multilingual-websites/… 问题是 OP 在模板中有硬编码文本。 OP 需要更新他的模板以使其更具动态性并遵循在 Kentico 开发本地化站点的标准。
      猜你喜欢
      • 2018-07-29
      • 2012-08-20
      • 2013-11-24
      • 1970-01-01
      • 1970-01-01
      • 2014-02-12
      • 2013-02-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多