上班的公司使用的是Ecshop开发的电子商城,虽然作者一直都是针对Magento的安装维护及开发的学习、工作,也曾想过把公司的Ecshop换成Magento,但由于当前的Ecshop前端效果基本已经做完,只需要实现PHP的功能就好了,前端需要的也就是小改。
一开始开网上说,有PHP基础,很容易操作,我们都知道,PHP二次开发来说,最基本的就是对数据库的增删改查了。
我们来看看Ecshop的代码流程,也算是让刚接触Ecshop的其他新手知道Ecshop的过程是如何实现的。
Ecshop 感觉最麻烦的,就是需要修改什么就得代码里增加,这和Magneto的插件扩展性来说,根本就不是一个级别的。
Ecshop主页通过$smarty->assign()来调用需要的数据,在$smarty->display(‘index.dwt’);前
比如说$smarty->assign()获取最新产品,这里面一般有两个参数
$smarty->assign(‘chanpin’, cat_chanpin(3,4));
这里的意思是调用分类3的产品4个。第二个参数是进行SQL操作的一个方法,你可以改成你需要返回的数组值
第一个参数算是命名方法吧,作者命名为chanpin
这样,视图模板就可以使用了。不过视图模板之前,还有一个叫lib的模板库文件
index.dwt这种dwt后缀的虽然说是显示操作,但其实核心数据还是在当前主题的library文件夹里。
好了,来个代码走势图:
index.php入口
$smarty->assign(‘chanpin’, cat_chanpin(3,4)); #假设cat_chanpin($a,$b)方法已经存在并且返回数据库的数组
$smarty->display(‘index.dwt’); #访问的首页视图
index.dwt开始提取同级目录中的library目录里的需要文件
<!– #BeginLibraryItem “/library/page_header.lbi” –><!– #EndLibraryItem –>
这就是提取/library/page_header.lbi模板库文件里的数据
page_header.bli文件里如果我们需要foreach循环数据,命名方式为:
<!–{foreach from=$fenlei item=goods}–>
这里注意,item是必须的参数,更多的可以参考模板的说明。
关于作者