모바일에서만 사용하는 홈페이지를 만들고 있는데,
PC로 접속하는 사람들이 민원이 있을까봐서, 아예 PC로의 접속은 안되고,
모바일로만 접속 가능하게 하고 싶습니다.
일반 Html 페이지일 경우와 G5로 만든사이트의 경우에는 또 다를 수 있을 것 같은데요.
PC에서는 "모바일로만 접속 가능합니다." 라는 메세지만 보이고,
모바일 에서만 열리게 하는 방법이 있을까요?
답변 4개
그누보드가 아니라면
$mAgent = array("iPhone","iPod","Android","Blackberry",
"Opera Mini", "Windows ce", "Nokia", "sony" );
$chkMobile = false;
for($i=0; $i<sizeof($mAgent); $i++){
if(stripos( $_SERVER['HTTP_USER_AGENT'], $mAgent[$i] )){
$chkMobile = true;
break;
}
}
echo $_SESSION["idx"] ;
if($chkMobile) {
//모바일일 경우
} else {
//PC일 경우
//echo "웹이당";
}
참조하세요
<?php if (preg_match('/(iPhone|Android|iPod|BlackBerry|IEMobile|HTC|Server_KO_SKT|SonyEricssonX1|SKT)/', $_SERVER['HTTP_USER_AGENT']) ) { ?>
<!-- index.php 시작 -->
<?php
//define('_INDEX_', true);
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if (G5_IS_MOBILE) {
include_once(G5_THEME_MOBILE_PATH.'/index.php');
return;
}
include_once(G5_THEME_PATH.'/head.php');
?>
<?php
//$go_url = $_GET[go_url];
if (!$go_url) include_once(G5_THEME_PATH.'/index_00.php');
switch ($go_url) {
case 'index_00':
include_once(G5_THEME_PATH.'/index_00.php');
break;
case 'index_01':
include_once(G5_THEME_PATH.'/index_01.php');
break;
case 'index_02':
include_once(G5_THEME_PATH.'/index_02.php');
break;
case 'index_03':
include_once(G5_THEME_PATH.'/index_03.php');
break;
case 'index_04':
include_once(G5_THEME_PATH.'/index_04.php');
break;
case 'index_05':
include_once(G5_THEME_PATH.'/index_05.php');
break;
case 'index_06':
include_once(G5_THEME_PATH.'/index_06.php');
break;
case 'index_07':
include_once(G5_THEME_PATH.'/index_07.php');
break;
case 'index_08':
include_once(G5_THEME_PATH.'/index_08.php');
break;
default:
include_once(G5_THEME_PATH.'/index_00.php');
break;
}
?>
<script src="<?php echo G5_THEME_JS_URL ?>/owl.carousel.min.js"></script>
<?php
include_once(G5_THEME_PATH.'/tail.php');
?>
<!-- index.php 끝 -->
<?php } else { ?>
<div style="line-height:500px;text-align:center;vertical-align:middle">모바일로만 접속 가능합니다.</div>
<?php } ?>
일단 안내 페이지를 하나 생성하고.. 예를 들어 루트 경로에 notice.php 파일로 생성했다 가정하면
extend/user.config.php 파일에 추가
if (!is_mobile()) {
goto_url('/notice.php');
}
이렇게 하면 그누보드 페이지는 전부 적용됩니다.
일반 페이지도 페이지 상단에 그누보드 common.php 파일만 include 하면 될 것 같습니다.
굳이 PC접속을 막을 이유가 있을까 싶습니다만(PC에서는 모바일화면만 출력한다던가 아니면 안내페이지를 통해 모바일화면을 접속하는 식을 추천드립니다)
head.php에
if (G5_IS_MOBILE) {
include_once(G5_MOBILE_PATH.'/head.php');
return;
}else{
alert('모바일로만 접속가능합니다.', G5_URL.'/?device=mobile');
}
아래에 강조된 부분만 추가하면될것같습니다
답변을 작성하려면 로그인이 필요합니다.