XpressEngine
  • INTRODUCE
  • 시작하기
    • 권장 사양
    • 터미널 환경 설치
    • 웹 환경 설치
    • 업데이트
    • 문제 해결(디버깅)
  • 사이트 설정
    • 회원 설정 및 관리
    • 관리자 비밀번호 설정
    • 사이트맵 추가 및 제거
    • 컨텐츠 관리 및 신고 집계
    • Store 토큰 설정
    • 익스텐션 설치 / 업데이트
    • 기본 테마 설정
    • SEO 설정
    • 다국어 설정
    • 캡챠 설정
  • 번들 플러그인
    • 미디어 라이브러리
    • 외부페이지 플러그인
    • 플러그인 업로드
  • 개발자 문서
    • 개요
    • 디렉토리 구조
    • 컴포넌트
    • 플러그인
    • 서비스
    • 라이프 사이클
    • 라우팅
    • 컨트롤러
    • 요청
    • 응답
    • 프레젠터
    • 뷰
    • 템플릿
  • 플러그인 개발
    • 개요
    • 기본경로 및 구조
    • 기본 플러그인 생성
    • 플러그인 정보 추가 및 수정
    • 관리자 사이트 메뉴 추가
    • 위젯 개발/제작
    • 모듈 개발/제작
    • 에디터 제작
    • 에디터 툴 제작
    • UI 오프젝트 제작
    • 토글 메뉴 제작
    • 다이나믹 필드 제작
    • 다이나믹 필드 스킨 제작
  • 테마 개발/제작
    • 기본경로 및 구조
    • 기본 테마 생성
    • 서브 테마 활용
    • 설정 파일 작성
    • 테마 편집 기능
  • 스킨 개발/제작
    • 기본경로 및 구조
    • 기본 스킨 생성
    • 설정 파일 작성
  • 서비스
    • 카테고리
    • 캡챠
    • 설정
    • 문서
    • 키생성(Keygen)
    • 메뉴/모듈
    • 이벤트/인터셉션
    • 파일/스토리지
    • 회원/인증
    • 모바일
    • 권한
    • 데이터베이스
    • 메일
    • 프론트엔드
    • 이미지처리
    • 세션
    • 헬퍼
    • 쿠키
    • UI오브젝트/폼빌더
    • 카운터
    • 휴지통
    • 유효성검사
    • 오류처리
    • 테마
    • 위젯박스
  • 프론트엔드 (JS)
    • 프론트 엔드 JS 시작하기
    • Lang
    • Page
    • Page Modal
    • Request
    • Validator
Powered by GitBook
On this page
  • 모바일(mobile)
  • 기기 타입 강제 지정
  • 현재 접근한 기기의 타입 검사

Was this helpful?

  1. 서비스

모바일

모바일(mobile)

플러그인을 개발할 때, 현재 접근한 기기가 데스크탑인지 모바일 기기인지 알아야 할 때가 있습니다. XE는 자체적으로 접근한 기기의 타입을 판단하고, 이를 사용할 수 있도록 인터페이스를 제공합니다.

기기 타입 강제 지정

XE는 우선 브라우저의 user-agent 정보를 바탕으로 현재 접근한 기기의 타입이 데스크탑인지 모바일인지 검사합니다.

만약 사용자가 접근한 기기의 타입을 강제로 지정하고 싶다면, 요청 URL의 쿼리스트링을 사용해 지정할 수 있습니다. 요청하는 URL에 ?_m=1을 추가하면 XE가 현재 접속한 기기를 모바일 기기로 판단하도록 강제 지정할 수 있습니다. 반대로 ?_m=0을 추가하면 데스크탑 기기로 판단하도록 강제 지정됩니다. 강제로 지정한 정보는 쿠키에 추가되어 차후 요청시에도 당분간 유지됩니다.

코드상에서 기기 타입을 지정하고 싶다면 직접 쿠키를 저장하면 됩니다. 쿠키 이름을 mobile에 값을 '0' 또는 '1'로 저장하십시오.

// 현재 접속 기기를 120분간 모바일 기기로 강제 지정,
\Cookie::queue('mobile', '1', 120);

현재 접근한 기기의 타입 검사

XE는 현재 접근한 기기의 타입은 Request 인스턴스를 통해 알 수 있습니다.

$isMobile = request()->isMobile();

isMobile 메소드를 사용하면, 현재 설정된 기기의 타입이 모바일인지 검사할 수 있습니다. 만약 접근한 기기 타입이 강제로 지정돼 있다면, 강제로 지정된 타입을 반환합니다.

강제로 지정된 타입과 관계없이 순수하게 브라우저의 user-agent 정보만으로 판단된 기기 타입을 알고싶다면 대신 isMobileByAgent 메소드를 사용하십시오. (또는 isMobile(true)을 사용하십시오. 같은 응답을 합니다.)

$isMobile = request()->isMobileByAgent();
Previous회원/인증Next권한

Last updated 6 years ago

Was this helpful?