모바일 기기 접속 체크 - MobileDetect 활용 > 그누보드5 팁자료실

그누보드5 팁자료실

모바일 기기 접속 체크 - MobileDetect 활용 정보

모바일 기기 접속 체크 - MobileDetect 활용

첨부파일

common.php (19.8K) 262회 다운로드 2014-05-30 21:41:59

본문

최근 그누보드5로 갈아탄 커뮤니티 사이트의 모바일 접속 비율을 확인해 본 결과  PC를 통한 접속보다 훨씬 더 많은 접속자들이 모바일 기기를 통해 접속하고 있었습니다.

이런 현상은 이제 더욱 가속화 될 것으로 보고 있고
모바일 서비스를 고려하지 않고 홈페이지를 운영하고 계시다면, 빨리 모바일에 집중할 필요가 있을것 같습니다.

그런데, 모바일로 접속하는 기기를 적절하게 판별하고 서비스를 제공하기 위해서는
접속하는 모바일 기기들을 정확히 확인하고 기록을 남길 필요가 있고
빠른 장비의 추가로 관련 모듈의 업데이트가 지속적으로 필요할 것입니다.

기존 그누보드5에서 제공하고 있는 G5_MOBILE_AGENT 값으로는 다양한 모바일 기기에 모두 대응하기에는 한계가 있을것으로 생각되어,  http://mobiledetect.net/ 에서 제공하는 클래스를 활용한

PC접속/ 모바일 기기접속 / 태블릿 접속 여부를 판단하여 서비스하는 방법을 설명드리고자 합니다.


아래는 기존 그누보드 기본 모바일 기기 체크 입니다.
define('G5_MOBILE_AGENT',  'phone|samsung|lgtel|mobile|[^A]skt|nokia|blackberry|android|sony');


1. 설치 및 활용방법
http://mobiledetect.net/ 에서 최신버전을 다운받습니다. (현재 2.8.0 버전)
다운받은 ZIP 파일을 그누보드 하위 적절한 폴더에 압축을 풀고 업로드 합니다.
(Mobile-Detect 폴더에 압축을 풀었습니다.)

2. common.php 파일을 열어 config.php include문 하단에 해당 클래스를 추가해 줍니다.

include_once($g5_path['path'].'/config.php');  // 설정 파일
require_once (G5_PATH.'/Mobile-Detect/Mobile_Detect.php'); // 모바일 Detect Class 파일

3. 해당 모듈이 포함되었으므로 기존 그누보드5 모바일 설정 부분을
//==============================================================================
// Mobile 모바일 설정
// 쿠키에 저장된 값이 모바일이라면 브라우저 상관없이 모바일로 실행
// 그렇지 않다면 브라우저의 HTTP_USER_AGENT 에 따라 모바일 결정
// G5_MOBILE_AGENT : config.php 에서 선언
//------------------------------------------------------------------------------
$is_mobile = false;
if (G5_USE_MOBILE) {
    if ($_REQUEST['device']=='pc')
        $is_mobile = false;
    else if ($_REQUEST['device']=='mobile')
        $is_mobile = true;
    else if (isset($_SESSION['ss_is_mobile']))
        $is_mobile = $_SESSION['ss_is_mobile'];
    else if (is_mobile())
        $is_mobile = true;
}

아래와 같이 수정해 줍니다.

$is_mobile = false;
if (G5_USE_MOBILE) {
    if ($_REQUEST['device']=='pc')
        $is_mobile = false;
    else if ($_REQUEST['device']=='mobile')
        $is_mobile = true;
    else if (isset($_SESSION['ss_is_mobile']))
        $is_mobile = $_SESSION['ss_is_mobile'];
    else if (!$_SESSION['ss_is_mobile']) {
$detect = new Mobile_Detect;
$deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' : 'phone') : 'computer');
        if ($deviceType == 'computer') {
          $is_mobile = false;
                } else { $is_mobile = true; }
}
}


그누보드5 원본 그대로 일 경우에는 첨부한 common.php 를 다운받아 쓰시면 됩니다.

다음번에는 설치한 클래스를 활용해서 현재 접속자의 접속기기를 표시하거나
관리자 페이지의 접속현황 정보를 모바일 기기별 상세 접속현황을 파악할 수 있는 자료를
만들어 선보이겠습니다.
추천
9

댓글 7개

다음번에는 설치한 클래스를 활용해서 현재 접속자의 접속기기를 표시하거나
관리자 페이지의 접속현황 정보를 모바일 기기별 상세 접속현황을 파악할 수 있는 자료를
만들어 선보이겠습니다.

--> 기대 됩니다!!
G5(YC) 5.0.22 버전에서는 다음에서 어떻게 바꿔줘야할지..
근데 아래 구문을 수정하지 않아도 체크는 제대로 하는거 같은데
꼭 해줘야 할까요?

if (G5_USE_MOBILE && $set_device) {
    if ($_REQUEST['device']=='pc')
        $is_mobile = false;
    else if ($_REQUEST['device']=='mobile')
        $is_mobile = true;
    else if (isset($_SESSION['ss_is_mobile']))
        $is_mobile = $_SESSION['ss_is_mobile'];
    else if (is_mobile())
        $is_mobile = true;
} else {
    $set_device = false;
}
전체 2,431 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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