크롬80버전 결제 이슈, 영카트5 주요패치 확인!

url에 /mobile/index.php 경로로 페이지 접속하는 방법

그누보드5
영카트5
매뉴얼
Q & A
제작의뢰
컨텐츠몰
부가서비스
소모임
커뮤니티
url에 /mobile/index.php 경로로 페이지 접속하는 방법

QA

사수가 없어도 할 수 있다! 초보자를 위한 그누보드 FAQ

url에 /mobile/index.php 경로로 페이지 접속하는 방법

본문

우선 ?device=mobile 로 접속되는 것은 알고 있습니다.

 

그런데 제가 하고 싶은 것은 그누보드에 내장된 접속기기 판별을 거두고,

 

pc 환경에서 도메인/mobile/index.php 으로 접속시 모바일 페이지를 보고싶습니다.

 

현재는 그냥 하얀 백지만 나오는 상태인데요...;;

 

그누보드를 사용하되, G5_IS_MOBILE 은 false 로 바꾸고

 

모바일 페이지 접속방법을

 

접속기기 판별 에서 디바이스 크기 로 바꾸고 싶습니다.

 

비효율적인거 같은데 왜 이런식으로 구현해야하는지는 모르겠지만요...

 

혹시나 가능은 한건지 가능하다면 어떤식으로 작업을 하는게 나을지 조언 구하고자 글 올려봅니다;;

이 글을 내 페이스북 계정으로 보내기 이 글을 내 트위터 계정으로 보내기

이 질문에 댓글 쓰기 :

답변 3

채택됨

Policia님의 답변

왜 굳이 그렇게 하는지는 모르겠으나... 말씀하신것처럼 비효율적이라...

굳이 원하신다면

 

mobile/index.php에서

맨위 if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

요거 위에

include_once('../common.php');

define('_INDEX_', true);

선언해주시면됩니다

 

 

주소복사
채택됨
답변의 댓글
coDribble님의 댓글
답변을 이제야 봤네요... 일단 알려주신대로 모바일페이지에서 개별페이지 접근을 주석처리하고 common 불러오고 인덱스 true 처리하니 /mobile/index.php 로 접속이 가능하네요!!

그럼 이제 스크립트로 디바이스 사이즈 체크해서 일정 분기 이하일 때

location.href = '/mobile/index.php' 로 넘겨주면 되겠네요;;

이게 저도 왜 저렇게까지 하려는지는 모르겠습니다...

일단 반응형은 아니구요... 이런 용어가 맞는지는 모르겠지만 세미반응형이랄까요...??

모바일용페이지는 반응형 / pc용페이지는 그냥 pc용...

그래서 resize 시에 일정 분기 이하가 되면 모바일용페이지로 넘겨주려는 의도 같습니다.

모바일용 코딩과 pc용 코딩이 한 페이지에 담아놓고 display none block 하기엔 페이지만 길어져서 가독성이 떨어지고 파일이 지저분해져서 인건지...;;

일단 방법을 알았으니 하나씩 해결해나가봐야겠네요!! 감사합니다~!!

볼피드님의 답변

디바이스 크기는 자바스크립트에서만 가능합니다.
사용하시려면 창 크기를 판별하는 페이지 따로, 보여질 페이지 따로 해서 두가지의 페이지가 있어야 하며 페이지 이동을 쓰는 수 밖에 없습니다.

ajax등을 이용하면 페이지 이동없이도 보여줄 수 있겠지만 그누보드 구조상 ajax를 이용한 페이지 뷰는 힘들거라 생각되네요.

그리고 index.php의 설정에 아마 직접 주소 접근을 쳐서 막는 구문이 최상위에 있을것인데 해당 부분을 제거 하시면 됩니다.

주소복사
답변의 댓글
coDribble님의 댓글
넵 말씀해주신대로 php로는 디바이스 크기 체크를 못하는 것은 알고 있어서 스크립트로 구현해야하는 것 또한 알고 있습니다!!

또 알려주신대로 개별페이지 접근 부분처리를 님께서 알려주셔서 해결했습니다!!

이제 스크립트로 일정 분기이하가 되면 페이지 이동 처리를 해줘야 할 것 같습니다..;;

페이지 이동 또한 말씀하신대로 ajax로 구현하는게 아니기에 약간 애매하긴 하겠지만요;;(리사이징시 새로고침한것 같은 느낌일꺼라서...)

두리삼촌v님의 답변

인덱스 페이지에 아래 스크립트를 넣어주세요

 

<script language="javascript"> //Go to Mobile Page
  // Mobile여부를 구분하기 위함
  var uAgent = navigator.userAgent.toLowerCase();
   
  // 아래는 모바일 장치들의 모바일 페이지 접속을위한 스크립트
  var mobilePhones = new Array('iphone', 'ipod', 'ipad', 'android', 'blackberry', 'windows ce','nokia', 'webos', 'opera mini', 'sonyericsson', 'opera mobi', 'iemobile');
  for (var i = 0; i < mobilePhones.length; i++)
  if (uAgent.indexOf(mobilePhones[i]) != -1)
  document.location = "mobile url";
  </script>
주소복사
답변의 댓글
답변을 작성하시기 전에 로그인 해주세요.
전체 41,764
고마운 분의 도움으로 질문을 해결하셨다면, 채택을 눌러서 감사의 마음을 전하세요.
어떻게 질문해야 할지 모른다면 질문하는 방법을 읽어 보신후 질문해 보세요.
QA 내용 검색

회원로그인

진행중 포인트경매

  1. 참여9 회 시작20.08.05 04:15 종료20.08.12 04:15
  2. 참여17 회 시작20.08.04 00:57 종료20.08.11 00:57

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

© SIRSOFT