0

ユーザーが使用しているデバイスを検出して、ユーザーをモバイル サイトにリダイレクトするコードが既にあります。重要: これは、モバイル サイトとフル サイトの URL が同じ ( http://example.com ) であることを意味します。m.example.com や mobile.example.com はありません。example.com だけです。

function _check(){

    $agent = $_SERVER["HTTP_USER_AGENT"]; 

    $mobile = false;
    $agents = array("Alcatel", "Blackberry", "HTC",  "LG", "Motorola", "Nokia", "Palm", "Samsung", "SonyEricsson", "ZTE", "Mobile", "iPhone", "iPod", "Mini", "Playstation", "DoCoMo", "Benq", "Vodafone", "Sharp", "Kindle", "Nexus", "Windows Phone");
    foreach($agents as $a){

        if(stripos($agent, $a) !== false){                 
            return $a;
        }

    }
    return $mobile;
}

ここで、クリックすると $mobile 変数が false に設定されるリンクを作成して、モバイル サイトではなく完全なサイトが表示されるようにします (両方の URL が同じであるため)。

$mobile 変数を false に設定するために、リンクがクリックされたことを検出する方法を知っている人はいますか?

前もって感謝します。

4

1 に答える 1

0

Cookie を使用する - テスト コードで、まず Cookie が設定されているかどうかを確認し、次にユーザー エージェントを確認します。Cookie が設定されている場合は、$mobile を false に設定し、他のチェックを行わないでください。それ以外の場合は、ユーザー エージェントのチェックに失敗します。

ユーザーが「サイト全体を表示」リンクをクリックしたときに、Cookie を設定して、コードがユーザー エージェントのチェックをスキップすることを認識できるようにします。

于 2012-07-09T20:40:05.283 に答える