묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
USER_AGENT 판단하여 스킨을 분기시키려면?
2010.06.06 00:56
안녕하세요.
문의 드릴 사항이 있습니다.
USER_AGENT를 파악하여 스킨을 분기시키는 기능을 넣고 싶습니다.
예를 들어 a,b 두 스킨을 만들어 놓고 전체적인 사이트는 a라는 스킨을 적용하고
특정 UA에서만 b라는 스킨으로 파싱하고 싶습니다.
게시판등 모든 홈페이지 요소를 두벌 만들어 각각의 스킨을 적용, 스크립트에서 각각의 URL로
리다이렉트 시키는 방법이 간단하긴 하겠지만 같은 DB를 유지한다거나 갯수가 많아지면 안드로메다로 갈거 같네요.
다른 CMS에서는 모듈 설치하여 사용해본 경험이 있습니다.
xe에서는 어떨까요.
소스파일 찾아보고 있는데 어디를 열어봐야할지 아직 감이 안오네요........
도움 부탁드립니다^^
댓글 1
-
xe-m
2010.06.06 14:17
-
Mystique
2010.06.07 15:18
역시.. 저런 방법밖에는 없군요. DB의 내용을 출력할때 시스템단에서 태그를 붙여 나오는것과 함께 제로보드에 가지고 있는 조그마한 불만중 하나입니다.... ㅜㅜ
현재의 XE에서는 다중 skin 기능이 없습니다.
따라서 UA별로 다른 창을 출력시키려면, 우선이 방법으로 UA별로 주소 이동을 시키되,이동시 같은 MID 안에서 URL query로 UA 값을 넘겨준 후, (http://주소.com/?mid=MID&user_agent=UA값)skin 내에서 해당 변수값별로 다른 skin을 출력시키도록 하는 겁니다.
<!--@if($user_agent == 'UA값 1번')-->
UA 1번에서 출력할 내용
<!--@elseif($user_agent == 'UA값 2번')-->
UA 2번에서 출력할 내용
내용 추가 : 주소 이동 할 필요 없이 PHP의 $_SERVER['HTTP_USER_AGENT'] 값으로만으로도 가능하겠군요.