質問 > フロント機能 > スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
dipito |
投稿日時: 2018/1/16 18:17
対応状況: −−−
|
常連 登録日: 2016/9/2 居住地: Aichi 投稿: 41 |
スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される [EC-CUBE] 2.13.5
オーナーズストアより購入したデザインテンプレートを導入しています。 スマホからアクセスしても、導入したテンプレート(/data/Smarty/templates/plg_responsivel0082)が呼び出される仕様でしたが、 ある時からEC-CUBE標準のスマホテンプレートが呼び出されれるようになってしまいました。 エラーログには、スマホからアクセスする度に下記のような記述が大量に出ています。 呼び出されているテンプレート"search_area.tpl"は、導入したデザインテンプレートには存在しません。 Warning(E_USER_WARNING): Smarty error: unable to read resource: "frontparts/search_area.tpl" on [/html/data/module/Smarty/libs/Smarty.class.php(1094)] /html/products/detail.php(29): LC_Page_Products_Detail_Ex->process /html/data/class_extends/page_extends/products/LC_Page_Products_Detail_Ex.php(54): LC_Page_Products_Detail->process /html/data/class/pages/products/LC_Page_Products_Detail.php(160): LC_Page->sendResponse /html/data/class/pages/LC_Page.php(161): SC_Display->prepare /html/data/class/SC_Display.php(80): SC_View->getResponse /html/data/class/SC_View.php(105): Smarty->fetch /html/data/module/Smarty/libs/Smarty.class.php(1264): include /html/data/Smarty/templates_c/plg_responsivel0082/%%F1^F15^F158E3F4%%site_frame.tpl.php(131): Smarty->_smarty_include /html/data/module/Smarty/libs/Smarty.class.php(1870): include /html/data/Smarty/templates_c/plg_responsivel0082/%%58^587^5876E692%%site_main.tpl.php(131): Smarty->_smarty_include /html/data/module/Smarty/libs/Smarty.class.php(1870): include /html/data/Smarty/templates_c/plg_responsivel0082/%%F5^F5B^F5B64CC8%%detail.tpl.php(650): Smarty->_smarty_include /html/data/module/Smarty/libs/Smarty.class.php(1868): Smarty->_compile_resource /html/data/module/Smarty/libs/Smarty.class.php(1416): Smarty->_fetch_resource_info /html/data/module/Smarty/libs/Smarty.class.php(1590): Smarty->trigger_error /html/data/module/Smarty/libs/Smarty.class.php(1094): trigger_error レイアウトが崩れたり必要なコンテンツが表示されず、JavaScript等も読み込まれていないのか ログインしようとしても parse error のアラートが表示されます。 関係あるかは分かりませんが、Google Page Insights で速度が検出されなくなりました。 この問題が起きる前に行っていた作業はsite_frameとmain_frameのテンプレート編集くらいですが これらを元に戻して(当然テンプレートキャッシュを消して)試してみても解決しませんでした。 原因としてどのような事が考えられますでしょうか? |
red |
投稿日時: 2018/1/17 16:35
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1569 |
Re: スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される EC-CUBE標準のスマホテンプレートが呼び出されれるようになった
ということなので、プラグインが読み込まれなくなっているなどではないでしょうか?
|
dipito |
投稿日時: 2018/1/17 18:26
対応状況: −−−
|
常連 登録日: 2016/9/2 居住地: Aichi 投稿: 41 |
Re: スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される ありがとうございます。原因が判明しました。
編集したのはテンプレートファイルくらいと書きましたが、 プラグインフォルダにあるデザインテンプレートのクラスファイルも書き換えておりました。 エラーログに [/resize_image.php] Warning(E_USER_WARNING): ページ情報を取得できませんでした。 on [/html/data/class/helper/SC_Helper_PageLayout.php(58)] [/resize_image.php] Warning(E_USER_WARNING): メイン部のテンプレートが存在しません。[/html/data/Smarty/templates/plg_responsivel0082/.tpl] on [/html/data/class/helper/SC_Helper_PageLayout.php(65)] という警告が大量に出ているので調べたところ デザインテンプレートのクラスファイルにおいて$layout->sfGetPageLayout() の部分で skip_load_page_layout の値が考慮されずに呼び出されていることによるものだと判断し、判定文を追加しておりました。 if(!$this->skip_load_page_layout = true){ //追加 $layout = new SC_Helper_PageLayout_Ex(); if (GC_Utils_Ex::isFrontFunction()) { $layout->sfGetPageLayout($objPage, false, $_SERVER['SCRIPT_NAME'], $objPage->objDisplay->detectDevice()); } } //追加 これにより警告は出なくなったものの、今回のような問題が発生したようです。 元に戻したことにより問題は解決しましたが、当然のようにまた警告が出るようになりました。 |
red |
投稿日時: 2018/1/17 18:43
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1569 |
Re: スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される !$this->skip_load_page_layout = true が間違ってますよ。
== true にしないと条件文になってないです
|
dipito |
投稿日時: 2018/1/18 14:25
対応状況: 解決済
|
常連 登録日: 2016/9/2 居住地: Aichi 投稿: 41 |
Re: スマホ対応レスポンシブテンプレートを適用しているのにEC-CUBE標準のスマホテンプレートが呼び出される 大変失礼いたしました。
条件文を修正し、今のところは大丈夫そうです。 ありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |