ecshop二次開發手冊基礎教程
ecshop的代碼結構非常易懂,只有有一點php基礎都可以在原有的程序基礎上進行修改,或功能插件的開發。
ecshop中的一些公用函數都會放在includes文件夾里,而這些公用函數幾乎我們都可以用來參照一下就能輕松做出我們想要的其他功能了。
我們要對ecshop進行二次開發,簡單來說其實就是對數據庫的讀寫操作,所以只要我們讀懂ecshop的數據庫操作類,接下來的實現就很輕松了。?ecshop的數據庫操作類是很強大的,一些常用的函數如下:?
1.獲取單條記錄$GLOBALS['db']->getRow($sql);
?2.獲取單一字段$GLOBALS['db']->getOne($sql);
? ?例如查詢產品總數:
echo?$GLOBALS['db']->getOne("SELECT?COUNT(*)?FROM " .?$GLOBALS['ecs']->table("goods")?
?3.獲取所有記錄$GLOBALS['db']->getAll($sql);?
4.執行sql語句$GLOBALS['db']->query($sql);
//執行刪除(DELETE),插入(INSERT),更新(UPDATE)等操作可用此方法?
5.把數組元素插入數據庫$parent['goods_number']?= '1′;?$parent['parent_id']?=?0;
$GLOBALS['db']->autoExecute($GLOBALS['ecs']->table("cart"),?$parent, "INSERT");
?基于此基礎上就能輕松進行ecshop二次開發了。
?二、ecshop前端模板的二次開發
ecshop有強大的模版機制,ECSHOP?結合Dreamweaver實現了一套模版機制,改動模版不再需要上傳,而是在后臺稍稍動動手設置一下就可以了。
ecshop采用smarty模板技術,Smarty是一個使用PHP寫出來的模板引擎,是目前業界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內容,提供了一種易于管理和使用的方法,用來將原本與HTML代碼混雜在一起PHP代碼邏輯分離。?在php文件中使用assign方法把php變量傳值給模板文件,例如:?$smarty->assign("action",?$action);
//把php中的變量$action傳值給模板文件(*.dwt)中的?action?變量,模板文件可用{$action}來輸出此值。?
?使用display方法來指定當前的模板文件并輸出到該文件顯示到客戶端,
例如:$smarty->display("user_passport.dwt");