我已设置SiteConfig
扩展名(以yml声明,经过测试并确认),我试图更改Title
字段(网站标题的字段)到只读字段。
我知道在父类SiteConfig
中,Title
字段存储在变量中。 SiteConfig 第85行:$titleField = new TextField("Title", _t('SiteConfig.SITETITLE', "Site title"))
所以在我的分机SiteConfigTweaks extends DataExtensions
中,我尝试过:
public function updateCMSFields(FieldList $fields) {
$titleField->performReadonlyTransformation();
}
但这并不能解决问题。我在这里缺少什么?
答案 0 :(得分:3)
我建议你做以下事情:
public function updateCMSFields(FieldList $fields)
{
if ($titleField = $fields->dataFieldByName('Title')) {
$fields->replaceField(
'Title',
$titleField->performReadonlyTransformation()
);
}
}
首先,您获得现有的Title-field并检查其存在性。然后用其只读变换变量替换该字段。