포럼
XE1.5.4에서 추가된 스킨 설정 변수의 타입이 radio, checkbox의 사용법
2012.11.14 01:41
안녕하세요~
1.5.4 버전에서 개인적으로 기다렸던 기능(radio, checkbox의 기본값 설정 가능)이 추가되서 바로 설치해보고 테스트중인데, 사용법(?)을 모르겠어요ㅠ.ㅠ
갠적으로 너무 기다렸던 기능이라 1.5.4이상 버전만 작동하도록 스킨을 업데이트하려구해요.
이것만 있으면 옵션 항목을 대폭! 줄일 수 있을 거 같아요.
암튼 이슈트래커에 해당 바뀐 부분이 어디인지 나와있으면 혼자 끙끙거리고 해결이라도 해볼텐데,
리비전 번호가 없어서 어떻게 바꼈는지 잘 모르겠어서
간단하게라도 개발자님 혹은 고수님께서 어떻게 사용하는 지 설명(?) 좀 해주시면 감사하겠습니다ㅠ.ㅠ
아래 인용구 부분이 1.5.4에서 추가된 기능 중 하나인데요,
스킨 설정 변수의 타입이 radio, checkbox이고 기본값이 설정되어있으면 기본값 선택된 상태로 출력되도록 수정 [똥똥]
게시판 스킨을 예로 들게요.
1. skin.xml에서 기본값을 어떻게 지정해야 하나요?
- 기존에는 아래와 같이 지정할 수 밖에 없어서 항상 옵션 기본값을 사용하지 않는 경우에만 사용할 수 있었는데
이번 버전에서 추가되었다는 기본값을 어떻게 지정해줄 수 있을까요?
<var name="btm_mn" type="checkbox">
<title xml:lang="ko">버튼 추가</title>
<options value="home">
<title xml:lang="ko">목록 버튼 표시</title>
</options>
<options value="tag">
<title xml:lang="ko">TAG 버튼 표시</title>
</options>
</var>
2. 템플릿 파일에서 사용하는 방법은?
- 제가 관련 지식이 없어서 기존에는
{@ $mi->btm_mn = unserialize($mi->btm_mn); }이렇게 설정 해준 후에
해당 템플릿 조건문에서 cond="@in_array(tag,$mi->btn_mn)" 이렇게 검출하는 방식으로 했는데 너무 비효율적(?)인 거 같고,
이번에 먼가 변화가 있지 않을까 해서요^^;
새로운 방법이 생겼다면 혹은 더 좋은 방법이 있다면 알려주심 감사하겠습니다ㅠ.ㅠ
-------------
계속 사용자를 편하게 해주는 기능이 추가-보완되어서 너무~ 기쁘고,
항상 수고해주시는 개발자님께 감사의 말씀드려요~^^
1.5.4 사용해보고 문제나 개선사항이 있음 또 보고해 드리겠습니다~
댓글 19
-
CMD
2012.11.14 14:53
-
Sketchbook
2012.11.15 01:27
저도 이걸 몰라서, 그리고 코어의 구조를 몰라서 어디서 이 부분을 관리하는 지 모르겠어요ㅠ.ㅠ
저처럼 지식이 없으면 좋은 기능이 추가되도 쓸 수 없는 이 안타까운 현실ㅠ.ㅠ
CMD님의 관심 감사드립니다~^^
-
윈컴이
2012.11.14 16:56
혹시나 $mi가 뭔지 모르시는 분(?)을 위해
Sketchbook5 게시판 모듈 스킨에는... {@$module_info = $mi;} 를 설정했습니다.
2. 비효율적이긴 하네요 ^^;;
-
Sketchbook
2012.11.15 01:28
아;; $mi 가 모듈인포를 줄인 걸 잊고 있었네요;
윈컴이님이 알게 되시면 제게도 알려주세요ㅠ.ㅠ
-
윈컴이
2012.11.15 07:51
넵! -
카메론다이아몬드
2012.11.15 10:54
스케치북 스킨 항상 잘 사용하고 있습니다. 화이팅!
-
숭숭군
2012.11.23 10:46
선택될 옵션값에 selected 를 주면 되는걸로 알고있습니다.
-
이온디
2013.02.17 16:19
<var name="cal" type="radio"><title xml:lang="ko">달력 위젯</title><title xml:lang="en">Calendar Widget</title><options value="on"><title xml:lang="ko">ON </title><title xml:lang="en">ON </title></options><options value="off" selected><title xml:lang="ko">OFF </title><title xml:lang="en">OFF </title></options></var>selected 를 쓰면 레이아웃 설정이 안 떠버립니다. ;; -
이온디
2013.02.17 16:34
아 라디오일 경우 checked이네요.;;
checked도 안되고, selected도 안됩니다. 잘못된 요청이라고만 뜹니다.
-
이온디
2013.02.15 03:40
checkbox 사용법 layout.html 파일에서는 어떻게 사용하는 건가요? ㅠㅠ;
-
이온디
2013.02.15 03:43
<!--@if($layout_info->option='nickname')-->A<!--@end--><!--@if($layout_info->option!='nickname')-->a<!--@end--><block cond="$layout_info->option='selected'">B</block><block cond="$layout_info->option!='nickname'">b</block><!--@if($layout_info->option=='nickname')-->C<!--@end--><!--@if($layout_info->option!=='nickname')-->c<!--@end--><block cond="$layout_info->option='nickname'">D</block><block cond="$layout_info->option!='nickname'">d</block><div cond="$layout_info->option='nickname'">E</div><div cond="$layout_info->option!='nickname'">e</div><!--@if($layout_info->option='nickname')-->F<!--@else-->f<!--@end--><!--@if($layout_info->option!='nickname')-->g<!--@else-->G<!--@end--><!--@if($layout_info->option=='nickname')-->H<!--@else-->h<!--@end--><!--@if($layout_info->option!=='nickname')-->I<!--@else-->i<!--@end--><!--@if($layout_info->option=='nickname')-->J<!--@else-->j<!--@end--><!--@if($layout_info->option=='nickname')-->nickname<!--@else-->메롱<!--@end-->이런 식으로 다 해보고 있는데 체크해도, 체크 안해도 변화가 없네요.레이아웃 설정에서의 체크 여부는 어떻게 확인하는 거죠?;; -
이온디
2013.02.15 03:44
<var name="option" type="checkbox"><title>보기 옵션 추가</title><description>최근 글에서 보여지는 옵션을 선택해주세요. (기본값:제목)</description><options value="nickname"><title>nickname</title><value>nickname</value></options><options value="regdate"><title>regdate</title></options></var>info.xml 파일에서 작성은 이렇게 했고요.. -
이온디
2013.02.15 03:48
레이아웃에서도 checkbox 가 되지 않나요? ㅠㅠ
-
순수소년
2013.02.18 15:42
전 아래와 같이 설정하니 되었습니다. checkbox는 해보지 않아 모르겠네요.
<var name="display_info" type="select" default="Y">
<title xml:lang="ko">기본정보 출력여부</title>
<description xml:lang="ko">기본정보 출력여부를 결정합니다.</description>
<options value="Y">
<title xml:lang="ko">출력</title>
</options>
<options value="N">
<title xml:lang="ko">출력하지 않음</title>
</options>
</var>템플릿에서 사용법은 아래와 같이 view에서 코드를 작성하면 $module_info->display_info 에 해당 변수의 값이 들어오게 됩니다. (이 경우 사용자가 저장을 누르지 않으면 기본 값은 들어오지 않네요;; 원하시는 답변이 아닐 것 같습니다.)
$oModuleModel = &getModel('module');
$module_info = $oModuleModel->getModuleInfoByModuleSrl($this->module_srl);
Context::set('module_info', $module_info);
-
이온디
2013.02.18 20:33
레이아웃 info.xml이 맞나요?
저는 저렇게 해도 선택이 되어있지 않게 나오더라구요.
-
순수소년
2013.02.19 18:15
레이아웃 스킨은 아니고요, skin.xml 모듈 스킨입니다.
-
이온디
2013.02.19 23:25
모듈에선 되는데 레이아웃 스킨에선 기본값 설정이 안되는 것 같네요.
-
순수소년
2013.02.18 15:47
테스트 해보니 radio 는 기본값 적용이 되고 checkbox는 적용이 되지 않네요.
-
씨지크
2014.09.23 01:20
checkbox의 기본값 되면 좋겠네요.ㅠㅠ
해당 리비전 번호를 알 수 있을까요?