【问题标题】:SilverStripe blog module translationSilverStripe 博客模块翻译
【发布时间】:2011-05-26 13:13:32
【问题描述】:

我注意到 SS 的博客模块有硬编码的文本片段——我需要翻译(法语)。我发现代码在 /blog/templates/Includes/BlogSummary.ss 但是当我修改它时,前端没有任何变化......

我尝试运行 /dev/build/?flush=all 但什么也没有......仍然。

有什么想法吗?帮助将不胜感激。提前致谢。

【问题讨论】:

  • 您是否已将 ?flush=All 添加到相关页面本身?

标签: content-management-system silverstripe


【解决方案1】:

你设置了你的语言环境吗?我最近用英语和西班牙语建立了一个网站并使用了这个设置。

//  add similar code to your _config.php file
#Translatable::set_default_locale('en_US'); 
#Translatable::set_allowed_locales(array( 
#   'en_US',
#   'es_US'
#));

此外,我必须将 i18n::set_locale() 代码添加到我的内容控制器中的 init() 函数中,以使模板翻译工作。

<?php

class SmartLanguageExtension extends DataObjectDecorator {

    function contentcontrollerInit() {
        i18n::set_locale(Translatable::get_current_locale());
    }

}

在我的例子中,我为 Page_Controller 类添加了一个扩展,以便稍后重用。

//  _config.php file
Object::add_extension('Page', 'SmartLanguageExtension');

【讨论】:

  • 感谢您的帮助!事实上,我应该提到我没有使用 Translatable 模块。我找到了解决方案!由于我正在构建我的第一个 SS 站点,因此我的站点没有 /silverstripe-cache/ 文件夹(在我读过的任何文档中从未见过该步骤)。现在我可以手动删除缓存以查看更改的结果。还有一个问题……为什么这个文件夹不是SS安装包的一部分……?仍然是个谜。
  • 另外,在创建文件夹之前,我不知道缓存文件的去向。但可以肯定的是,创建了缓存文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多