zbXE 0.2.9 이후 스킨레이아웃메뉴관리자 사이에 연동되는 것이 2가지 추가되었습니다.

zbXE 0.2.9 공식 레이아웃스킨(xe_official)을 사용하시는 분께는 자동적으로 적용되지만
직접 만들어 쓰시던 분들께서는 직접 변경을 해주셔야  위와같은 개선사항을 레이아웃 스킨에서 적용받으실 수 있습니다.

개선사항1. 펼침 옵션 연동

현재 공식홈페이지의 좌측 메뉴중 일부는 클릭을 하지 않아도  하위메뉴가 펼쳐져 있음을 알 수 있습니다.

이것은 0.2.9 버전 이후 메뉴관리자에서 3차메뉴를 가지는 2차메뉴에 "펼침"을 체크 해주면 레이아웃의 좌측 서브메뉴에서도 클릭없이 미리 3차메뉴가 펼쳐져 있도록 연동 된것입니다.
skin_layout-001-0.2.9.jpg


그리고 또 추가된 것은 메뉴로 사용할 이미지를 관리자모드에서 업로드해서 관리할 수 있도록 된 부분입니다.

개선사항2. 이미지 버튼 지원

두번째 변경사항에 관한 공지를 아래에 발췌했습니다. ( http://www.zeroboard.com/16449999 )
11.메뉴 관리 모듈 (menu)
- 최고관리자의 경우 메뉴별 그룹 속성에 상관없이 메뉴 관리할 수 있도록 개선 : zero
- menu의 버튼이미지를 직접 업로드 가능하도록 하고 menu의 값중 link라는 값을 사용시 등록된 이미지 정보를
   그대로 사용할수 있도록 수정.
메뉴들의 재컴파일 필요 : zero








수정해주셔야 할 파일은 두가지입니다.


layout.html 수정해주기


0.2.8 안정화 버젼의 xe_official 레이아웃 스킨의 왼쪽 2차,3차메뉴 부분의 소스를 보겠습니다.
        <!-- 왼쪽 2차 메뉴 -->
        <img src="./images/blank.gif" alt="" class="mask" />

        <!--@if($menu_1st)-->
        <ol id="lnb">
            {@ $idx = 1 }
            <!--@foreach($menu_1st['list'] as $key => $val)--><!--@if($val['text'])-->
            <li <!--@if($val['selected'])-->class="on"<!--@end-->><a href="{$val['href']}" <!--@if($val['open_window']=='Y')-->onclick="window.open(this.href);return false;"<!--@end-->>{$val['text']}</a>

                <!-- main_menu 3차 시작 -->
                <!--@if($val['list'])-->
                <ul>
                <!--@foreach($val['list'] as $k => $v)--><!--@if($v['text'])-->
                    <li <!--@if($v['selected'])-->class="on"<!--@end-->><a href="{$v['href']}" <!--@if($v['open_window']=='Y')-->onclick="window.open(this.href);return false;"<!--@end-->>{$v['text']}</a></li>
                <!--@end--><!--@end-->
                </ul>
                <!--@end-->
            </li>
            {@$idx++}
            <!--@end--><!--@end-->
        </ol>
        <!--@end-->

0.2.9 버젼의 xe_official 레이아웃 스킨의 왼쪽 2차,3차메뉴 부분의 소스를 보겠습니다.
바뀐부분의 색상을 마음데로 하기위해서 코드 하이라이터 콤포넌트를 사용하지 않았습니다.
            <!-- 왼쪽 2차 메뉴 -->
            <img src="./images/blank.gif" alt="" class="mask" />

            <!--@if($menu_1st)-->
            <ol id="lnb">
                {@ $idx = 1 }
                <!--@foreach($menu_1st['list'] as $key => $val)--><!--@if($val['link'])-->
                <li <!--@if($val['selected'])-->class="on"<!--@end-->><a href="{$val['href']}" <!--@if($val['open_window']=='Y')-->onclick="window.open(this.href);return false;"<!--@end-->>{$val['link']}</a>

                    <!-- main_menu 3차 시작 -->
                    <!--@if($val['list'] && ($val['expand']=='Y'||$val['selected']) )-->
                    <ul>
                    <!--@foreach($val['list'] as $k => $v)--><!--@if($v['link'])-->
                        <li <!--@if($v['selected'])-->class="on"<!--@end-->><a href="{$v['href']}" <!--@if($v['open_window']=='Y')-->onclick="window.open(this.href);return false;"<!--@end-->>{$v['link']}</a></li>
                    <!--@end--><!--@end-->
                    </ul>
                    <!--@end-->
                </li>
                {@$idx++}
                <!--@end--><!--@end-->
            </ol>
            <!--@end-->

위에서 보시는 바와 같이 메뉴를 만들어내는 TS(템플릿 스크립트)에서 2부분이 바뀌었습니다.
  1. 'text' 가 'link' 로 바뀝니다.
  2. 13행의 3차메뉴가 시작되는조건문이
    <!--@if($val['list'] && ($val['expand']=='Y'||$val['selected']) )--> 이렇게 바뀌었습니다.           


CSS 수정해주기

해당 레이아웃에서 사용하는 CSS 파일을 열고 #lnb li ul 선택자를 찾아서 display 속성의 값을 바꿔줍니다.

예로 보여지는 파일은 layouts / xe_official / css / default.css 파일입니다.

#lnb li ul { display:none; position:relative; width:184px; padding:0 3px; position:relative; border-top:1px solid #ffffff; overflow:hidden;}

위 부분을

#lnb li ul { display:block; position:relative; width:184px; padding:0 3px; position:relative; border-top:1px solid #ffffff; overflow:hidden;}

이렇게 바꾸어 줍니다.



이상입니다.
닉네임을 ♥열혈후니 에서 ◀CGlink▶로 바꿨습니다.^^
*제로보드 만세~.  
http://cglink.kr  |  http://sanghoon.kr
아~ DSLR 갖고싶어~ ㅠㅠ