• SEARCH

    통합검색
  • 문하우스
    • Main
      • 자유게시판
      • 묻고답하기
      • 공지사항
      • 방명록
      • 출석부
      • Blog
        • 견문록
      • 통합게시판
        • TimeLine
        • MH위젯
      • Lotto 복권
        • 스티커구매
        • 퀴즈게임
        • 섯다게임
    • 축제알림
    • Data
      • 유틸리티
        • 정회원전용
      • 컴퓨터Tip
      • AI
        • Tip
        • AI Gallery
        • View
      • YouTube
      • 드라이브
      • 사진
      • 즐겨찾는 홈피
    • Rhymix
      • 나의 Rhymix
        • Rhymix 배경이미지
      • Rhymix 팁
      • Rhymix 자료
      • Html
    • Mh_Layouts
      • MH_Justice
        • MH_Justice_W
      • MH_Gallery
      • MH_Sideways
      • Mh_Fullpage
      • MH_Thomsander
      • Mh_LeftMenu
      • Mh_White
        • Map Board Skin
      • MH_Sliding
      • MH_Pointy
      • Xedition_MH
        • Book Board Skin
        • 위젯 테스트
      • MH_Select
      • Mh_Simple
      • MH_Lego
      • Earth Is One
    • Sale
      • 주문요청
      • 주문확인
      • Shopping QA
      • 구매자 게시판
      • 의뢰게시판
      • MH_Justice
        • Justice Manual
      • MH_Multi
        • Multi Manual
      • MH_Brickfolio
        • Brickfolio Manual
        • Shop
      • MH_SmartBanner
      • Mh Gallery
        • Gallery Manual
  • 문하우스
  • 문하우스는 Google Chrome, 1280*1024 이상의 모니터 해상도에서 최적화 되어 있습니다.
  • 무단 E-mail 추출이나, 무단,성인광고를 허용치 않습니다.
  •  2004 Moonhouse homepage. all rights reserved.
  • TOP VIEW

    • 익스 6.0에서 발생하는 오류
      익스 6.0에서 발생하는 오류
      269,930

      안녕하세요. 문하우스 게시판 스킨을 잘 쓰고 있습니다. 한가지 해결이 안되서 이렇게 찾아 왔습니다. 익스 7.0 하고 8.0에선 문제가 없는데 이상하게 6.0에서 게시판 타이틀 이미지가 깨져서 출력 됩니다. 스크린샷 첨부하오니, 해결 방안좀 알려주세요. 부탁드립니다. 팔공산님 이것만 해결되면 전부 스킨을 문하스로 변경...

    • 문하우스 게시판스킨 V3.2 UP
      문하우스 게시판스킨 V3.2 UP
      192,308

      최신버전 바로가기 2010년9월17일 이후 V3.2로 업그레이드 [수정사항] 1. 하단 이전글/다음글 기능수정 2. 비밀글아이콘 표시수정 3. 카테고리 상단박스형 스킨수정 4. 댓글등록시 자동추천 / 자동비추천 버턴 분리설정 5. 레이아웃의 CSS속성을 가져오던 버그를 바르게 수정함 6. 더블웹진형식에서 썸네일 클릭시 본문글로 ...

    • 글 작성시 비밀글체크에 대한 방지기의 생각입니다.
      189,781

      이곳을 이용하시는 모든 분들에게 당부의 말씀 한마디 드리겠습니다. 내용글 작성시 특별히 숨길 내용이 없으시면 웬만하면 비밀글로 작성하지 말아주셨으면 합니다. 여기에 들어오시는 분들이 자신의 질문에 대한 답변만을 보는 것이 아니라, 다른 분들의 질문도 보고 답변도 보면서 서로서로 배워 나가는 홈페이지가 되고 ...

    TOP SUGGEST

    • 강력한 HDD 복구프로그램 GetDataBack V4
      강력한 HDD 복구프로그램 GetDataBack V4
      23

      며칠전에 우인의 컴퓨터가 바이러스로 무장이 되어 있어서 윈도우를 다시 설치하기로 했다. 윈도우CD를 넣고 설치를 하던중 HDD 파티션 부분에서 2개의 파티션이 보였다. 아무 생각없이 2개의 파티션을 삭제하고 아차!!! 싶어서 확인해 보니 120G짜리 외장형 HDD가 USB에 꽂혀 있는 것이 아닌가 우인에게 물어보니 그 안에 ...

    • XE기본 Xedition레이아웃을 편집이 편리하도록 수정한 버전입니다. 2탄
      XE기본 Xedition레이아웃을 편집이 편리하도록 수정한 버전입니다. 2탄
      21

      XE 1.8 버전대 기본레이아웃인 Xedition을 사용자가 편집이 편리하도록 수정한 최후 버전 https://moonhouse.co.kr/399750 1탄을 먼저 보세요. 화면출력이 너무 길어지고 최후버전인 관계로 따로 리스트 작성합니다. [v6.2 업데이트 내용] 1. 배경이미지 슬라이드 하단에 썸네일기능을 추가 https://moonhouse.co.kr/special...

    • MH Multi V3.2 업그레이드(18.09.20) - 최신글+썸네일+내용글+댓글
      MH Multi V3.2 업그레이드(18.09.20) - 최신글+썸네일+내용글+댓글
      11

      [V3.3으로 업데이트 되었습니다] https://moonhouse.co.kr/xemy/337307 V2.1 버전 에서 구현하지 못했던 페이지 기능등을 추가 하여 버전업 합니다. [V3.2 특징] 1. sketchbook5게시판 웹진형 스킨추가 - MH sketchbook5 스킨 - 모바일에서 제목과 날짜, 글쓴이 정도만 지정하면 멋진 통합게시판위젯이 출력됩니다.(문하우스...

    RANDOM

    • 홈페이지 리뉴얼 작업중입니다.
      2007.08.20

      ZbXE가 정식으로 배포됨에 따라서 제가 가지고 있는 홈페이지들을 이 홈피로 통합할 예정입니다. 그래서 페이지 리뉴얼 작업중이니, 저를 아시는 분이시던, 처음 오시는 분이시던 앞으로 자주 들러 주시길 바랍니다.

    • beta 0.2.6 선행 버전 설치하니 페이지수정이 이렇게 바뀌네요.
      2007.11.16

      위에 보이는 이미지와 같이 아주 신기하고 재미있게 바뀌네요. 마우스로 폭,길이도 조절하고 이동도 되고 한마디로 굿입니다.

    • 지호의 상상에 들러주시던 분들에게..
      2007.08.20

      ZB5베타로 만들었던 "지호의 상상" 홈피에 들러주시던 분들은 이페이지에 있는 "Zb5베타" 로 들어가시면 옛날 홈피로 들어가실 수 있습니다. 그리고 이홈피로 모든 데이트를 이전 할 예정이오니 참조하세요.

  • Main 통합게시판

    문하우스 전국 행정동 분류로 사용하기

    팔공산 2026.08.25 21:46 조회 수 9

    스케치북 게시판 스킨 분류를 드릴다운 스타일(단계별 하위분류) 추가

    이 Tip을 작성후 분류를 대한만국 행정동을 기본으로 가져오는 방법을 다시 Tip으로 남깁니다.

     

    1. 대한민국 시도 → 시군구 → 읍면동 3단계를 게시판의 분류(카테고리)로 일괄 생성합니다. (단 리 단계는 만들지 않음)

    압축 파일중에서 mh_seed_korea_categories_web.php 파일에서 module_srl 값을 수정합니다.

    44줄 const MH_MODULE_SRL = 55; 이부분을 전국 행정동을 분류로 생성할 게시판 module_srl=xx 값을 찾아서 수정합니다.

     

    2. 수정한 파일을 modules/board/skins/sketchbook5_MH 폴더에 업로드 합니다.

     

    3. 브라우즈 주소창에 아래 부분을 복사(단 도메인 부분은 자신의 주소) 해서 실행합니다.

    https://도메인/modules/board/skins/sketchbook5_MH/mh_seed_korea_categories_web.php?auto=Y

    설치하는데 시간이 꽤 소요됩니다.

     

    4. 설치 후 해당 모듈 사이트 설정에 접속하면 분류가 자동으로 행정동으로 출력됩니다.(자료가 길어서 출력되는데 시간이 걸림)

    image.png

    5. mh_category_cascade.js 파일과 mh_category_drill.js 파일은 /sketchbook5_MH/js 폴더에 업로드 합니다.

    mh_facet_intersect.php 파일과 다른 파일들은 /sketchbook5_MH 폴더에 업로드 합니다.

    아래 파일 수정 부분(6~8번)은 참고 삼아서 작성한거라 파일 업로드 후에는 참고만 하시고

    혹시나 다른 게시판에 적용을 할려면 참고하세요.  

     

    6. skin.xml 수정

    <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 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="top_tag_btn" type="radio">
        <title xml:lang="ko">상단 TAG 버튼</title>
        <title xml:lang="en">Top TAG Button</title>
        <description xml:lang="ko">TAG 버튼 표시 선택시 게시판 상단에 Tag 분류 버튼 출력</description>
        <description xml:lang="en">When TAG button display is selected, Tag category buttons are displayed at the top of the board.</description>
        <options value="">
            <title xml:lang="ko">표시 안함(기본)</title>
            <title xml:lang="en">Hide (Default)</title>
        </options>
        <options value="Y">
            <title xml:lang="ko">표시</title>
            <title xml:lang="en">Display</title>
        </options>
    </var>
    <var name="tag_cate1n" type="text">
        <title xml:lang="ko"> └ 분류1 확장변수 ID</title>
        <title xml:lang="en"> └ Category 1 Tag Names</title>
        <description xml:lang="ko">분류1 출력될 확장변수 ID(기본 sports)</description>
        <description xml:lang="en">Tag names to be displayed in Category 1</description>
    </var>
    <var name="tag_cate1" type="text">
        <title xml:lang="ko"> └ 분류1 출력 이름</title>
        <title xml:lang="en"> └ Category 1 Display Name</title>
        <description xml:lang="ko">TAG 버튼 표시 선택시 게시판 상단에 Tag 분류 버튼 출력중 분류1 출력 이름</description>
        <description xml:lang="en">When TAG button display is selected, the display name of Category 1 among Tag category buttons at the top of the board</description>
    </var>
    <var name="tag_cate2n" type="text">
        <title xml:lang="ko"> └ 분류2 확장변수 ID(기본 change)</title>
        <title xml:lang="en"> └ Category 2 Tag Names</title>
        <description xml:lang="ko">분류2 출력될 확장변수 ID</description>
        <description xml:lang="en">Tag names to be displayed in Category 2</description>
    </var>
    <var name="tag_cate2" type="text">
        <title xml:lang="ko"> └ 분류2 출력 이름</title>
        <title xml:lang="en"> └ Category 2 Display Name</title>
        <description xml:lang="ko">TAG 버튼 표시 선택시 게시판 상단에 Tag 분류 버튼 출력중 분류2 출력버튼 이름</description>
        <description xml:lang="en">When TAG button display is selected, the display name of Category 2 button among Tag category buttons at the top of the board</description>
    </var>
    <var name="cnb_tag_order" type="radio">
        <title xml:lang="ko">카테고리 / 상단 TAG버튼 출력 순서</title>
        <title xml:lang="en">Category / Top TAG Button Order</title>
        <description xml:lang="ko">카테고리 메뉴와 상단 TAG 버튼 중 어느 것을 먼저 출력할지 선택합니다.</description>
        <description xml:lang="en">Choose which one is displayed first: the category menu or the top TAG button.</description>
        <options value="">
            <title xml:lang="ko">카테고리 먼저(기본)</title>
            <title xml:lang="en">Category First (Default)</title>
        </options>
        <options value="tag_first">
            <title xml:lang="ko">TAG버튼 먼저</title>
            <title xml:lang="en">TAG Button First</title>
        </options>
    </var>

     

    7. list.html 수정

    <include target="__setting.html" />
    {@
        $mh_c1v = (string)Context::get('mh_c1v');
        $mh_c2v = (string)Context::get('mh_c2v');
        if($mh_c1v || $mh_c2v):
            $mh_eid1 = $mi->tag_cate1n;
            $mh_eid2 = $mi->tag_cate2n;
            $oDB = DB::getInstance();
            $mh_filter_srls = null;
    
            if($mh_c1v && $mh_eid1):
                $mh_stmt1 = $oDB->query(
                    'SELECT document_srl FROM document_extra_vars WHERE module_srl = ? AND eid = ? AND value = ?',
                    (int)$mi->module_srl, $mh_eid1, $mh_c1v
                );
                $mh_set1 = array();
                foreach($mh_stmt1->fetchAll() as $mh_row1):
                    $mh_row1 = is_array($mh_row1) ? (object)$mh_row1 : $mh_row1;
                    $mh_set1[] = (int)$mh_row1->document_srl;
                endforeach;
                $mh_filter_srls = $mh_set1;
            endif;
    
            if($mh_c2v && $mh_eid2):
                $mh_stmt2 = $oDB->query(
                    'SELECT document_srl FROM document_extra_vars WHERE module_srl = ? AND eid = ? AND value = ?',
                    (int)$mi->module_srl, $mh_eid2, $mh_c2v
                );
                $mh_set2 = array();
                foreach($mh_stmt2->fetchAll() as $mh_row2):
                    $mh_row2 = is_array($mh_row2) ? (object)$mh_row2 : $mh_row2;
                    $mh_set2[] = (int)$mh_row2->document_srl;
                endforeach;
                $mh_filter_srls = ($mh_filter_srls === null) ? $mh_set2 : array_values(array_intersect($mh_filter_srls, $mh_set2));
            endif;
    
            if($mh_filter_srls !== null):
                $mh_filter_lookup = array_flip($mh_filter_srls);
                foreach((array)$document_list as $mh_dk=>$mh_dv):
                    $mh_dsrl = is_object($mh_dv) ? $mh_dv->get('document_srl') : $mh_dv['document_srl'];
                    if(!isset($mh_filter_lookup[(int)$mh_dsrl])):
                        unset($document_list[$mh_dk]);
                    endif;
                endforeach;
                $total_count = count($document_list);
            endif;
        endif;
    }
    
    ~ 생략
     
    
                <!--// 카테고리 / 상단 TAG버튼 순서 (설정: $mi->cnb_tag_order) -->
                {@
                    $mh_cnb_order = ($mi->cnb_tag_order=='tag_first') ? 2 : 1;
                    $mh_tag_order = ($mi->cnb_tag_order=='tag_first') ? 1 : 2;
                    $mh_cnb_style = 'order:'.$mh_cnb_order.';margin-top:0;margin-bottom:'.($mi->default_style=='blog' ? '30px' : '0').';';
                }
                <div class="cnb_n_list">
                    <div class="mh_cnb_tag_order" style="display:flex;flex-direction:column;gap:10px">
                        <style>
                            .mh_cnb_tag_order .bd_cnb,
                            .mh_cnb_tag_order ul.cTab,
                            .mh_cnb_tag_order ul.cnb3,
                            .mh_cnb_tag_order .mh_cnb_drill { margin-bottom:0 !important; }
                        </style>
                        <div cond="$mi->use_category=='Y' && $mi->cnb!='N'" class="if_lst_btn"|cond="$mi->select_lst=='N'" style="{$mh_cnb_style}">
                            {@ $cate_list = array(); $current_key = null; }
                            <!--@foreach($category_list as $key=>$val)-->
                                <!--@if(!$val->depth)-->
                                    {@
                                        $cate_list[$key] = $val;
                                        $cate_list[$key]->children = array();
                                        $current_key = $key;
                                    }
                                <!--@elseif($current_key)-->
                                    {@ $cate_list[$current_key]->children[] = $val }
                                <!--@end-->
                            <!--@end-->
    
                            ~ 생략
    
                            <block cond="$mi->cnb=='cDrill'">
                                <load target="js/mh_category_drill.js" />
                                {@
                                    $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" data-current_category="{$category}" data-total_count="{$total_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>
                                <style>
                                    .mh_cnb_drill{margin-bottom:15px}
                                    .mh_cnb_levels{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
                                    .mh_cnb_levels button.mh_cnb_pill{display:inline-block;padding:6px 14px;border:0;border-radius:20px;background:#f2f2f2;color:#555;font-size:13px;cursor:pointer;transition:background .15s}
                                    .mh_cnb_levels button.mh_cnb_pill:hover{background:#e6e6e6}
                                    .mh_cnb_levels button.mh_cnb_pill.on{background:#333;color:#fff}
                                    .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}
                                </style>
                            </block>
                        </div>
    
                        <!--// 상단 확장변수 버튼 (분류1/분류2 확장변수 ID: $mi->tag_cate1n / $mi->tag_cate2n 기반) -->
                        <block cond="$mi->top_tag_btn =='Y'">
                            {@
                                $mh_all_keys = DocumentModel::getExtraKeys($mi->module_srl);
    
                                $mh_c1_eid = $mi->tag_cate1n;
                                $mh_c1_idx = 0;
                                $mh_c1_options = array();
                                if($mh_c1_eid):
                                    foreach($mh_all_keys as $mh_k_idx=>$mh_k):
                                        if($mh_k->eid == $mh_c1_eid):
                                            $mh_c1_idx = $mh_k_idx;
                                            $mh_c1_options = $mh_k->options ? $mh_k->options : array();
                                            break;
                                        endif;
                                    endforeach;
                                endif;
                                $mh_c1_counts = array();
                                if($mh_c1_idx):
                                    $oDB = DB::getInstance();
                                    $mh_c1_stmt = $oDB->query(
                                        'SELECT value, COUNT(*) as cnt FROM document_extra_vars WHERE module_srl = ? AND eid = ? GROUP BY value',
                                        (int)$mi->module_srl,
                                        $mh_c1_eid
                                    );
                                    foreach($mh_c1_stmt->fetchAll() as $mh_c1_row):
                                        $mh_c1_row = is_array($mh_c1_row) ? (object)$mh_c1_row : $mh_c1_row;
                                        $mh_c1_counts[$mh_c1_row->value] = (int)$mh_c1_row->cnt;
                                    endforeach;
                                endif;
    
                                $mh_c2_eid = $mi->tag_cate2n;
                                $mh_c2_idx = 0;
                                $mh_c2_options = array();
                                if($mh_c2_eid):
                                    foreach($mh_all_keys as $mh_k_idx=>$mh_k):
                                        if($mh_k->eid == $mh_c2_eid):
                                            $mh_c2_idx = $mh_k_idx;
                                            $mh_c2_options = $mh_k->options ? $mh_k->options : array();
                                            break;
                                        endif;
                                    endforeach;
                                endif;
                                $mh_c2_counts = array();
                                if($mh_c2_idx):
                                    $oDB = DB::getInstance();
                                    $mh_c2_stmt = $oDB->query(
                                        'SELECT value, COUNT(*) as cnt FROM document_extra_vars WHERE module_srl = ? AND eid = ? GROUP BY value',
                                        (int)$mi->module_srl,
                                        $mh_c2_eid
                                    );
                                    foreach($mh_c2_stmt->fetchAll() as $mh_c2_row):
                                        $mh_c2_row = is_array($mh_c2_row) ? (object)$mh_c2_row : $mh_c2_row;
                                        $mh_c2_counts[$mh_c2_row->value] = (int)$mh_c2_row->cnt;
                                    endforeach;
                                endif;
                            }
                            {@
                                $mh_bridge_url = '/modules/board/skins/sketchbook5_MH/mh_facet_intersect.php';
                                $mh_cur_c1v = (string)Context::get('mh_c1v');
                                $mh_cur_c2v = (string)Context::get('mh_c2v');
                            }
                            <div cond="$mh_c1_idx || $mh_c2_idx" class="atag-wrap" style="order:{$mh_tag_order};margin-top:0;margin-bottom:0">
                                <div cond="$mh_c1_idx" class="atag-row">
                                    <a href="{$mh_bridge_url.'?'.http_build_query(array('mid'=>$mi->mid,'eid1'=>$mh_c1_eid,'c1v'=>'','eid2'=>$mh_c2_eid,'c2v'=>$mh_cur_c2v))}" class="tag tbtn{!$mh_cur_c1v ? ' on' : ''}"><i class="fa fa-tag"></i> {$mi->tag_cate1}</a>
                                    <a loop="$mh_c1_options=>$mh_ov1" href="{$mh_bridge_url.'?'.http_build_query(array('mid'=>$mi->mid,'eid1'=>$mh_c1_eid,'c1v'=>($mh_cur_c1v==$mh_ov1 ? '' : $mh_ov1),'eid2'=>$mh_c2_eid,'c2v'=>$mh_cur_c2v))}" class="tag tbtn{$mh_cur_c1v==$mh_ov1 ? ' on' : ''}">{$mh_ov1} ({(int)($mh_c1_counts[$mh_ov1] ?? 0)})</a>
                                </div>
                                <div cond="$mh_c2_idx" class="atag-row">
                                    <a href="{$mh_bridge_url.'?'.http_build_query(array('mid'=>$mi->mid,'eid1'=>$mh_c1_eid,'c1v'=>$mh_cur_c1v,'eid2'=>$mh_c2_eid,'c2v'=>''))}" class="tag tbtn{!$mh_cur_c2v ? ' on' : ''}"><i class="fa fa-tag"></i> {$mi->tag_cate2}</a>
                                    <a loop="$mh_c2_options=>$mh_ov2" href="{$mh_bridge_url.'?'.http_build_query(array('mid'=>$mi->mid,'eid1'=>$mh_c1_eid,'c1v'=>$mh_cur_c1v,'eid2'=>$mh_c2_eid,'c2v'=>($mh_cur_c2v==$mh_ov2 ? '' : $mh_ov2)))}" class="tag tbtn{$mh_cur_c2v==$mh_ov2 ? ' on' : ''}">{$mh_ov2} ({(int)($mh_c2_counts[$mh_ov2] ?? 0)})</a>
                                </div>
                                <style>
                                    .atag-wrap { display:flex; flex-direction:column; gap:8px; margin:10px 5px 10px 0; }
                                    .atag-row { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
                                    .atag-wrap .tag.tbtn { display:inline-block;padding:6px 14px;border:0;border-radius:20px;background:#f2f2f2;color:#555;font-size:13px;text-decoration:none; }
                                    .atag-wrap .tag.tbtn.on { background:#333;color:#fff; }
                                </style>
                            </div>
                        </block>
                    </div>
    

     

    8. write_form.html 수정

    <!--// 상단 : 카테고리, 제목 -->
    <table class="bd_wrt_hd bd_tb">
        <tr>
            <td>
                <block cond="$mi->use_category=='Y' && $category_list && $mi->use_admindong_category=='Y'">
                    {@
                        $mh_cat_flat = array();
                        foreach((array)$category_list as $mh_cv):
                            $mh_cat_flat[] = array(
                                'srl' => (int)$mh_cv->category_srl,
                                'parent' => (int)$mh_cv->parent_srl,
                                'depth' => (int)$mh_cv->depth,
                                'title' => $mh_cv->title,
                                'grant' => (bool)$mh_cv->grant
                            );
                        endforeach;
                        $mh_cat_json = json_encode($mh_cat_flat, JSON_HEX_TAG|JSON_UNESCAPED_UNICODE);
                    }
                    <load target="js/mh_category_cascade.js" type="body" />
                    <div class="mh_category_cascade" data-target="[name='category_srl']" data-current="{$oDocument->get('category_srl')}">
                        <script type="application/json" class="mh_category_cascade_data">{$mh_cat_json}</script>
                    </div>
                    <style>
                        .mh_category_cascade { display:flex; flex-direction:column; }
                        .mh_category_cascade select.mh_category_select { margin-bottom:5px; margin-right:5px; }
                        .mh_category_cascade select.mh_category_select:last-child { margin-bottom:0; }
                    </style>
                </block>
                <select cond="$mi->use_category=='Y' && $category_list" name="category_srl" class="category" style="display:none"|cond="$mi->use_admindong_category=='Y'">
                    <option value="">{$lang->category}</option>
                    <!--@foreach($category_list as $val)-->
                        <option value="{$val->category_srl}" disabled="disabled"|cond="!$val->grant" selected="selected"|cond="$val->grant && (($val->selected && !$oDocument->get('category_srl')) || $val->category_srl == $oDocument->get('category_srl'))">
                            {str_repeat('&nbsp;&nbsp;', $val->depth)} {$val->title} ({$val->document_count})
                        </option>
                    <!--@endforeach-->
                </select>
            </td>
            <!--@if($mi->display_title =='')-->
                <td width="100%">
                    <span class="itx_wrp">
                        <label for="postTitle">{$lang->title}</label>
                        <input type="text" name="title" class="itx" id="postTitle" title="{$lang->title}" value="{(!$oDocument->isExists()&&$mi->title_default_text)?htmlspecialchars($mi->title_default_text):$oDocument->getTitleText()}"/>
                    </span>
                </td>
                <td cond="$is_logged && !$oDocument->isExists() || $oDocument->get('status')=='TEMP'" class="m_no"><button type="button" class="bd_btn" onclick="doDocumentLoad(this);">{$lang->cmd_load}</button></td>
            <!--@else-->
                <input type="hidden" name="content" value="&nbsp;" />
            <!--@end-->
        </tr>
    </table>

     

    9. 업로드를 마치고 해당 게시판(module_srl=xx)에 확장변수를 추가하고 검색을 Y로 해야 됩니다.

    확장 변수와 분류를 함께 사용해서 선택 검색을 완성하는 것 입니다.

    행정동만 사용할려면 안 만들어도 상관 없습니다.

    image.png

     

    10. 게시판 스킨 카테고리 메뉴 스타일을 "드릴다운 스타일"로 선택하고 아래 항목들을 선택합니다.

    image.png

     

    11. 설정을 마치고 글 작성을 누르면 제목 좌측에 행정동 분류가 출력되고, 확장변수를 선택합니다.

    001.jpg

     

    12. 글 작성 후 목록 상단에 확장변수와 분류 목록이 나옵니다.

    image.png

     

    13. 분류들을 선택하면 해당 목록만 출력됩니다.

    image.png

     

    확장변수 선택 기능을 사용하지 않고 행정동만 사용할려면 좀 더 간단합니다.

    이 기능들은 특별한 일부의 게시판에만 사용하는 경우라 sketchbook5_MH 게시판 스킨에 추가하지 않고 Tip 으로만 남깁니다.

    이 자료의 평점 (참여 : 0 / 총 점수 : ) 평균 평점 : ★ ★ ★ ★ ★ 0.0점 내 평점 : ★ ★ ★ ★ ★ 0점
    팔공산

    이 世上에서 現在가 가장 중요한 時間이며,
    내가 만나고 있는 바로 그 사람이 第一 중요한 사람이며,
    同時에 가장 중요한 것은 그 사람에게 善으로서 行하는 것이다.

    원작자
    80san
    출처
    https://claude.ai/
    적용여부
    적용
    적용페이지
    https://clubmen.co.kr/members
    적용시점 버전
    Rhymix 2.1.36
    사진
    %photo1%
    첨부 7
    • image.png 19.7KB · 1
    • image.png 5.9KB · 1
    • image.png 74.8KB · 1
    • 001.jpg 98.0KB · 1
    • image.png 61.8KB · 1
    • image.png 66.7KB · 1
    • korea_categories.zip 66.6KB · 3
    #sketchbook5 #게시판 #행정동 #분류
    목록

    댓글 0

    사진 및 파일 첨부

    여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

    파일 용량 제한 : 0MB (허용 확장자 : *.*)

    업로드 중... (0%)

    0개 첨부 됨 ( / )
    전체 축제 95 행사 11 꽃이야기 3 관광 2 맛집 0 낚시 0 스포츠 0 기타 0 설치 6 Checkpoint 19 Lora 21 기타 5 AI 2 전신 18 얼굴 3 명화 11 풍경 2 기타 1 포토 3 Tip 4 정보 6 설정관련 0 코드관련 0 주문관련 2 기타 2 후기 0 관광 32 학교 2 기타 2 Story 16 My Album 21 Etc 10 php 0 html 2 css 12 JavaScript 4 큰배경 9 작은배경 16 중간배경 8 기타 4 Tip 65 위젯 86 애드온 7 모듈 3 스킨 36 레이아웃스킨 22 게시판스킨 14 기타 29 템플릿 13 위젯스타일 5 에디터 컴포넌트 6 문하우스 159 Xe 119 기타 34 XE타운 33 기본자료 2 프로그램 5 스킨 2 위젯 12 기타 4 애드온 27 모듈 9 OS관련 41 Win10 14 Mac 3 Win11 5 소프트웨어 31 Photoshop 9 한글 5 Editor 4 Excel 4 하드웨어 5 Pico 4 홈페이지 7 기타 26 인터넷 26 스마트폰 4 한글자막 3 취미 1 그래픽 0 사운드 1 메인보드 0 프린트 0 기타 7 통신 2 유틸 37 멀티미디어 25 기타 9 코덱 0 윈도우관련 11 크랙 1 바이러스 4 인터넷 7 WEB 9 스마트폰 6 Xe 506 레이아웃 76 위젯 70 게시판 86 졸졸이 10 컴퓨터A/S 3 답변 4 기타 39
    번호 제목 글쓴이 날짜 조회 수 게시판 이름 사용자 ID 추천 수
    38 한글자막 히든페이스 한글자막 팔공산 26.08.14 11 달집의 팁 80san 0
    37 한글자막 군체 한글자막 팔공산 26.08.15 59 달집의 팁 80san 0
    36 한글자막 킬러들의 쇼핑몰 2 한글자막 1~8부 완결 팔공산 26.08.15 891 달집의 팁 80san 0
    » 문하우스 전국 행정동 분류로 사용하기 팔공산 26.08.25 9 RM 팁 80san 0
    34 문하우스 스케치북 게시판 스킨 분류를 드릴다운 스타일(단계별 하위분류) 추가 팔공산 26.08.21 86 RM 팁 80san 0
    33 문하우스 타 프로그램의 API를 이용해서 게시판 본문에 정보 불러오기 팔공산 26.08.17 4 RM 팁 80san 0
    32 문하우스 확장변수 형식을 "파일 업로드" 선택시 웹진형식에 이미지로 출력되게 하는 방법 팔공산 26.08.15 5 RM 팁 80san 0
    31 문하우스 php 8.4 업데이트시 글 작성 오류 해결 팔공산 26.07.30 25 RM 팁 80san 0
    30 애드온 자동 스크롤 애드온 수정판 팔공산 26.07.18 105 나의 RM 80san 0
    29 멀티미디어 알씨(ALSee) 구버전 6.9 +5 팔공산 25.11.06 737 유틸리티 80san 0
    28 모듈 게시글 별 평점 모듈 +1 팔공산 26.01.27 323 나의 RM 80san 0
    27 에디터 컴포넌트 이미지 슬라이드 MH Slide 팔공산 26.07.09 232 나의 RM 80san 0
    26 모듈 첨부파일 외부 저장소 이동 팔공산 26.07.27 0 RM 자료 80san 0
    25 에디터 컴포넌트 탭 형태의 콘텐츠 박스 MH Tab 팔공산 26.07.16 159 나의 RM 80san 0
    24 에디터 컴포넌트 비교 슬라이더 MH Before/After 팔공산 26.07.07 186 나의 RM 80san 0
    23 에디터 컴포넌트 접기/펼치기 박스 MH Folding Box 팔공산 26.06.24 229 나의 RM 80san 0
    22 My Album 창원시 마창대교 근처 카페모조 팔공산 25.11.16 20 Blog 80san 0
    21 에디터 컴포넌트 이미지 확대 MH Zoom 팔공산 26.07.03 221 나의 RM 80san 0
    20 템플릿 템플릿 컴포넌트 폴딩 MH 템플릿 팔공산 26.06.24 186 나의 RM 80san 0
    19 모듈 쇼핑몰 모듈 팔공산 26.06.13 26 RM 자료 80san 0
    1 2
  • Main
    • 자유게시판
    • 묻고답하기
    • 공지사항
    • 방명록
    • 출석부
    • Blog
      • 견문록
    • 통합게시판
      • TimeLine
      • MH위젯
    • Lotto 복권
      • 스티커구매
      • 퀴즈게임
      • 섯다게임

    댓글

    • {@sticker:538552|538554}
      08.17
    • AI 도 어려워 하네요 ㅠㅠ 힘들 듯
      07.15
    • 답변감사합니다.
      07.15
    • 저도 AI 가 거의 다 만든거라 ???? AI 에게 물어봐야 할 듯 한데 그건 이 모듈의 영역이 아니라 게시판 스킨의 영역인 것 같습니다. 연구해 보겠습니다.
      07.15
    • [RV:5]혹시 목록에서 별점 순으로 정렬 링크를 넣는 방법도 있을까요?
      07.15
    • 감사합니다.
      05.06
    • 혹시 풍문님 이세요?
      04.24
    • 같은 글 세 개는 삭제 했습니다
      04.24
    • 마음 속 우편함 세상 모든 사람들은 각자의 마음속에 우편함을 하나씩 두고 있다. 그 속에는 개개인의 이야기가 들어 있다. 누군가는 우편함 속 이야기를 전부 꺼내 보여 주기도 하고, 누군가는 우편함밖으로 아무것도 새어 나오지 못하게 꾹 닫아 놓는다. 우편함을 열어 보여 줄지 말지는 주인 마음인데, 우리는 왜 그토록 ...
      04.23
    • 사랑의 다른 말이 `함께`인 줄을 깨닫기에는, 먼저 아픔 가득한 시간들이 필요했습니다. 인생이라는 책갈피에 `함께`라는 낱말을 가만히 적어 봅니다. 마음이 다만 봄풀처럼 흔들릴 때에 가끔은 꺼내어 읽어보게요. 이토록 좋은 말 한마디, 이토록 햇살 가득한 말 한마디, `함께`가 그대로 사랑입니다. 글 / 홍수희 KT인터넷
      04.23
    • Today3
    • Yesterday4
    • Total4,830,947
  • 문하우스
  • 문하우스는 Google Chrome, 1280*1024 이상의 모니터 해상도에서 최적화 되어 있습니다.
  • 무단 E-mail 추출이나, 무단,성인광고를 허용치 않습니다.
  • Main
    • 자유게시판
    • 묻고답하기
    • 공지사항
    • 방명록
    • 출석부
    • Blog
      • 견문록
    • 통합게시판
      • TimeLine
      • MH위젯
    • Lotto 복권
      • 스티커구매
      • 퀴즈게임
      • 섯다게임
  • 축제알림
  • Data
    • 유틸리티
      • 정회원전용
    • 컴퓨터Tip
    • AI
      • Tip
      • AI Gallery
      • View
    • YouTube
    • 드라이브
    • 사진
    • 즐겨찾는 홈피
  • Rhymix
    • 나의 Rhymix
      • Rhymix 배경이미지
    • Rhymix 팁
    • Rhymix 자료
    • Html
  • Mh_Layouts
    • MH_Justice
      • MH_Justice_W
    • MH_Gallery
    • MH_Sideways
    • Mh_Fullpage
    • MH_Thomsander
    • Mh_LeftMenu
    • Mh_White
      • Map Board Skin
    • MH_Sliding
    • MH_Pointy
    • Xedition_MH
      • Book Board Skin
      • 위젯 테스트
    • MH_Select
    • Mh_Simple
    • MH_Lego
    • Earth Is One
  • Sale
    • 주문요청
    • 주문확인
    • Shopping QA
    • 구매자 게시판
    • 의뢰게시판
    • MH_Justice
      • Justice Manual
    • MH_Multi
      • Multi Manual
    • MH_Brickfolio
      • Brickfolio Manual
      • Shop
    • MH_SmartBanner
    • Mh Gallery
      • Gallery Manual
 2004 Moonhouse homepage. all rights reserved.
by OrangeDay