Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
przekierowanie na mobilną wersję strony oraz z mobilnej na full - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster)
+--- Wątek: przekierowanie na mobilną wersję strony oraz z mobilnej na full (/thread-przekierowanie-na-mobilna-wersje-strony-oraz-z-mobilnej-na-full)



przekierowanie na mobilną wersję strony oraz z mobilnej na full - zaxxx - 05-04-2013

witam
od jakiegoś czasu chcę zrobić mobilną wersję strony, a raczej już prawie jest zrobiona, szukałem w necie jak można automatycznie przekierować mobilne urządzenia na mobilną wersję i znalazłem fajny artykuł wykorzystujący skrypt google.

http://www.xpert.net/knowledgebase.php?action=displayarticle&id=2

jet opisany co i jak i działa to ale w połowie. ponieważ nie mogę znaleźć dokładnego opisu jak ze strony mobilnej mimo wszystko kiedy użytkownik chce zobaczyć pełną stronę mam zrobić przekierowanie tak aby strona już nie przekierowywała go na mobilną wersję na wszystkich podstronach. wiem że odpowiadają za to ciasteczka lecz mimo opisu jak modyfikować cookies nie ma tego dokładnie wytłumaczonego i nie ma podanego jak podlinkować do strony full ponieważ jesli wpiszemy jako link do strony full tylko adres strony głównej to znów nas wywali na mobilną. Myślę że opis może pomóc wielu osobom i jest warty temat aby się nim szerzej zainteresować, więc jeśli ktoś jest w stanie pomóc będę wdzięczny Smile

Pozdrawiam


RE: przekierowanie na mobilną wersję strony oraz z mobilnej na full - prawdziwypiotrek - 05-04-2013

Jesteś pewien, że na stronie głównej też sprawdzasz to ciasteczko ?
Samo istnienie ciasteczka nic nie da. Musisz jeszcze mieć na każdej stronie kod, który Ci sprawdzi istnienie tego ciastka i zrobi co trzeba.

Generalnie wydaje mi się, że w tym tutorialu jest to dobrze wytłumaczone...


RE: przekierowanie na mobilną wersję strony oraz z mobilnej na full - hieroshima - 05-04-2013

http://xlab.pl/wykrywanie-przegladarek-na-urzadzenia-mobilne/

http://detectmobilebrowsers.com/


RE: przekierowanie na mobilną wersję strony oraz z mobilnej na full - zaxxx - 05-04-2013

generalnie robię tak jak w opisie a więc:

na każdej mobilnej podstronie ten kod:
Kod:
<?php
setcookie("mobile", "true", time()+3600, "/", "site_url");
?>

na każdej stronie głównej a w moim przypadku doklejony kod do index.php folderze szablony w Joomla:
Kod:
<?php
include 'path_to_mobile_detect_php_script/Mobile_Detect.php';
$detect = new Mobile_Detect();
$want_mobile = true;
if( isset($_COOKIE['mobile'] ) ){
    if( $_COOKIE['mobile'] == "true" ){
        $want_mobile = 1;
    } else $want_mobile = 0;
        
    if( isset( $_SERVER['HTTP_REFERER'] ) ){
        $referer = $_SERVER['HTTP_REFERER'];
        if( strpos( $referer, "mobile_site_url" ) ){
            $want_mobile = 0;
            setcookie("mobile", "false", time()+3600, "/", "site_url");
        }
    }
}

if ( $detect->isMobile() && $want_mobile ){
    header('Location: http://mobile_site_url/', true, 302);
}
?>

no i na koniec sam link do strony mobilnej

Kod:
<?php
if ( $detect->isMobile() ){
    echo "<a href=\"http://mobile_site_url\">[Mobile site]</a>";
}
?>

nastepnie zgodnie z dalszą częścią dokonałem zmian w kodzie i nic... może coś źle robię ? to jest joomla więc może nie powinienem doklejać kodu do index.php szablonu tylko jakoś inaczej to zrobić ? ale samo przekierowanie na mobilną wersję działa.

(05-04-2013, 22:21)hieroshima napisał(a): http://xlab.pl/wykrywanie-przegladarek-na-urzadzenia-mobilne/

http://detectmobilebrowsers.com/

http://xlab.pl/wykrywanie-przegladarek-na-urzadzenia-mobilne/

ten kod robi to samo co tek którego używam a więc wykrywa mobilne urządzenia, więc nie wiele mi to pomoże, kolejny link to coś bardzo podobnego, a mi chodzi o to jak z mobilnej wrócić na pełną z zapisaniem tego wybory w ciasteczkach...


RE: przekierowanie na mobilną wersję strony oraz z mobilnej na full - atp - 10-04-2013

...a nie możesz po prostu "pozbyć" się ciastka?

Kod:
<?php
setcookie("mobile", "", time()-3600);
?>

Możesz zastosować np. takie coś:

Kod:
<?php
if($_GET['mobile']=='off') {
setcookie("mobile", "", time()-3600);
}
?>

...i wtedy do full wersji wracasz linkiem typu: adresstrony.pl?mobile=off


RE: przekierowanie na mobilną wersję strony oraz z mobilnej na full - zaxxx - 15-04-2013

(10-04-2013, 17:45)atp napisał(a): ...a nie możesz po prostu "pozbyć" się ciastka?

Kod:
<?php
setcookie("mobile", "", time()-3600);
?>

Możesz zastosować np. takie coś:

Kod:
<?php
if($_GET['mobile']=='off') {
setcookie("mobile", "", time()-3600);
}
?>

...i wtedy do full wersji wracasz linkiem typu: adresstrony.pl?mobile=off
czyli po modyfikacji powinno to wyglądać tak:
Kod:
<?php
include 'path_to_mobile_detect_php_script/Mobile_Detect.php';
$detect = new Mobile_Detect();
$want_mobile = true;
if( isset($_COOKIE['mobile'] ) ){
    if( $_COOKIE['mobile'] == "true" ){
        $want_mobile = 1;
    } else $want_mobile = 0;
        
    if( isset( $_SERVER['HTTP_REFERER'] ) ){
        $referer = $_SERVER['HTTP_REFERER'];
        if( strpos( $referer, "mobile_site_url" ) ){
            $want_mobile = 0;
if($_GET['mobile']=='off') {
            setcookie("mobile", "false", time()+3600, "/", "site_url");
        }
    }
}

if ( $detect->isMobile() && $want_mobile ){
    header('Location: http://mobile_site_url/', true, 302);
}
?>
???
jeśli tak to jest błąd:
Kod:
Parse error: syntax error, unexpected $end in /home/templates/cd4445/index.php on line 141
hestes to znacznik </html> w ostatniej lini pliku php, wiec nie wiem co tu nie gra...