Top Panel
위치: 관리자>외모>위젯>Hidden top panel area
설정: 관리자>외모>Theme Options>Header>Use Top Panel [설정하기]
Right Panel
관리자>외모>위젯>Right side panel area
설정: 관리자>외모>Theme Options>
Sidebars>Use Right Panel
[설정하기]
Quick Menu
설정: 관리자>외모>Theme Options>
Sidebars>Use Right Quick Menu
[설정하기]
네이버 톡톡
설정: 관리자>외모>Theme Options>
Sidebars>Quick Menu - Naver Talk ID
[설정하기]
카카오 플러스 친구
설정: 관리자>외모>Theme Options>
Sidebars>Quick Menu - Kakao Plus Friend ID
[설정하기]
망보드 커스터마이징 기초
Home /

망보드 커스터마이징 기초

* 망보드 커스터마이징 준비하기

1. 망보드 기본 스킨 "bbs_basic" 을 동일한 skins 폴더에 다른 이름 "bbs_hometory"으로 복사한다.
2. 복사한 스킨 폴더에 스킨 템플릿 파일을 만든다 "mangboard/skins/bbs_hometory/includes/skin-template.php"
  – 스킨 템플릿 파일은 템플릿 폴더(mangboard/templates)에 있는 템플릿 코드 보다 우선해서 적용되기 때문에 템플릿 폴더에 있는 템플릿을 수정하지 않아도 된다.
3. 수정이 필요한 템플릿을 템플릿 폴더에서 찾아 템플릿 함수를 스킨 템플릿 파일로 복사해서 수정한다.
4. 스킨 수정 작업이 많을 경우 게시판 템플릿 파일인 mangboard/templates/tpl.board.php 파일을 스킨 템플릿 파일에 그대로 복사해서 사용한다
  – 게시판 템플릿 파일은 목록, 글작성, 글보기, 댓글에 대한 기본적인 템플릿 함수가 들어있다.
5. 자주 사용하는 함수는 사용자 템플릿 파일을 만들어 등록한다.

 

* 사용자 템플릿 파일 제작하기

1. 템플릿 이름을 만든다. (hometory)
  – 템플릿의 이름은 모델에서 사용하는 타입의 접두사로 사용된다
  – mbw_add_template("hometory","mbw_get_hometory_template");
    ("hometory_"로 시작하는 타입은 mbw_get_hometory_template 템플릿 함수를 통해 파싱된다)
2. 템플릿 폴더(mangboard/templates)에 "mtpl.hometory.php" 사용자 템플릿 파일을 만든다

3. 아래의 템플릿 기본 코드를 새로만든 템플릿 파일에 복사한다 (hometory 부분은 사용자 이름으로 전부 수정)
4. 템플릿 폴더(mangboard/templates)에 복사된 파일은 자동으로 등록되기 때문에 추가적인 등록은 필요하지 않다
5. 모델에서 사용자 템플릿 타입을 사용한다.
 – {"field":"fn_user_name","name":"이름","width":"200px","type":"hometory_name"},
6. 템플릿 함수에서 "hometory_name" 타입으로 출력할 내용을 사용자가 원하는 스타일로 수정한다.


* 템플릿 기본 코드

<?php

//템플릿 함수 등록(템플릿 타입의 접두사, 템플릿 함수명)
mbw_add_template("hometory","mbw_get_hometory_template");        //"hometory_"로 시작하는 타입은 mbw_get_hometory_template 템플릿 함수를 통해 파싱

if(!function_exists('mbw_get_hometory_template')){
    function mbw_get_hometory_template($mode, $data){
        global $mdb,$mstore,$mb_languages;
        $template_start        = '';
        $item_type            = $data[“type”];

        if($item_type=='hometory_name'){
            //$template_start    = '<input'.$data[“ext”].__STYLE(“width:”.$data[“width”].”;”.$data[“style”]).’ name=”‘.$data[“item_name”].'” id=”‘.$data[“item_id”].'” value=”‘.$data[“value”].'" type="'.$item_type.'" />';            
        
        }else if($item_type=='hometory_level'){
            //$template_start    = '<input'.$data[“ext”].__STYLE(“width:”.$data[“width”].”;”.$data[“style”]).’ name=”‘.$data[“item_name”].'” id=”‘.$data[“item_id”].'” value=”‘.$data[“value”].'" type="'.$item_type.'" />';            

        }
        return $template_start;
    }
}

?>

 

 

* 스킨 필터 파일 추가하기

1. 망보드 코어 필터 파일(mangboard/includes/skin-filters.php)을 스킨 폴더(스킨이름/includes/skin-filters.php)로 복사한다.

2. 스킨 폴더에 스킨 필터 파일이 존재하면 망보드 코어 필터 파일을 실행하지 않는다.

3. 필터 파일은 데이타를 보여줄 때 특정 문자나 이미지를 추가할 때 사용한다.

 

* 스킨 API 추가하기

1. 망보드 API(mangboard/api) 폴더를 스킨 API(스킨이름/api) 폴더에 복사한다

2. 스킨 폴더에 API 파일이 존재하면 우선적으로 실행된다.

3. 망보드 코어 API를 수정하기 위한 방법으로 수정에 필요한 최소한의 API 파일만 복사해서 사용한다.

 

* 스킨 Language 파일 추가하기

1. mangboard/includes/languages/mb-languages.php 파일의 내용과 이름을 수정해서 아래 스킨 폴더에 복사   

  – 다국어 Language 파일 

    파일 : "스킨/includes/languages/skin-languages-ko_KR.php"

             (ko_KR 부분을 해당 나라에 맞는 코드로 수정해서 사용)  

  – 기본 Language 파일 (나라별 언어 파일이 없을 경우 사용될 언어파일)

    파일 : "스킨/includes/languages/skin-languages.php"

2. 스킨 Language 파일은 기본 언어 파일(mangboard/includes/languages/mb-languages.php)을 읽어온 다음에 추가로 읽어오도록 설정되어 있다.

3. 스킨 Language 파일은 mangboard/includes/languages/mb-languages.php 파일에 없는 내용 위주로 추가해서 사용한다.

 

* 스킨의 기본 실행 순서

1. "_header.php" 파일

2. 게시판 추가시 설정한 상단내용

3. 게시판 상단 액션으로 설정한 내용 : do_action('mbw_board_header')

4. 게시판 mode 파일 

  – 글목록(list.php), 글보기(view.php), 글작성(write.php), 댓글(comment.php) : 모델 및 템플릿을 이용해 태그 생성함

  – mode=list로 설정되어 있으면 글목록 파일이 실행됨

  – URL 주소에 list_type=calendar 파라미터가 있으면 list.php 파일 대신에 calendar.php 파일을 불러옴, write_type, view_type 도 동일함     

5. 게시판 하단 액션으로 설정한 내용 : do_action('mbw_board_footer')

6. 게시판 추가시 설정한 하단내용

7. "_footer.php" 파일