2017-02-24 4 views
0

Prestashopのバックオフィスで単純なページを作成したいとします。私はObjectModelは必要ありません。Prestashop:AdminController(ObjectModelなし)で単純なページを表示

私は新しい管理タブを作成しました。私の問題はAdminControllerにあります。

次のコードが表示されます。変数はテンプレートファイルには送信されません。私はそれをする方法を理解していません。

クラスAdminAzertyControllerがカスタムコントローラでカスタムTPLファイルをレンダリングするためにAdminController {

public function initContent() 
{ 

    parent::initContent(); 

    // Le template smarty 

    $tpl_path = _PS_MODULE_DIR_ .'paniersdegout/views/templates/admin/view.tpl'; 
    $tpl = $this->context->smarty->createTemplate($tpl_path, $this->context->smarty); 
    $content = $tpl->fetch();  
    $this->context->smarty->assign('content', $content); 

// Le passage de variable 
    $this->context->smarty->assign('test', 'test'); 


} 

}

+0

私はあなたがそのテンプレートに変数を割り当てる前にテンプレートの内容を取得していると思います。 – Dhirender

+0

フェッチする前に変数を渡す必要があります。がんばろう。 – PrestaAlba

答えて

0

を拡張し、コンテンツを割り当てるためにSmartyのを使用することができます。

たとえば、カスタムモジュールのcustomtemplate.tplファイルをレンダリングする必要がある場合。

public function initContent() { 

     parent::initContent(); 

     $content = $this->context->smarty->fetch(_PS_MODULE_DIR_ . 'custommodule/views/templates/admin/customtemplate.tpl'); 

     $this->context->smarty->assign(
       array(
        'content' => $this->content . $content, 
       ) 
     ); 
} 
関連する問題