搜档网
当前位置:搜档网 › Zencart模板修改(必看)

Zencart模板修改(必看)

Zencart模板修改(必看)
Zencart模板修改(必看)

一、如何安装和修改zencart新模板

1.下载ZenCart模板

提示:比如下载的模板名为jinxu99mbcn,是中文语言下的套用的网店模板。至于英语语言下用用哪个模板,调用方法是一样的。

2.备份好网店数据库和原来的模板文件个性化网页!

二、安装ZenCart模板

1.将下载后的模板包用winrar或7zip解压缩。

2.将模板目录整个复制到includes/templates/ 下

三、选择新安装的模板

1.进入ZenCart后台管理,工具(Tools) 模板选择(Template Selection),可以看到右边已安装模板有模板名:【https://www.sodocs.net/doc/3f13411149.html,】

2.选择要替换哪个现有模板(这里选的是ZCDemo Chinese),然后点击右边的编辑按钮,从现安装模板的下拉菜单中选择新模板,最后点击更新按钮。

3.此时Default(All)语言使用了:【https://www.sodocs.net/doc/3f13411149.html,】这个新模板。但是还没有生效。

四、正式启用刚选择的模板

1.转到工具(Tools) 外观设置(Layout Boxes Controller),

2. 在屏幕最下面,选择重置按钮。

五、最后检查

查看中文语言下的zencart网页源代码,发现:

href="https://www.sodocs.net/doc/3f13411149.html,/includes/templates/【https://www.sodocs.net/doc/3f13411149.html,】/css/style_imagehover.css" />,说明zencart网店调用新模板成功!

七、开始个性化刚启用的模板

提示:保护好下载的模板主题包,万一自己修改失误,还可以从头再来的。

开发Sidebox插件(两个变量:$title $content )

首先需要搞清楚什么是Sidebox,Sidebox是一个显示在左侧或者右侧的内容区域,当然你也可以将Sidebox的单栏状态打开,使其显示在网页的任何位置。你可以通过进入后台的Tools/Layout Boxes Controller来进行Sidebox的设置。注意的是如果开启了单栏Sidebox 的话,你必须通过一句代码手动将其显示到模板中去,否则你是看不到任何效果的。zen-cart 中自带了很多Sidebox, 例如显示产品分类的Sidebox, 显示最新产品的Sidebox, 选择语言的Sidebox等等。

Sidebox相关的文件和目录

输出左侧sidebox的文件:/includes/modules/column_left.php

输出右侧侧sidebox的文件:/includes/modules/column_right.php

输出单栏sidebox的文件:/includes/modules/column_single.php

存储sidebox的位置:/includes/modules/sideboxes

Sidebox模版位置:/includes/templates/template_default/sideboxes

默认左侧sidebox模版/includes/templates/template_default/common/tpl_bo x_default_left.php

默认右侧sidebox模版:/includes/templates/template_default/common/tpl_bo x_default_right.php

默认单栏sidebox模版:/includes/templates/template_default/common/ tpl_box_default_single.php

实例: hello_sidebox的开发

下面我们来开发一个简单的sidebox,以说明开发一个Sidebox的基本步骤,该sidebox只显示一段文字,并不实现任何功能,我们将这个sizebox命名为hello_sidebox。

1). 设置语言和要在sidebox中显示的内容

在目录" /includes/languages/english/extra_definitions"新建一个PHP文件,命名为" hello_sidebox.php", 并设置英语环境下sidebox的Title和要显示的内容。该文件中定义了两个常量BOX_HEADING_HELLOW_SIDEBOX(sidebox的标题), 'BOX_HEADING_HELLOW_SIDEBOX_CONTENT(显示的内容),代码如下

define(BOX_HEADING_HELLOW_SIDEBOX, "Hello sidebox");

define(BOX_HEADING_HELLOW_SIDEBOX_CONTENT, "This is a sidebox demo");

2). 新建sidebox文件

在目录"/includes/modules/sideboxes"下面新建一个文件, 命名为" hello_sidebox.php", 并输入以下代码, 其中第一行加载了hello_sidebox的模板文件, 第二行设置了sidebox的标题, 第三行代码加载了用来输出sidebox的模板文件.

require($template->get_template_dir('tpl_hello_side box.php',DIR_WS_TEMPLATE, $current_page_base,'sideboxes'). '/tpl_hello_sidebox.php');

$title = BOX_HEADING_HELLOW_SIDEBOX;

require($template->get_template_dir($column_box_def ault, DIR_WS_TEMPLATE, $current_page_base,'common') . '/' . $column_box_default);

3). 新建sidebox模版文件

sidebox模板文件实际上并不会输出任何内容到网页上面, 这里只是构造了要在Sidebox 内部显示的内容(变量$content). 这里, 我们的内容仅仅是将常量BOX_HEADING_HELLOW_SIDEBOX_CONTENT的值赋给$content, 在/includes/templates/template_default/sideboxes下新建一个文件, 命名为" tpl_hello_sidebox.php",代码如下.

$content = "";

$content .= BOX_HEADING_HELLOW_SIDEBOX_CONTENT;

4). 安装sidebox

进入管理后台>>Tools>>Layout Boxes Controller, 就可以看到我们刚才开发的hello_sidebox插件了, 选中hello_sidebox, 点击编辑按钮, 将Left/Right Column Status设置为on, 再点击Update按钮, 这样安装过程就完成了. 现在再刷新一下首页, 是不是就能看到我们的hello_sidebox盒子了呢?

5). 发布sidebox

将刚才的文件按照原始的目录结构进行打包,如下图所示, 就算发布成功了. 这样就可以把我们开发好的插件共享给别人使用了.

实践篇

Zencart后台可进行哪些修改

1.商店设置--》布局设置里面可进行页面的一些整体布局,如:

左、右栏目宽度,左右栏目是否显示,是否显示子分类等等

2.工具--》外观控制里面可以进行所有功能模块的设定,可进行如下设置:

是否在左右栏目中开启、显示在左边栏目还是右边、模块的排序、是否开启单栏SIDEBOX (注意的是如果开启了单栏Sidebox的话,你必须通过一句代码手动将其显示到模板中去,否则你是看不到任何效果的)

Zencart要修改哪些文件

1. Templates/template_default/下的文件是系统默认文件,不要做任何修改!

2. Templates/当前模板名/ 下的文件是你可修改的,修改的依照是Templates/template_default/ 下的那些文件,有需要修改的地方可把Templates/template_default/ 底下的文件拷贝到Templates/当前模板名/ 相应目录下,然后进行修改。没有拷贝过去的则系统默认调用Templates/template_default/ 下的文件。

2.1 Templates/当前模板名/ common/tpl_header.php 导航起以上(包括导航)的文件

2.2 Templates/当前模板名/ common/ tpl_footer.php 底部横线及下的文件

2.3 Templates/当前模板名/ common/ tpl_main_page.php 控制一整个页面的显示,它包含(require)了tpl_header.php与tpl_footer.php文件

而介于导航与横线之间的内容则是在

/**

* prepares and displays header output

*

*/

if (CUSTOMERS_APPROV AL_AUTHORIZATION == 1 && CUSTOMERS_AUTHORIZATION_HEADER_OFF == 'true' and ($_SESSION['customers_authorization'] != 0 or $_SESSION['customer_id'] == ")) {

$flag_disable_header = true;

}

require($template->get_template_dir('tpl_header.php ',DIR_WS_TEMPLATE, $current_page_base,'common'). '/tpl_header.php');?>

/**

* prepares and displays footer output

*

*/

if (CUSTOMERS_APPROV AL_AUTHORIZATION == 1 && CUSTOMERS_AUTHORIZATION_FOOTER_OFF == 'true' and ($_SESSION['customers_authorization'] != 0 or $_SESSION['customer_id'] == ")) {

$flag_disable_footer = true;

}

require($template->get_template_dir('tpl_footer.php ',DIR_WS_TEMPLATE, $current_page_base,'common'). '/tpl_footer.php');

?>

之间的代码

(测试时可把该文件里面的内容全部删除后刷新页面查看,即可知道它控制页面哪一部分)

3. Templates/当前模板名/sidebox 下的文件是参照Templates/template_default/ sidebox 里面的文件编写的,就是模块模板。Templates/当前模板名/sidebox里面没有的文件就默认调用Templates/template_default/ sidebox下的同名文件。所以要修改某个功能模块时可以把Templates/template_default/ sidebox下相应的文件拷贝到Templates/当前模板名/sidebox下再做修改。

4. Templates/当前模板名/css 控制页面的样式显示。是参照Templates/template_default/css 下编写。要修改页面显示可把Templates/template_default/css 下相应文件拷贝到Templates/当前模板名/css目录下再做修改。

5. 同理Templates/当前模板名/images 里的图片修改参照

6. Templates/当前模板名/images/buttons 直接修改里面图片(注意不要改变文件名)

7. includes\modules\当前模板名\ 下的三个文件可以修改:

specials_index.php 首页特价商品

new_products.php 首页新进商品

featured_products.php 首页推荐产品

注意:后台设置结合修改Templates/当前模板名/CSS 与Templates/当前模板名/CSS/IMAGES 下的文件即可达到大致修改效果

一些未达到的模块功能效果可通过修改Templates/当前模板名/sidebox 下的文件来实现

页面的全局部署则要通过修改

Templates/当前模板名/ common/tpl_header.php

Templates/当前模板名/ common/ tpl_footer.php

Templates/当前模板名/ common/ tpl_main_page.php

实现

以上是部分需要修改的地方,对于详细的修改过程,我会每天写一点点,一直到一个完美的

相关主题