그누보드를 모바일로 접속할 경우 스킨을 다르게 설정하는 방법 강좌.
모바일로 접속시 주소가 데스크탑 PC로 접속할때와 다르게 하는 방법과 주소는 똑같이 하고 user-agent가 핸드폰일 경우 스킨을 다르게 하는 방법이있습니다.
이방법은 설치가 쉬운반면 깔끔하지 않은 느낌?
저는 주소가 PC버전과 모바일버전이 똑같은걸 선호해서 제 사이트엔 주소를 똑같이 적용했습니다..
1. 모바일용 주소를 다르게 해서 모바일 스킨 설치하는 방법
m.domain.com이나 domain.com/m/이런 식으로 모바일 접속주소를 다르게하는 겁니다.
그누보드 모바일 스킨 연동하려면 우선 sir.co.kr(그누보드 공식 홈페이지) 빌더 메뉴에서 모바일 빌더를 검색하세요.
그누보드5는 sir.co.kr/bbs/board.php?bo_table=yc5_builder
그누보드4는 sir.co.kr/bbs/board.php?bo_table=g4_builder
가 모바일 빌더를 받을 수 있는 게시판입니다.
위즈 모바일 빌더를 기준으로 설명하겠습니다.
이 위즈 모바일은 Lite버전은 무료고 Full버전은 유료 상용으로 배포하고있습니다...
그누보드를 domain.com/bbs에 설치하셨을 경우
utf-8과 euc-kr버전이 묶여있는데 자기 서버에 맞는걸로
모바일 빌더를 domain.com/bbs/에 업로드하세요.
어떻게 업로드하는지 아래 캡쳐 화면을 보시면 이해가 잘되실 겁니다.
업로드를 완료했다면 기본적인 그누보드 모바일 스킨 연동이 완료된겁니다..
그럼 자기 홈페이지주소/그누보드 설치폴더/m으로 접속하시면 모바일 연동페이지를 볼수있습니다..
예:domain.com/bbs/m
그누보드 모바일 스킨 개별 설정하는 방법
모바일 연동페이지 맨밑에보면 관리자메뉴가 보이죠? 접속하세요
예: domain.com/bbs/m/adm
오른쪽상단의 메뉴를 클릭하면 게시판관리메뉴가 떠요 클릭하세요...
domain.com/bbs/m/adm/board_display.php 이런 페이지로 이동할겁니다.
여기서 게시판별로 모바일 스킨을 따로 적용할 수 있습니다..
모바일 게시판 스킨을 따로 업로드하려면
홈피주소/설치폴더/m에 업로드하면 됩니다.
예:domain.com/bbs/m/skin/board
2. PC버전과 모바일버전 접속 주소를 똑같게 모바일 스킨 설치하는 방법
이 방법은 초보자는 약간 복잡할 수 있습니다. 여기서 설명한거 외에도 약간 손볼일이 있을수있음...
우선 1번에서 설명한 주소에서 모바일 스킨을 받으시거나 직접만드세요..
그다음 그누보드 설치폴더의 extend 폴더에 아래와 같은 php파일을 만들어 업로드하세요.
아래 소스는 모바일로 접속했는지 확인하는 소스입니다...
$board_skin_path="../skin/board/mobile"; 이 부분은 모바일 접속시 스킨이름을 mobile로 바꾼다는 거지요..
구하신 모바일 스킨을 그누보드 스킨폴더(/skin/board/)에 mobile폴더에 업로드하세요..
$member_skin_path="$g4[path]/skin/member/mobile";는 멤버스킨을 mobile로 바꾸는 겁니다..
member스킨도 그누보드 사이트에서 받아서 그누보드설치폴더/skin/member/에 mobile폴더를 만들어서 업로드하세요.
이렇게 하면 기본적인 설치는 끝납니다..
<?php
function MobileCheck() {
$checkCount = 0;
if (preg_match('/(iphone|lgtelecom|skt|mobile|samsung|nokia|blackberry|android|android|sony|phone|symbian)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
$checkCount++;
}
if (preg_match('/(ipad)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
$checkCount=0;
}
if (strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') > 0) {
$checkCount++;
}
if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'windows') > 0) {
$checkCount = 0;
}
return ($checkCount > 0) ? "mobile" : "pc";
}
if ($_GET["vtype"]=="m") {
set_session("vtype", "m");
}
if (MobileCheck()=="mobile") {
$board_skin_path="../skin/board/mobile";
$member_skin_path="$g4[path]/skin/member/mobile";}
?>