게시판스킨 개별로 상하단을 include 하는 HOOK > 그누보드5 플러그인

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

게시판스킨 개별로 상하단을 include 하는 HOOK 정보

게시판스킨 개별로 상하단을 include 하는 HOOK

첨부파일

board_skin_hook.zip (641byte) 27회 다운로드 2023-08-01 08:26:01 포인트 차감100
테스트한 버전5.5.8.3.2
호환 가능 버전무조건 5.5.8.2.6 이상

본문

 

1. 첨부파일의 압축을 풀고 extend 디렉토리로 업로드합니다.

예전 5.5.8.2.6 이전 버전 게시판 스킨의 기본구조는 아래와 같았습니다.

 

3717943588_1690843769.4387.jpg

 

----------

 

2. 하지만 5.5.8.2.6 버전부터는 아래처럼 게시판의 상하단 hook 이 추가되었습니다. 운영진들께 감사요.ㅋ

 

3717943588_1690843888.2621.jpg

 

----------

 

3. 그래서... 잔대갈빡을 양껏 굴려본 결과 아래처럼 개별 스킨마다

상단에는 css 파일과 head.php 를, 하단에는 tail.php 를 인클루드할 수 있는 플러그인을 하나 올립니다.

 

3717943588_1690844240.7764.jpg

 

----------

 

4. basic 스킨을 예로 든다면 basic 스킨의 기본 형태는 아래와 같습니다.

 

3717943588_1690844338.7422.jpg

 

----------

 

5. 여기에 hook 이라는 이름의 디렉토리를 추가하고 그 안에 style.css 와 head.php 와 tail.php 를 만들어주면 자동으로 그 파일들이 인클루드 됩니다. 파일은 상황에 따라 셋 모두 만들 필요없이 셋 중 하나만 만들어도 되구요.

물론 hook 디렉토리가 없거나 그 안의 파일이 없으면 그냥 이전처럼 기능합니다.

 

3717943588_1690844495.45.jpg

 

----------

 

6. 어차피 함수로 만든 것이기 때문에 기본변수를 사용하려면 global 로 선언해야 하는데 본인들의 입맛에 맞춰서요.

예를 들어 저는 첨부파일 코드에서 $board 만 글로벌로 선언을 해서 hook 파일 내에서는 글로벌로 선언되지 않은 $bo_table 은 사용할 수 없고 $board['bo_table'] 만 써야 합니다.

그리고 $view 와 $list 는 원래부터 상단파일 이후에 생기는 변수라서 head.php 에서 애타게 불러봐야 응답하지 않기에 이건 하단파일에만 불러와 주었습니다.

등등 각개의 주의점은 사용자 하고 싶으대로요.

 

----------

 

7. 제가 3개의 불린값을 만들어 놓았습니다.

$skin_hook['write'] 와 $skin_hook['view'] 와 $skin_hook['list'] 입니다.

이건 현재 페이지의 위치가 글쓰기 페이지인지, 뷰 페이지인지, 리스트 페이지 인지를 판단합니다.

가령 뷰페이지만 주는 코드라면 아래처럼요.

 

if ($skin_hook['view']) {

    해당코드

}

 

만일 글쓰기와 글수정을 판단하려면 $wr_id 를 글로벌로 선언해 놓은지라 아래처럼 조건을 만드세요.

 

$skin_hook['write'] && $wr_id == 0 ----- 글쓰기

$skin_hook['write'] && $wr_id > 0 ----- 글수정

 

또한 리스트와 뷰에만 적용하려면 $skin_hook['list'] || $skin_hook['view'] 이런 식으로요. 등등...

 

----------

 

8. 만일 뷰페이지에서만 따로 tail.php 를 만들어서 인클루드 하고 싶다면 hook/tail.php 에서

 

if ($skin_hook['view'] && file_exists($board_skin_path.'/hook/view_tail.php')) {

    include_once($board_skin_path.'/hook/view_tail.php');

 

위와 같이 코드를 준 후 hook/view_tail.php 를 넣어주면 되겠습니다.

추천
11

댓글 전체

미키손님도 간만에 댓글에서 뵙네요.
이 플러그인은 앞으로 제게 포인트 창고가 될 거에요.
이제부터는 무조건 이 hook 으로만 스킨을 만들고 예전 스킨 업뎃시에도 그리 할 거라서요.ㅋ
이건 포인트뿐만 아니라 제 레벨유지용으로 큰 몫을 할 거에요.ㅋ
이걸로 게시판마다 레이아웃을 달리 만드는 시리즈 팁을 올리면 한동안은 뇌세포를 레몬즙처럼 쥐어짜며 레벨업할 아이디어 찾아 삼만리로 전전긍긍 아니하여도 될듯합니다.ㅎ
예를 들어서... 현재 게시판 기본설정으로
상단파일경로는 _head.php, 하단파일경로는 _tail.php 로 되어 있는데 이거 싹 지우구요.
----------
hook/head.php 는 아래처럼
<div style="width:1200px">
<div>상단</div>
<div style="width:200px;float.left">좌단</div>
<div style="width:1000px;float.right">
게시글영역
----------
hook/tail.php 는 아래처럼
</div>
<div>하단</div>
</div>

여튼 이런 형태 등으로 만들면 게시판별로 레이아웃을 따로 줄 수 있죠.
물론 pc 만 그렇고 모바일은 또 다릅니다.
빨리 다운로드 받아가세요.
이걸 이용한 스킨들이 풀리기 시작하면 그때부터는 이 플러그인의 다운로드 포인트를 1000점 쯤으로 올릴 거에요.
요즘 포인트가 떨어져서 어떤 광분행위(?)가 나올지 모릅니다.ㅋㅋㅋ
전체 26
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT