EC-CUBEで携帯・スマートフォンテンプレートを無効化する方法

EC-CUBEには標準でスマートフォンや携帯用のテンプレートが用意されていて、それぞれの端末でアクセスすると自動でテンプレートが切り替わる仕組みが用意されています。

例えば、こちらの EC-CUBE 公式デモサイトも、スマートフォンで表示させるとこのような表示に切り替わります。

EC-CUBE

これはこれで便利な機能なんですが、レスポンシブデザインなどでテンプレートを一つに統一するなど、この機能が必要ないケースもあります。

そんな時、携帯・スマートフォンテンプレートを無効化して、常にPC用のテンプレートで表示されるようにする方法です。

EC-CUBEは Ver 2.13.2の環境です。

カスタマイズ方法

ネット上でもいくつかやり方が見つかりますが、EC-CUBE 本体のクラス data/class/SC_Display.php を直接書き換えてる方法が比較的多いようです。

これだと EC-CUBE バージョンアップの際に問題が起きるとちょっと嫌なので、SC_Display.php を継承した SC_Display_Ex をカスタマイズしてみます。SC_Display_Ex.php に以下のコードを追加します。

data/class_extends/SC_Display_Ex.php

    public static function detectDevice($reset = FALSE)
    {   
        // 常にPCテンプレートで表示させる
        SC_Display_Ex::$device = DEVICE_TYPE_PC;
        return SC_Display_Ex::$device;
    }   

detectDevice() は継承元の SC_Display.php で、アクセス元の端末を判定してテンプレートを切り替えるという処理を行っているメソッドですが、その処理を書き換えているわけです。

これで、常に PC テンプレートで表示されるようになります。お試しください。

スポンサーリンク
ad
ad

シェアする

フォローする

スポンサーリンク
ad