2017-04-11 74 views
0

不知何故,我必須創建我的模塊的管理頁面。這就是我如何創建標籤Prestashop選項卡的創建,每個選項卡的特定頁面

private function createTab() 
    { 
     $data = array(
         'id_tab' => '', 
         'id_parent' => 0, 
         'class_name' => 'AdminSomeMenu', 
         'module' => $this->name, 
         'position' => 1, 'active' => 1 
        ); 

     $res = Db::getInstance()->insert('tab', $data); 

     $id_tab = Db::getInstance()->Insert_ID(); 
     $lang = (int)Configuration::get('PS_LANG_DEFAULT'); 

     //Define tab multi language data 
     $data_lang = array(
         'id_tab' => $id_tab, 
         'id_lang' => $lang, 
         'name' => $this->name 
         ); 

     // Now insert the tab lang data 
     $res &= Db::getInstance()->insert('tab_lang', $data_lang); 

     $arrayTabs = array('TAB1','TAB2','TAB3'); 
     foreach ($arrayTabs as $requiredTabs) 
     { 
      $tab = new Tab();  
      // Need a foreach for the language 
      $tab->name[$lang] = $this->l($requiredTabs); 
      $tab->class_name = 'Admin'.$requiredTabs; 
      $tab->id_parent = $id_tab; 
      $tab->module = $this->name; 
      $tab->add(); 
     } 

     return true; 

    } 

我希望我會好起來的。

一旦製表符創建,我試圖鏈接下面的代碼。

<?php 
class AdminMenuController extends ModuleAdminController 
{ 
    public function __construct() 
    { 
     $module = "mymodulename" 
     Tools::redirectAdmin('index.php?controller=AdminModules&configure='.$module.'&token='.Tools::getAdminTokenLite('AdminModules')); 
    } 
} 

這樣控制器找不到了。但是我可以通過這樣的鏈接創建只有配置頁面。

我應該如何去實現每個標籤的個性化頁面。

回答

0

啊!這是一個缺失的父:: ::構造();在控制器中導致問題不讓標籤按他們應該的方式行事。

<?php 
class AdminTAB1Controller extends ModuleAdminController 
{ 
    public function __construct() 
    { 
     parent::__construct(); 
     /* Tools::redirectAdmin('index.php?controller=AdminModules&configure='.$module.'&token='.Tools::getAdminTokenLite('AdminModules')); */ 

     echo "Support page"; 
     /* or further function can be called to load tpl files from views/templates/admin/ */ 
    } 
} 

現在我在PS 1.6和1.7中對於我的選項卡有不同的頁面!

相關問題