silverstripe 3 addFieldToTab"设置"

spi*_*ala 10 silverstripe content-management-system

我想在编辑页面视图的现有选项卡"设置"中添加一个字段(在屏幕截图中标记).

我试过这个:

$fields->addFieldToTab('Root.Settings', new TextField('Intro'));
Run Code Online (Sandbox Code Playgroud)

但它只是在包含附加字段的辅助选项卡"主要内容"旁边添加了一个新选项卡.

Silverstripe Edid页面视图

Sha*_*lja 18

对于SilverStripe 3.0,您需要覆盖模型中的getSettingsFields()函数,例如

function getSettingsFields() {
    $fields = parent::getSettingsFields();
    $fields->addFieldToTab("Root.Settings", new TextField('Intro'));
    return $fields;
}
Run Code Online (Sandbox Code Playgroud)

在SilverStripe 2.x中,这是在getCMSFields()函数中完成的.