info.php 파일로 스킨, 위젯 설정 페이지에 셀렉트(select) 박스 사용하기

XE3(Xpressengine 3) 에서 제공하는 스킨 컴포넌트는 info.php 파일을 통해 설정에서 사용할 입력 필드가 출력됩니다.

 

info.php 파일에는 아래와 같은 코드가 명시되어 있습니다.

<?php

return [
    'setting' => [
        'skinTitle' => [
            '_type' => 'text',
            '_section' => '스킨 기본설정',
            'label' => '제목',
            'placeholder' => '출력할 제목을 입력해주세요.',
        ]
    ],
    'support' => [
        'mobile' => true,
        'desktop' => true
    ]
];

 

작성된 코드를 바탕으로 스킨 설정 페이지에 입력 필드가 출력됩니다.

셀렉트(Select) 박스를 추가할 스킨 info.php 파일을 아래 작성된 코드를 참고해 수정합니다.

<?php

return [
    'setting' => [
        ...,
		'SkinType' => [
            '_type' => 'select',
            '_section' => '스킨 기본설정',
            'label' => '타입',
            'placeholder' => '타입',
            'options' => [
                'true' => [
                    'text' => '게시글 (Board Document)',
                    'value' => 'module/board@board',
                    'selected' => false,
                ],
                'false' => [
                    'text' => '댓글 (Board Comment)',
                    'value' => 'comment',
                    'selected' => false,
                ],
            ],
        ],
    ],
];

 

셀렉트 박스에 multiple 속성을 추가하고 싶다면 코드를 아래처럼 변경해줍니다.

// 'multiple' => 'true',

'SkinType' => [
    '_type' => 'select',
    '_section' => '스킨 기본설정',
    'label' => '타입',
    'placeholder' => '타입',
    'description' => '대상으로 설정한 타입을 선택해주세요. (복수선택 가능)',
		'multiple' => 'true',
    'options' => [
        'true' => [
            'text' => '게시글 (Board Document)',
            'value' => 'module/board@board',
            'selected' => false,
        ],
        'false' => [
            'text' => '댓글 (Board Comment)',
            'value' => 'comment',
            'selected' => false,
        ],
    ],
],

 

 

  • share