sketchbook5_MH 게시판 스킨에 분류를 드릴다운 스타일(단계별 하위분류) 추가 하는 방법


<var name="cnb" type="radio">
<title xml:lang="ko">카테고리 메뉴 스타일</title>
<title xml:lang="en">Category Menu Style</title>
<description xml:lang="ko">'표시 안함' 게시판 설정의 '게시판 정보' 메뉴의 '분류 사용' 항목과 관계없이 표시하지 않습니다. '박스 스타일'은 2차 카테고리를 지원하지 않습니다.</description>
<description xml:lang="en">'Hide' will not display regardless of the 'Use Category' item in the 'Board Info' menu of board settings. 'Box style' does not support secondary categories.</description>
<options value="">
<title xml:lang="ko">그라데이션 스타일(기본)</title>
<title xml:lang="en">Gradation Style (Default)</title>
</options>
<options value="cTab">
<title xml:lang="ko">탭 스타일</title>
<title xml:lang="en">Tab Style</title>
</options>
<options value="cnb3">
<title xml:lang="ko">박스 스타일</title>
<title xml:lang="en">Box Style</title>
</options>
<options value="cnb4">
<title xml:lang="ko">박스+테두리 스타일</title>
<title xml:lang="en">Box+Border Style</title>
</options>
<options value="cDrill">
<title xml:lang="ko">드릴다운 스타일(단계별 하위분류)</title>
<title xml:lang="en">Drilldown Style (Step-by-step Subcategory)</title>
</options>
<options value="N">
<title xml:lang="ko">표시 안함</title>
<title xml:lang="en">Hide</title>
</options>
</var>
<var name="cnb_drill_preview" type="radio">
<title xml:lang="ko"> └ 드릴다운 1차 분류 미리보기</title>
<title xml:lang="en"> └ Drilldown Level-1 Hover Preview</title>
<description xml:lang="ko">'드릴다운 스타일'에서 1차 분류에 마우스를 올렸을 때 하위 분류를 미리 보여줍니다.</description>
<description xml:lang="en">In 'Drilldown Style', shows a preview of subcategories when hovering over a level-1 category.</description>
<options value="Y">
<title xml:lang="ko">사용(기본)</title>
<title xml:lang="en">Use (Default)</title>
</options>
<options value="">
<title xml:lang="ko">사용 안함</title>
<title xml:lang="en">Disable</title>
</options>
</var>
<!--// 카테고리 -->
<div class="cnb_n_list">
~ 생략 ~
<block cond="$mi->cnb=='cDrill'">
{@
$mh_cnb_flat = array();
foreach($category_list as $mh_ck=>$mh_cv):
$mh_cnb_flat[] = array(
'srl' => (int)$mh_cv->category_srl,
'parent' => (int)$mh_cv->parent_srl,
'title' => $mh_cv->title,
'count' => (int)$mh_cv->document_count,
'color' => $mh_cv->color
);
endforeach;
$mh_cnb_json = json_encode($mh_cnb_flat, JSON_HEX_TAG|JSON_UNESCAPED_UNICODE);
}
<div class="mh_cnb_drill<!--@if(!$mi->select_lst)--> mh_cnb_has_type_selector<!--@end-->" data-current_category="{$category}" data-total_count="{$total_count}" data-preview="{$mi->cnb_drill_preview}" data-show_count="{$mi->cnb_count}" data-list_url_tpl="{getUrl('category','__MH_CATEGORY__','page','','document_srl','')}">
<script type="application/json" class="mh_cnb_data">{$mh_cnb_json}</script>
<div class="mh_cnb_levels"></div>
</div>
</block>
</div>
<!--// 게시판 유형 선택 -->
/* Drill Style */
.mh_cnb_drill{margin-bottom:15px}
.mh_cnb_levels{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.mh_cnb_has_type_selector .mh_cnb_levels{padding-right:100px}
.mh_cnb_levels a.mh_cnb_flat{display:inline-block;margin:0;padding:7px 16px;border:1px solid #e2e2e2;border-radius:20px;background:#fff;box-shadow:none;color:#555;text-decoration:none;font-size:13px;font-weight:normal;line-height:normal;transition:background .15s,border-color .15s}
.mh_cnb_levels a.mh_cnb_flat:hover{background:#f5f5f5}
.mh_cnb_levels a.mh_cnb_flat.on{background:#555;border-color:#d7e2ee;color:#fff;font-weight:bold}
.mh_cnb_levels a.mh_cnb_reset{display:inline-block;margin:0;padding:7px 16px;border:1px solid #e2e2e2;border-radius:20px;background:#555;box-shadow:none;color:#fff;text-decoration:none;font-size:13px;font-weight:normal;line-height:normal;transition:background .15s,border-color .15s}
.mh_cnb_levels a.mh_cnb_reset:hover{background:#eee;box-shadow:none;color:#444;text-decoration:none;}
.mh_cnb_levels .mh_cnb_arrow{color:#bbb;font-size:13px}
.mh_cnb_levels select{padding:7px 10px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;font-size:13px;min-width:130px;max-width:220px}
.mh_cnb_levels select:focus{outline:none;border-color:#999}
.mh_cnb_flat_wrap{position:relative;display:inline-block}
.mh_cnb_preview{display:none;position:absolute;bottom:100%;left:0;margin-bottom:8px;background:#fff;border:1px solid #eee;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.1);padding:8px 14px 5px;white-space:nowrap;z-index:50}
.mh_cnb_preview::after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:8px;background:transparent}
.mh_cnb_flat_wrap:hover .mh_cnb_preview{display:flex;gap:14px}
.mh_cnb_preview a{color:#333;font-size:12px;text-decoration:none;padding:0;border:0;background:none;font-weight:normal}
.mh_cnb_preview a:hover{color:#0070f3;text-decoration:none}
mh_category_drill.js 파일 생성해서 js 폴더에 업로드
Tip이 도움이 되었다면 댓글과 평가 부탁합니다.
Tip에 대한 궁금한 점은 댓글로 남겨 주시면 성심껏 답변 드립니다. 
