• Rozwiązano pgorecki77

    (@pgorecki77)


    Siemanko, dopiero co zacząłem przygodę z WordPressem. Część z was może załapie co mam na myśli i spróbuje mi pomóc. Przykład: Gdy wejdziemy na mobilną wersję jakiejś strony np. m.facebook.com to mamy możliwość wrócenia do wersji desktopowej klikając „Wersja dla komputerów”. Tak samo jest w przypadku wielu stron. Chodzi w tym o to, że jak np. wejdziemy na komórce na jakąś stronę to automatycznie przekierowuje nas na jej mobilną wersję, a na tej mobilnej wersji może nie być czegoś co chcemy zobaczyć, a jest to tylko na desktopowej, wtedy właśnie klikamy w taki odnośnik i pomimo że jesteśmy na telefonie to możemy korzystać ze strony głównej (Dla PC).

    Zrobiłem więc sobie własną stronę z WordPressem na pokładzie, postanowiłem także zrobić jej mobilną wersję. Wszystko gites, po wejściu na stronę poprzez urządzenie mobilne strona automatycznie wykrywa owe urządzenie i przekierowuje je na m.[blabla].x

    Problem polega na tym, że strona mobilna nie jest jeszcze gotowa, a może ktoś chciałby zobaczyć stronę desktopową poprzez komórkę to nie ma takiej możliwości, nawet jak manualnie usunie „m.” z paska adresów w telefonie. Jedyne wyjście to wejście w ustawienia przeglądarki i przełączenia z „Mobile” na „Desktop” i po chwili znów włączenia, a przecież to nieoptymalne i nie każdy potrafi to zrobić.

    Nie wiem czy może ktoś będzie chciał zobaczyć ale dam tutaj skrypt który przekierowuje telefony na stronę mobilną. (Skrypt należy wkleić do pliku .htaccess)

    RewriteEngine on
    RewriteBase /
    
    # Check if this is the noredirect query string
    RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)
    # Set a cookie, and skip the next rule
    RewriteRule ^ - [CO=mredir:0:www.przykład.pl]
    
    RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
    RewriteCond %{HTTP:Profile}       !^$ [OR]
    RewriteCond %{HTTP_USER_AGENT} "acs|alav|alca|amoi|audi|aste|avan|benq|bird|blac|blaz|brew|cell|cldc|cmd-" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "dang|doco|eric|hipt|inno|ipaq|java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT}  "maui|maxo|midp|mits|mmef|mobi|mot-|moto|mwbp|nec-|newt|noki|opwv" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "palm|pana|pant|pdxg|phil|play|pluc|port|prox|qtek|qwap|sage|sams|sany" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "sch-|sec-|send|seri|sgh-|shar|sie-|siem|smal|smar|sony|sph-|symb|t-mo" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "teli|tim-|tosh|tsm-|upg1|upsi|vk-v|voda|w3cs|wap-|wapa|wapi" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "wapp|wapr|webc|winw|winw|xda|xda-" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "up.browser|up.link|windowssce|iemobile|mini|mmp" [NC,OR]
    RewriteCond %{HTTP_USER_AGENT} "symbian|midp|wap|phone|pocket|mobile|pda|psp" [NC]
    RewriteCond %{HTTP_USER_AGENT} !macintosh [NC]
    
    # Check if we're not already on the mobile site
    RewriteCond %{HTTP_HOST}          !^m\.
    # Can not read and write cookie in same request, must duplicate condition
    RewriteCond %{QUERY_STRING} !(^|&)m=0(&|$) 
    
    # Check to make sure we haven't set the cookie before
    RewriteCond %{HTTP_COOKIE}        !^.*mredir=0.*$ [NC]
    
    # Now redirect to the mobile site
    RewriteRule ^ http://m.przykład.pl [R,L]
Zobacz 2 odpowiedzi - od 1 do 2 (z 2 łącznie)
Zobacz 2 odpowiedzi - od 1 do 2 (z 2 łącznie)

Temat ‘Jak zrobić przekierowanie do desktopowej wersji strony’ jest zamknięty na nowe odpowiedzi.