페이지 만들기 (테마에 포함) > 그누보드5 팁자료실

그누보드5 팁자료실

페이지 만들기 (테마에 포함) 정보

페이지 만들기 (테마에 포함)

첨부파일

page.zip (3.5K) 194회 다운로드 2015-11-06 17:01:50

본문

http://sir.co.kr/g5_tip/973

위 기존에 게시했던 내용과 특별히 다른 점은 없습니다만,
페이지를 테마에 포함시키는 방법으로 변경해보았습니다.

어떤 방식이 더 바람직한지는 판단이 안되네요.
한동안 사용해보니, 이전 방식이 맞는 듯 합니다.
어쨌던 아래의 내용은 테마에 포함시키는 방법입니다.


'group_photo.php'라는 이름의 그룹 페이지를 만든다는 예를 들어봅니다.

'bbs/group.php'을 복사하고, 파일이름을 'group_photo.php'로 고칩니다.

if(defined('G5_THEME_PATH')) {
    $group_file = G5_THEME_PATH.'/group.php';
    if(is_file($group_file)) {
        require_once($group_file);
        return;
    }
    unset($group_file);
}

에서

$group_file = G5_THEME_PATH.'/group.php';

$group_file = G5_THEME_PATH.'/group_photo.php';
로 바꿉니다.



'theme/테마명/group.php'을  복사하고, 파일이름을 'group_photo.php'로 고칩니다.

if (G5_IS_MOBILE) {
    include_once(G5_THEME_MOBILE_PATH.'/group.php');
    return;
}

if(!$is_admin && $group['gr_device'] == 'mobile')
    alert($group['gr_subject'].' 그룹은 모바일에서만 접근할 수 있습니다.');

$g5['title'] = $group['gr_subject'];
include_once(G5_THEME_PATH.'/head.php');
include_once(G5_LIB_PATH.'/latest.lib.php');
?>

을...

if (G5_IS_MOBILE) {
    include_once(G5_THEME_MOBILE_PATH.'/group_photo.php');
    return;
}

if(!$is_admin && $group['gr_device'] == 'mobile')
    alert($group['gr_subject'].' 그룹은 모바일에서만 접근할 수 있습니다.');

$g5['title'] = "Photo";
$gr_id ='photo';
include_once(G5_THEME_PATH.'/head.php');
include_once(G5_LIB_PATH.'/latest.lib.php');
?>

위 예와 같이
1. 모바일 페이지 이름 : include_once(G5_THEME_MOBILE_PATH.'/group_photo.php');
2. 그룹 이름 : $g5['title'] = "Photo";
3. 그룹 아이디 : $gr_id ='photo';
를 입력해줍니다.

'최신글' 부분을 원하는대로 고칩니다.

'그룹 아이디'는 '최신글'에 있는 자동 출력용 소스 전체를 그대로 이용할 때 필요합니다.
수동으로 구성하거나 아예 출력하지 않을 때는 필요 없습니다.



'theme/테마명/mobile/group.php'을  복사하고, 파일이름을 'group_photo.php'로 고칩니다.

if(!$is_admin && $group['gr_device'] == 'pc')
    alert($group['gr_subject'].' 그룹은 PC에서만 접근할 수 있습니다.');

include_once(G5_THEME_MOBILE_PATH.'/head.php');
?>

를...

if(!$is_admin && $group['gr_device'] == 'pc')
    alert($group['gr_subject'].' 그룹은 PC에서만 접근할 수 있습니다.');

$g5['title'] = "Photo";
$gr_id ='photo';
include_once(G5_THEME_MOBILE_PATH.'/head.php');
?>

위 예와 같이
1. 그룹 이름 : $g5['title'] = "Photo";
2. 그룹 아이디 : $gr_id ='photo';
를 입력해줍니다.

'최신글' 부분을 원하는대로 고칩니다.


'메뉴 등록'에서는 제일 처음 만들었던 'bbs/group_photo.php' 파일의 경로를 입력해주면 됩니다.





그룹 페이지가 아닌 서브 페이지를 만드는 방법도 위와 동일합니다.

'그룹 아이디' 입력 부분만 필요 없습니다.
헷갈리지 않게 하려면 파일이름에 'group'을 넣지 말아야겠지요.

예 :
1. 모바일 페이지 이름 : include_once(G5_THEME_MOBILE_PATH.'/page_photo.php');
2. 페이지 이름 : $g5['title'] = "Photo";
추천
2

댓글 15개

안 그래도 이번 테마 적용된 그누 설치해서 작업해봤는데 서브 페이지 주소가 주절주절 길어져서 고민하던 참이었어요. 좋은 내용 고맙습니다^^ 한 가지 궁금한게, 서브 페이지가 많아질 경우(예를 들어 comp1.php, comp2.php 이런 식) 그만큼 bbs 내의 페이지도 늘어나야 하는게 맞는 건가요?
/bbs/p_analysis.php --------------------------------------------

include_once('./_common.php');
define('_INDEX_', true);
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

if(defined('G5_THEME_PATH')) {
    $group_file = G5_THEME_PATH.'/group.php';
    if(is_file($group_file)) {
        require_once($group_file);
        return;
    }
    unset($group_file);
}

if (G5_IS_MOBILE) {
    include_once(G5_MOBILE_PATH.'/p_analysis.php');
    return;
}

if(!$is_admin && $group['gr_device'] == 'mobile')
    alert($group['gr_subject'].' 그룹은 모바일에서만 접근할 수 있습니다.');

$g5['title'] = "입시분석";
include_once(G5_PATH.'/head.php');
include_once('./_head.php');
include_once(G5_LIB_PATH.'/latest.lib.php');

=====================================================

페이지를 추가하는 것이라 위처럼 bbs폴더에 p_analysis.php파일을 만들었습니다.
PC에서 "도메인/bbs/p_analysis.php"으로 접속하면 내용이 잘 출력됩니다.
문제는 모바일에서인데 모바일에서는 아무런 내용도 나오지 않습니다.
/theme/테마/mobile 폴더에 p_analysis.php파일을 만들어서 넣어봤는데 역시나 마찬가지에요.

/theme/테마/mobile /p_analysis.php ---------------------------------------------

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

if(!$is_admin && $group['gr_device'] == 'pc')
    alert($group['gr_subject'].' 그룹은 PC에서만 접근할 수 있습니다.');


$g5['title'] = "입시분석";
include_once(G5_THEME_MOBILE_PATH.'/head.php');
---------------------------------------------------------

제가 뭔가 잘 못 이해하고 있는건지;;;
모바일에서도 만든 페이지가 출력되려면 어느부분을 손봐야 하나요?

답변부탁드립니다~~
감사합니다!
기존의 방법과 테마에 포함시키는 방법을 섞어서 만들었기 때문이네요.
테마에 적용한 아주 간단한 예시를 첨부파일로 올렸으니, 원본 파일과 비교해서 어느 부분이 달라졌는지 살펴보세요.

http://internationale.kr/bbs/g_board.php

첨부파일의 예시가 이 주소입니다.
전체 2,412 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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