10分鐘學會OpenCart核心模塊加載

10分鐘學會OpenCart核心模塊加載

只要做事正直,莫問成敗損益。


核心模塊概述

OpenCart提供了幾個免費核心模塊:

Account:用戶帳戶鏈接(我的帳戶,編輯帳戶,訂單歷史記錄等)框供客戶訪問。
Affiliate: 加盟商店的聯盟計劃的鏈接在附屬公司訪問的框中提供。
Banners:添加圖像橫幅,圖標鏈接到商店中的不同產品或製造商。
Bestsellers::添加一個窗口,顯示最佳賣家無論在哪裡指定位置/頁面。
Carousel:顯示可作為幻燈片瀏覽的橫幅。
Category:顯示包含商店所有類別和子類別的模塊。
Featured:顯示包含選定產品的功能框。
Google Talk:與Google帳戶配合使用的聊天框,可與客戶互動。
Information:添加包含信息頁面的信息選項卡(關於我們,交付信息,隱私政策,條款和條件)
Latest(最新):以產品圖標的形式將最新或最近添加的產品添加到頁面上的產品框中。
Specials:在產品包裝盒中顯示特價商品。特殊選項卡可以添加到產品中。

這些模塊都可以使用模塊 (Modules)中的佈局(Layout),位置(Position),狀態(Status)和排序順序工具(Sort Order tools)進行操作。


加載模型model文件

模塊可以使用以下代碼加載其控制器文件的任何模型文件,並授予它們與控制器在同一個管理員或目錄文件夾中。
$this->load->model('setting/setting');

您將需要從括號內的admin文件夾中指定要加載的文件的路徑。上面的代碼將加載設置類,以便我們可以訪問模型控制器文件中的ModelSettingSetting類中的函數。在代碼中使用以下格式從加載的模型文件調用函數:
$this->model_setting_setting->editSetting('my_module', $this->request->post);

下劃線指的是model / setting / setting.php的文件名稱。如果您的模塊包含模型文件,則代碼將遵循上述格式,因為模型文件已上傳到模型文件夾。

1
2
this->load->model(module/my_module.php);
this->model_module_my_module->myFunction();

上面的代碼將加載存儲在admin / model / module / my_module.php中的my_module.php


加載語言language文件

下面的代碼將加載模塊控制器中的語言文件。在括號內,您將需要在語言文件夾中包含語言文件的路徑。

$this->load->language('module/my_module');

管理控制器將只加載管理語言文件,而不是目錄語言文件;目錄控制器將只加載目錄語言文件。一旦語言文件被加載到控制器中,您可以使用$data數組將其文本存儲到一個php變量中。
$ this-> language-> get('text')將從語言文件中的$ _ ['text']變量中獲取文本。

$this->data['text'] = $this->language->get('text');
$ this-> language-> get('text')會從我們剛才加載的語言文件中的$ _ ['text']變量中獲取文本。
數據數組的每個元素都將被轉換成它自己的變量。$ data ['text']將成為視圖內模板文件的$ text

$ text變量可以在視圖的.tpl文件中回顯:
<p><?php echo $text; ?></p>


設置標題標題

以下代碼將從語言文件中設置文本作為頁面的標題標題:
$this->document->setTitle($this->language->get('heading_title'));
這將抓取存儲在模塊語言文件中的變量$ _ ['heading_title']的文本。

如果需要將文本存儲為php會話變量,
使用$ this-> session-> data ['text']而不是$ this-> data ['text']


加載庫library文件

OpenCart目錄包含可以由admin和目錄控制器文件訪問的庫文件的集合。這些文件位於OpenCart商店的根文件夾下的system / library。在加載語言文件的代碼示例中,$ this-> load-> language$ this->文檔都提供對library文件夾中language.phpdocument.php文件中的函數的訪問。
如果要訪問庫文件中的函數,則需要在控制器類中使用$ this - > [insert library file name] - > function()來調用它。