0

Prestashop 1.5 で、既存の prestashop モジュールをデフォルトのモバイル テンプレートにフックしたいと考えています。管理プラットフォームを使用して実行できますか?それとも、classes/controllers/FrontController.php ファイルをいじる必要がありますか?

乾杯

4

2 に答える 2

2

私にとっては、FrontController クラスをオーバーライドし、smarty で独自のフック (例では display_left_column フック) を割り当てることでこれを解決しました。

<?php

class FrontController extends FrontControllerCore {

public function initContent() {
    parent::initContent();

    if ($this->context->getMobileDevice() != false) {
        $this->context->smarty->assign(array(
            'HOOK_LEFT_COLUMN' => ($this->display_column_left ? Hook::exec('displayLeftColumn') : ''),
        ));
    }

}

次に、このフックの内容をモバイルの index.tpl にエコーします。

<div data-role="content" id="content">
    {$HOOK_LEFT_COLUMN}

    {hook h="DisplayMobileIndex"}
    {include file='./sitemap.tpl'}
</div><!-- /content -->
于 2013-07-29T12:44:17.033 に答える
0

サイトマップとヘッダー テンプレートを編集して、必要なモジュールのテンプレートを直接含めることになりました。いわば、実際には「きれい」ではありませんが、機能します。

于 2013-01-17T19:02:43.620 に答える