2011-10-14 2 views
1

모바일 페이지에서 Joomla 1.5의 기본 페이지로 이동하는 데 문제가 있습니다. PHP 모바일 탐지 스크립트를 사용 중입니다. http://code.google.com/p/php-mobile-detect/Joomla 1.5의 PHP Mobile Detect 스크립트

첫 번째 스크립트는 Joomla가 아닌 간단한 웹 사이트에서 테스트되었습니다. 이 사용 된 실제 코드 (index.php를)입니다 : 웹 사이트가 모바일 장치를 사용하여 액세스 할 때

<?php 
session_start(); 

include("Mobile_Detect.php"); 
$mobile_detect = new Mobile_Detect(); 

if (isset($_GET['ua']) && $_GET['ua']==1){ 
    $_SESSION['sitemode'] = 1; 
}elseif (isset($_GET['ua']) && $_GET['ua']==0){ 
    unset($_SESSION['sitemode']); 
}  
if ($mobile_detect->isMobile() && !isset($_SESSION['sitemode'])) { 
    // any mobile platform 
    header('Location: mobile/'); 
} 
// site related codes goes here... 
?> 

그래서, 그것은 모바일 웹 사이트 (wwwroot에있는 하위 폴더)로 리디렉션됩니다. 모바일 웹 사이트로, 사용자가 대신 제공된 링크하여 주요 웹 사이트를 사용하도록 선택할 수있는 경우 (이 모바일/index.php에에) :

<a href="../index.php?ua=1">Fullsite</a> 

세션은 모바일 페이지에 사용할 수 있습니다.

메인에있을 때 사용자는 모바일 페이지로 리디렉션되지 않고 메인 웹 사이트의 다른 페이지를 탐색 할 수 있습니다. 이것은 부트 스트랩으로 root에서 index.php가있는 독립형 PHP 스크립트에서 완벽하게 작동합니다.

그러나 Joomla에서 구현하려고하면 첫 번째 리디렉션에서만 작동합니다. Joomla 사이트의 다른 페이지를 탐색하면 모바일 페이지로 리디렉션됩니다. 위의 스크립트는 Joomla의 부트 스트랩 (index.php) 상단에 추가되었습니다.

고마워요!

답변

1

나는 이것을 꽤 오래 알아 냈다. 이 같은 문제가 발생한 다른 사람들과 솔루션을 업데이트하고 공유 할 수있는 기회를 얻었습니다.

나는 Joomla의 부트 스트랩에있는 모든 코드를 위의 질문 (index.php)에서 템플릿 부트 스트랩 (예 : joomla_root/templates/template_name/index.php)으로 옮겼습니다.