웹마스터 팁
XE에는 기본으로 불러오는 클래스 들이 많습니다. 그 중에 모바일 클래스를 조금 써봅니다.
파일 위치는 ./classes/mobile/Mobile.class.php 입니다.
이 파일에는 사용자가 접속한 장치가 어떤 장치인지 HTTP 헤더의 User-Agent 값으로 구분하는 내용이 들어있습니다. 한번 판단을 하고 나면, 효율성을 위해 쿠키에 정보를 저장해두고 이용하게 됩니다.
Mobile::isFromMobilePhone() 라는 메소드가 정의되어 있습니다. 외부에서 사용하기 가장 좋은 메소드입니다. 모든 정보를 이용해서 장치가 모바일 장비인지 확인하고, 어떤 양식의 페이지가 보여야 할 것인지 정합니다.
쿠키가 저장되어 있다면, 쿠키를 우선으로 확인하고, 쿠키가 없는 경우에는 HTTP 헤더에서 문자열을 확인해 확인합니다.
~~ByAgent 라고 정의된 메소드들은 모두 HTTP 헤더를 직접 확인하는 것들입니다.
isMobilePadCheckByAgent() 라는 것이 최근에 추가되었는데, 아이패드, 안드로이드 타블렛 등의 기기를 구분하기 위한 메소드입니다.
모바일 기기이면서도 화면이 상대적으로 넓기 때문에, 취향에 따라 다른 화면을 선택할 수 있게 도울 필요가 있다 판단했습니다. 그래서 이들 기기로 접속하면, 모바일 화면으로 이동할 수 있는 링크도 뜨지만, 기본 화면은 PC 용 화면이 뜨게 됩니다.
모듈, 애드온, 또는 스킨 개발자도 이를 이용할 수 있습니다. 클래스 모든 메소드는, 구분하려고 하는 대상이 맞으면 TRUE, 아니면 FALSE 를 반환합니다. (논리값)
setMobile 이라는 함수로, 장치를 강제로 모바일이나 PC로 정의할 수 있습니다.
유용한 클래스라고 생각합니다 :)
템플릿 코드에 적용하시려는 분이 많은 것 같아서 추가합니다.
<span cond="Mobile::isMobileCheckByAgent()">모바일모드입니다.</span> <span cond="!Mobile::isMobileCheckByAgent()">모바일모드가 아닙니다.</span>이런 식으로 사용하시면 됩니다.
댓글 19
제목 | 글쓴이 | 날짜 |
---|---|---|
htaccess 쉽게 만들기 | 현원 | 2010.05.03 |
게시판 수가 많아 제목을 써넣는데 시간 절약 방법 | 아모스리 | 2010.05.04 |
XE 사용하기 - 동영상 강좌 [36] | 선우(善友) | 2010.05.05 |
기본 Content 위젯에 댓글 New표시하기 [10] | 조슈아킴 | 2010.05.08 |
로그인시 다음과같은 오류가 발생합니다. 빠른답변좀 ㅠㅠ [3] | 푸팅 | 2010.05.10 |
중국어게시판 사용할려고 합니다. | jmb5 | 2010.05.10 |
XE운영을 하려면 닷네임(dotname) 호스팅을 사용하시면 안됩니다 [7] | nalireco | 2010.05.11 |
파일 첨부 에러로 고생하시는 분 [2] | celli29 | 2010.05.11 |
MySQL 설치 | 김 무건 | 2010.05.12 |
Apache 설치 | 김 무건 | 2010.05.12 |
PHP 설치 | 김 무건 | 2010.05.12 |
Zend Optimizer + eAccelerator + Suhosin [1] | 김 무건 | 2010.05.12 |
Lighttpd 설치 | 김 무건 | 2010.05.12 |
최근게시물 태그가 적용된 상태로 불러오기 [3] | 땡땡이별나라 | 2010.05.13 |
레이아웃 삽입 후 최근 설문조사 가져오기 | ilovesyr | 2010.05.18 |
게시판(내용볼때) 제목란 색상을 원하는 색상으로 바꾸기 [1] | 유리가면™ | 2010.05.18 |
Textyle 블로그 메인 주소를 blog.domain.com 로 설정하기 [1] | 네오랑 | 2010.05.18 |
게시글볼때 댓글 입력폼 색상넣어서 구분짓기 | 유리가면™ | 2010.05.18 |
1.4.2 버전 업데이트 이후 발생하는 문제들과 대응 [10] | Gekkou | 2010.05.18 |
XE 판올림과 관련하여 일반 사용자분들께 드리는 당부 [7] | ----------- | 2010.05.19 |