테스트 사이트 - 개발 중인 베타 버전입니다

theme.config.php 채택완료

고기조아 9년 전 조회 4,985

반응형 테마를 좋아해서 여러 테마 다운받아서 사용하던중 이상한 점이 하나 있습니다.

G5_IS_MOBILE 상수가 먹지 않는 문제입니다.

 

질문을 올렸었는데 "편리" 님께서 직접 댓글까지 달아주셔서 theme.config.php라는 파일이 있는지도 알게 됐고,

이 파일에 define('G5_THEME_DEVICE', 'pc, mobile'); 라는 구문이 있다는 것도 알게 됐습니다.

 

근데 이 구문에 pc만 있어도 부트스트랩 반응형이라 그런지 모바일 기기에서도 잘 돌아가지만

대신 G5_IS_MOBILE이 먹지 않습니다.

 

이해가 짧아 질문 자체도 이해가 어려우실지도... ^^;

 

basicBts테마는 define('G5_THEME_DEVICE', 'pc'); 로 pc만 정의되어 있어서 mobile을 넣으니

mobile폴더를 찾을 수 없다는 에러가 뜨고(부트스트랩 반응형이라 그렇겠지요?),

 

noodle 테마에서는 define('G5_THEME_DEVICE', 'mobile'); 로 mobile만 정의되어 있어서

mobile폴더에서만 모든 것이 작동을 하는데 역시 G5_IS_MOBILE이 먹지 않습니다.

 

반응형 테마에서 G5_IS_MOBILE 먹도록 하는 방법 알려주실 분 계실까요? 

댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
편리
9년 전

G5_THEME_DEVICE 의 값에 따라 G5_IS_MOBILE 값은 고정됩니다. 

예로 pc 로 설정된 경우 G5_IS_MOBILE 값은 항상 false 입니다.

G5_THEME_DEVICE 값이 고정된 경우에 접속기기를 구분하셔야 한다면 

is_mobile() 함수를 이용하실 수 있습니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

고기조아
9년 전
제가 원하던 정확한 답을 주셔서 감사합니다.
php로 해결이 안되서 css에 @media 로 옵션 달리 주는 작업하고 있었는데
너무 기쁨돠~
감사해요~

댓글을 작성하려면 로그인이 필요합니다.

l
9년 전

루트폴더 common.php 파일에서 535~552 라인이 모바일 설정입니다. 

이 설정이 있음에도 안되나요?

 

우선적으로 확인을 common.php에서 

$_SESSION['ss_is_mobile'] = $is_mobile;

define('G5_IS_MOBILE', $is_mobile);

define('G5_DEVICE_BUTTON_DISPLAY', $set_device);

if (G5_IS_MOBILE) {

    $g5['mobile_path'] = G5_PATH.'/'.$g5['mobile_dir'];

}

echo G5_IS_MOBILE; return;
으로 화면에서 정상적으로 출력이 되는지 부터 확인을 하면서 어디가 문제인지 찾아야 하지 않을까 합니다. 부트스트랩의 경우 테마를 제작하시는 분들중 스킨파일을  mobile 쪽으로 바로연결하기도 하니 이 부분도 한번 확인해보세요.

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

f
9년 전
공개된 테마들을 보면

PC판만 있거나, Mobile판만 있는 테마가 더러 있습니다.

그래서 다른 하나는 작동하지 않습니다.
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인