你现在的位置:首页 > PHP网站建设知识库 > ZenCart > 正文

zencart模版修改经总结

网上说zencart的二次开发以及模版的开发都相当困难,这几天尝试修改了一下,确实如此。
zencart的源代码隐藏的很深,并且其整体架构设计的与我们的思维有所出入。
对于zencart模版的制作和修改来说,相对于zencart的二次开发来说相对简单一些。
模版的制作,主要是修改CSS代码和替换一些图片,比如Logo、Banner等图片的替换,整个导航栏的修改,这个难度不大,我们只要根据查看浏览器上 显示的HTML源代码,确定那个类或者属性需要修改,进而转到CSS文件找到这个要修改的地方进行修改就可以了(注意:事先对文件备份时必要的)。
模版的制作相对于修改已有的模版来说难度稍有提高。
zencart模版是HTML与PHP代码是混在一块的,很伤神。如果想重头开发一套zencart模版,难度无疑比修改别人的模版要大的多。不过我觉得独立去开发一套模版没有多大必要,我们多多少少都可以借用已有的模版,在那上面做修改,除非 你是想测试一下自己对zencart的掌握水平有多深。
二次开发就需要对zencart的代码了如指掌了(当然如果开发一些小插件就除外了),zencart的整体架构和我们的思维有一些不同,我最近看到的部分代码也都是按函数封装,而非按照类封装的,并且隐藏的相当深。网上有一张关于zencart加载流程的图片,不过就我个人根据源代码的分析来看,那张图片好像不大正确,可能是版本比较早的时候的zencart的加载流程。
下面是我根据代码整理的一下部分的加载流程,记在这里,以供以后参考(针对版本1.38)。
index.php中加载includes/application_top.php
application_top.php文件中加载includes/extra_configures/目录下的各个配置文件,继而加载autoload_func.php文件、counter.php文件。
includes/extra_configures/多为配置文件和入侵检测文件(注入检测)。
initsystem.php文件中加载了includes/auto_loaders/目录下的文件(不包括config.core.php文件),主要是config.ultimate_seo.php文件(该文件主要内容是$autoLoadConfig数组)。

关于代码的,暂时就写到这里,以后看过之后再续上。
关于前台布局上,我看到主要有两种,一种是三栏的、一种两栏。
我主要接触的是三栏的。这种左右两侧的是通过后台设置的,变化的是中间部分。通过地址栏里面的main_page参数来确定(这样加大了源代码分析的难度)。