以前、クライアントからEC-CUBEのスマホページが見づらいからPCページレイアウトで表示したいと言われて表示を変えました。
久しぶりにEC-CUBE触ってどこ修正するのか探すの大変だったので、メモしておきます。
現在はモバイルフレンドリーなWEBサイトが推奨されるので、あまりこの設定しない方がいいんですけどね。
どうしても予算がないのでスマホ版まで対応できないとか、スマホ版は未完成だけど先行してPC版だけリリースする場合なんかに使えそう。
EC-CUBEデフォルトのスマホページだと確かに見づらいんですよねー
前置きがながくなりましたが、変更方法です。
変更対象ファイルは、以下のファイルです。
/data/class/SC_Display.php
変更する箇所はここ。
/** * デバイス毎の出力方法を自動で変更する、ファサード * Enter description here ... */ function setDevice($device = DEVICE_TYPE_PC){ switch ($device){ case DEVICE_TYPE_MOBILE: $this->response->setContentType("text/html"); $this->setView(new SC_MobileView_Ex()); break; case DEVICE_TYPE_SMARTPHONE: $this->setView(new SC_SmartphoneView_Ex()); break; case DEVICE_TYPE_PC: $this->setView(new SC_SiteView_Ex()); break; case DEVICE_TYPE_ADMIN: $this->setView(new SC_AdminView_Ex()); } $this->deviceSeted = true; }
DEVICE_TYPE_SMARTPHONE:の場合、new SC_SmartphoneView_Ex()を表示するように命令しているところをコメントアウトしてDEVICE_TYPE_PC:に記載のnew SC_SiteView_Ex()を表示するように変更します。
/** * デバイス毎の出力方法を自動で変更する、ファサード * Enter description here ... */ function setDevice($device = DEVICE_TYPE_PC){ switch ($device){ case DEVICE_TYPE_MOBILE: $this->response->setContentType("text/html"); $this->setView(new SC_MobileView_Ex()); break; case DEVICE_TYPE_SMARTPHONE: //$this->setView(new SC_SmartphoneView_Ex()); $this->setView(new SC_SiteView_Ex()); break; case DEVICE_TYPE_PC: $this->setView(new SC_SiteView_Ex()); break; case DEVICE_TYPE_ADMIN: $this->setView(new SC_AdminView_Ex()); } $this->deviceSeted = true; }
これだけでいいんですが、EC-CUBEの仕様がわかっていないこと、階層が深いことからいつも迷子になります。