본문 바로가기
아미나빌더

그룹/ 보드별 사이드 메뉴 선택 출력 방법

by 우아한친구들 2017. 9. 6.
반응형

#메인 / 그룹별 / 보드별 사이드 메뉴(2단 구성) 출력 유무 선택하기 

그룹 / 보드별 각기 다른 사이드 메뉴 출력하기 임

 

 

<<2017년 6월 23일 아미나 빌더 기준으로 작성>>

 

# 메인페이지 사이드 출력  

   메인 페이지 소스 하단에 메인에서 사용되는 사이드 메뉴가 직접 코딩되어 있음

   그러니 스위처나 혹은 필요에 따라 main.php 에서 관련 소스 삭제 시 출력되지 않음

   요건 각자도생 T.T

 

$ 기본 사이드 메뉴파일 

   사용하는 테마 폴더 내,side.php 존재

   기본은 단일한 사이드 메뉴 1개가 존재함

 

 

1. 그룹별로 사이드 사용 유무 결정하기

   사용 테마>assets>thema.php  상단에 아래 소스를 붙여 사이드 출력 유무 결정할 수 있음 

 

# 그룹 아이디에 따라 다르게 표현되며 12는 1단 9는 2단(사이드메뉴 표기) 구성임

  그룹 아이디는 임의로 기재해본 것임 

 

   <?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

 

switch($gr_id) { 

case 'news' : $at_set['page'] = 12; break; 

case 'community' : $at_set['page'] = 9; break; 

case 'community' : $at_set['page'] = 9; break; 

case 'forum' : $at_set['page'] = 9; break;

case 'infor' : $at_set['page'] = 9; break;

case 'gallery' : $at_set['page'] = 12; break;

?> 

 

 

2. 보드(게시판)별로 사이드 사용 유무 결정하기

   사용 테마 > assets > thema.php 상단에 아래 소스를 붙여 사이드 출력 유무 선택 

 

# 상기 그룹과 마찮가지로 12는 1단 9는 2단(사이드메뉴 표기) 구성임

# 보드가 속한 상위 그룹에서 사이드를 출력하지 않아도 아래 명령어로 정의된 보드는 사이드 메뉴 나타남 

# 보드 아이디는 임의로 기재해본 것임 

  

<?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

 

switch($bo_table) { 

case 'news_inter' : $at_set['page'] = 12; break; 

case 'news_world' : $at_set['page'] = 9; break; 

?>

 

3. 그룹 혹은 보드에 따라 각기 다른 사이드 메뉴를 출력하는 방법

   사용테마 side.php 상단에 다음 코드 삽입

   이후 테마>side 폴더 안에 본인이 새롭게 코딩한 사이드 파일을 업로드하여 출력 

 

# 상기 1번과 2번에서 사이드 메뉴를 사용하는 것으로 지정하였는데 

별도의 다른 페이지를 기재하지 않는 경우는 side 폴더 내 basic-side.php  내용 출력 

그외에는 각자 새롭게 코딩하여 side 폴더에 복사해 넣은 사이드 페이지 경로로 연결 출력

 

  3-1> 그룹 별 별도 사이드 메뉴 출력

   # 이하 소스를 삽입 

 

<?php 

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 

 

if($gr_id == "aaa") { 

include_once(THEMA_PATH.'/side/aaa.php'); 

return; 

} else if($gr_id == "bbb") { 

include_once(THEMA_PATH.'/side/bbb.php'); 

return; 

} else if($gr_id == "ccc") { 

include_once(THEMA_PATH.'/side/ccc.php'); 

return; 

?> 

 

   3-2> 보드별 별도 사이드 메뉴 출력 

   # 이하 소스를 삽입 

 

<?php 

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 

 

if($bo_table == "aaa") { 

include_once(THEMA_PATH.'/side/aaa.php'); 

return; 

} else if($bo_table == "bbb") { 

include_once(THEMA_PATH.'/side/bbb.php'); 

return; 

} else if($bo_table == "ccc") { 

include_once(THEMA_PATH.'/side/ccc.php'); 

return; 

?>

 

이 외에 동일한 사이드 메뉴를 보드 및 페이지별로 선택하여 출력 유무를 지정하는 것은 

이미 아미나 테마관리 메뉴설정 서브메뉴 및 문서별 설정에서 와이드 표기 유무로 가능하니 

이는 소개 생략함...T.T

 

 

본게시글의 메인 출처는; http://amina.co.kr 입니다.

해당 게시글은 개인적인 질문에 대한 답변을 참고한 것입니다.

 

반응형

댓글