我正在使用带有silverstripe-fluent模块的silverstripe 4。我无法翻译本机SiteConfig(站点名称和标语/标语)怎么办?
感谢您的帮助!
奥瑞莲
答案 0 :(得分:1)
我有同样的问题。仅翻译特定变量。
解决了类似问题:
YML(config.yml)
SilverStripe\SiteConfig\SiteConfig:
extensions:
- Pixelparker\Extensions\SiteConfigExtension
- TractorCow\Fluent\Extension\FluentExtension
SiteConfigExtension.php
private static $translate = [
'CookieMessage'
];
就这样。
答案 1 :(得分:0)
已解决!
在TractorCow\Fluent\Extension\FluentExtension
中添加Silverstripe\SiteConfig\SiteConfig
:
---
Name: myproject
---
SilverStripe\Core\Manifest\ModuleManifest:
project: app
Silverstripe\SiteConfig\SiteConfig:
extensions:
- TractorCow\Fluent\Extension\FluentExtension
- CustomSiteConfig
并在配置扩展类中扩展FluentExtension
而不是DataExtension
>
use SilverStripe\Forms\FieldList;
use SilverStripe\Forms\HTMLEditor\HTMLEditorField;
use TractorCow\Fluent\Extension\FluentExtension;
class CustomSiteConfig extends FluentExtension
{
private static $db = [
'FooterContent' => 'HTMLText'
];
public function updateCMSFields(FieldList $fields)
{
$fields->addFieldToTab("Root.Main",
new HTMLEditorField("FooterContent", "Footer Content")
);
parent::updateCMSFields($fields);
}
}
答案 2 :(得分:0)
如果您只想翻译SiteConfig
的默认Title
和Tagline
数据库字段,则可以应用Fluent扩展名并定义要在{ {1}}配置文件,如下所示:
.yml