Silverstripe CMS에서 새 메뉴 항목을 만들려고합니다. 아직도 난 이해가 안가. 내가 뭘 잘못했는지 모르겠다. 그것은 Silverstripe 3.6에 관한 것입니다.Silverstripe CMS에 새 메뉴 항목 추가
"/ dev/build"및 "dev/build? flush = 1"도 시도했습니다. 그러나 결과는 없습니다.
Footerinfos.php (내 사이트/코드 /)
class FooterInfos extends ModelAdmin {
public static $managed_models = array('FooterInfo');
static $url_segment = 'footerinfo';
static $menu_icon = 'framework/admin/images/menu-icons/network.png';
static $menu_title = 'Footer';
}
Footerinfo.php (내 사이트/코드 /)
class FooterInfo extends DataExtension {
static $db = array(
'FooterHead1' => 'Varchar(255)',
'FooterHead2' => 'Varchar(255)',
'FooterHead3' => 'Varchar(255)',
'FooterText1' => 'HTMLText',
'FooterText2' => 'HTMLText',
'FooterText3' => 'HTMLText',
);
function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldToTab('Root', new TabSet('Footer'));
$fields->addFieldToTab('Root.Footer', new TextField('FooterHead1', 'Footer - Kop 1'));
$fields->addFieldToTab('Root.Footer', $h1=new HTMLEditorField('FooterText1', 'Footer - Tekst 1'));
$fields->addFieldToTab('Root.Footer', new TextField('FooterHead2', 'Footer - Kop 2'));
$fields->addFieldToTab('Root.Footer', $h2=new HTMLEditorField('FooterText2', 'Footer - Tekst 2'));
$fields->addFieldToTab('Root.Footer', new TextField('FooterHead3', 'Footer - Kop 3'));
$fields->addFieldToTab('Root.Footer', $h3=new HTMLEditorField('FooterText3', 'Footer - Tekst 3'));
$h1->setRows(7);
$h2->setRows(7);
$h3->setRows(7);
return $fields;
}
}
업데이트 14 : 53u :
그것은이 이제 메뉴 항목을 만들 수 있습니다. 선택 메뉴 대신이 필드에 즉시 표시되는지 궁금합니다. 설정 메뉴와 마찬가지로 필드가 즉시 표시됩니다.
필드가 바로 보이지 않습니다. ID 목록 만. 해당 ID를 클릭하면 필드 만 표시됩니다. 그것은 의도가 아닙니다. 바로 모든 필드가 있어야합니다. 바닥 글이 1 개가 없기 때문입니다.
나는 코드 내 언어로 약간 번역 한)
Voettekst.php
class VoetTekst extends DataObject {
static $db = array(
'VoetKop1' => 'Varchar(255)',
'VoetKop2' => 'Varchar(255)',
'VoetKop3' => 'Varchar(255)',
'VoetTekst1' => 'HTMLText',
'VoetTekst2' => 'HTMLText',
'VoetTekst3' => 'HTMLText',
);
public function getCMSFields() {
return FieldList::create(
TextField::create('VoetKop1', 'Footer - Kop 1'),
HTMLEditorField::create('VoetTekst1', 'Footer - Tekst 1')->setRows(7),
TextField::create('VoetKop2', 'Footer - Kop 2'),
HTMLEditorField::create('VoetTekst2', 'Footer - Tekst 2')->setRows(7),
TextField::create('VoetKop3', 'Footer - Kop 3'),
HTMLEditorField::create('VoetTekst3', 'Footer - Tekst 3')->setRows(7)
);
}
}
VoettekstAdmin.php
class VoettekstAdmin extends ModelAdmin {
private static $managed_models = array('Voettekst');
private static $url_segment = 'voettekst';
private static $menu_icon = 'framework/admin/images/menu-icons/16x16/network.png';
private static $menu_title = 'Voettekst';
}
스크린 샷 :
을
@ 사이먼 Erkelens은뿐만 아니라 당신의 데이터 객체에 대한 올바른 ...하지만 나는이 시점에서 당신의 주요 질문 ...이 작동 –
생각하지 않습니다! 선택 메뉴 대신이 필드에 즉시 표시되는지 궁금합니다. 설정 메뉴와 마찬가지로 필드가 즉시 표시됩니다. – WillieBoy
예, 좌측 (CMS 내부) (modeladmin)의 바닥 글 링크/탭을 클릭하면 즉시 6 개의 모든 필드가 표시됩니다. 난 당신이 더 많은 추가를 시작하고 사용자가 물건을 편집 어디로 더 쉽게 파악할 수 있도록, 그래서 다른 탭으로 그들을 분리 시작해야하지 않는 한 그들을 위해 탭을 작성해야한다고 생각하지 않습니다. –