バグ報告 > その他 > SC_Display::prepare()について |
その他
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
asami |
投稿日時: 2013/12/10 18:40
対応状況: −−−
|
半人前 登録日: 2009/8/5 居住地: 富山県 投稿: 20 |
SC_Display::prepare()について 私の使っているバージョンが古いのもあるのと私のカスタマイズのやり方の問題があると思いますので、一応ご参考までに。
管理画面・購買画面以外の画面を追加するカスタマイズで、 SC_Display::setDevice()をオーバーライドして新しいDEVICE_TYPE_○○○○と言うのを case分に追加して新規画面を追加するカスタマイズを行いました。 カスタマイズを行っていて思ったことなのですが、 SC_Display::setDeviceでSC_Display::viewをあらかじめセットしていた場合、 SC_Display::prepare()では、
SC_Display::viewがNULLじゃなければデバイスを探しにいくというプログラムになっています。 管理画面等ではSC_Display:: deviceSetedを先にセットすることをしていないので、 SC_Display:: deviceSetedが"false"のままなので通りますが、 SC_Display::prepare()以前にSC_Display::viewをセットしていた場合、 !is_null($this->view)なのでif文をすり抜けて管理画面または、購買画面(PC)、購買画面(モバイル)に流れていきます。 私と同じ方法で新規画面を追加する場合は、 SC_Display::prepare()をSC_Display_Exでオーバーライドして
とすると思った通りに動くと思います。 使用したECCUBE eccube ver.2.12.5 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» SC_Display::prepare()について | asami | 2013/12/10 18:40 |