外貿(mào)opencart,magento插件開(kāi)發(fā)
2022-10-24 15:22:18 - 米境通跨境電商
opencart的插件機(jī)制不僅可以不改變程序原代碼實(shí)現(xiàn)功能需求,還可以重復(fù)利用分享給其他需求者,本篇文件就給大家介紹opencart插件的原理以及如何開(kāi)發(fā)opencart...
文章目錄[+]
opencart的插件機(jī)制不僅可以不改變程序原代碼實(shí)現(xiàn)功能需求,還可以重復(fù)利用分享給其他需求者,本篇文件就給大家介紹opencart插件的原理以及如何開(kāi)發(fā)opencart插件。
首先我們來(lái)查看一個(gè)插件的目錄結(jié)構(gòu)(顯示最近游覽商品的插件)
這個(gè)插件里主要的是upload文件夾和install.xml文件。upload文件夾里一般都新增的文件,也有些是會(huì)覆蓋的文件(同名同路徑),但覆蓋的文件是不可逆的,也就是
說(shuō)如果要卸載這個(gè)插件,那么覆蓋之前的文件也會(huì)被刪除,會(huì)造成程序文件缺失。所以如果不是必須的,我們最好在upload文件夾中不要有會(huì)覆蓋的文件。
1.png
install.xml文件的開(kāi)頭內(nèi)容是聲明插件合適的opencart的版本,以及開(kāi)發(fā)者的相關(guān)信息,主體內(nèi)容是修改程序的代碼片段。
2.png
簡(jiǎn)單的講解一下插件安裝到實(shí)現(xiàn)的原理:上傳插件->解壓文件->將解壓后upload下的文件移動(dòng)到對(duì)應(yīng)的目錄并將文件路徑記錄到數(shù)據(jù)庫(kù)中,然后將install.xml文件的內(nèi)容
記錄到數(shù)據(jù)庫(kù)中->更新ocmod配置,系統(tǒng)根據(jù)保存的install.xml文件內(nèi)容生成改動(dòng)后的緩存文件在/storage/modification目錄下,opencart在執(zhí)行代碼時(shí),會(huì)優(yōu)先執(zhí)行緩
存中的文件,跳過(guò)原來(lái)的文件。
關(guān)于install.xml文件添加修改代碼片段的常用屬性說(shuō)明
$data['text_form']=!isset($this->request->get['product_id'])?$this->language->get('text_add'):$this->language->get('text_edit');
]]>
>
$data['product_id']=!isset($this->request->get['product_id'])?'':$this->request->get['product_id'];
]]>
通過(guò)以上的說(shuō)明,可以知道我們將新增的文件按照對(duì)應(yīng)的路徑放入upload空文件夾里,然后將install.xml文件和upload文件夾壓縮命名為xxxx.ocmod.zip,插件就完成了。
這里需要額外說(shuō)明一個(gè)情況,如果沒(méi)有新增文件,只有install.xml文件,那么這個(gè)插件也是需要新建一個(gè)空的upload目錄,我經(jīng)過(guò)代碼追蹤查詢到安裝插件的程序中會(huì)檢。