智简魔方文档

会员中心与购物车主题开发文档

本文整理智简魔方财务系统中“会员中心与购物车主题开发文档”相关的配置、操作或问题处理内容,供管理员和运维人员按原文步骤查阅与执行。

主题开发文档


用于使用财务系统 V2.0 以上,使用模板引擎方式开发主题会员中心和购物车主题时


智简魔方财务系统V2.0版本开始,使用了模板引擎作为界面渲染工具,不再使用V1.X所使用的的VUE框架

本文章重点介绍,模板引擎功能和如何进行开发

【魔方开发者交流群:682866869】

1、基础介绍


模板目录
智简魔方财务系统支持3种不同类型主题,分别为

②. 会员中心使用的 clientarea 模板

/public/themes/clientarea/您的主题名/

系统固定路径示例:

http://www.abc.com/login
/public/themes/clientarea/您的主题名/login.tpl

自定义文件示例:

http://www.abc.com/page?tpl=custom
/public/themes/clientarea/您的主题名/custom.tpl

自定义目录文件示例:

http://www.abc.com/page?tpl=mulu/custom
/public/themes/clientarea/您的主题名/mulu/custom.tpl

③. 购物车使用的 cart 模板

/public/themes/cart/

URL 路径固定,无法直接增加,可参考官方模板获取 URL 和 tpl 的对应规则。

智简魔方财务系统使用 ThinkPHP 框架及其模板引擎,模板文件后缀为 .tpl

调试时,在模板文件中加入:

{debug}

刷新页面后,系统会用弹窗展示调试菜单和所有变量。


缩略图能力

管理员后台主题设置界面中缩略图将会调用主题根目录下面的 theme.jpg 进行显示


模板配置文件

每个模板都需要在根目录中提供:

theme.config

模板支持继承,可参考:

/public/themes/clientarea/child-theme-example

子主题必须提供 theme.config,用于指定当前主题文件不存在时所查找的父主题。

会员中心模板引擎支持自定义页面。调用示例:

domain.com/page=sdfsdf

系统会自动查找并渲染:

sdfsdf.tpl





购物车主题顶部双重调用功能


购物车主题默认会调用会员中心的头部底部进行页面渲染。

我们也支持允许客户通过配置文件或者 url 定义调用的头部/底部


web 的头部/底部默认调用路径为

/web/主题名字/common/footer.html
/web/主题名字/common/header.html

会员中心主题的默认头部底部路径

/clientarea/主题名字/header.tpl
/clientarea/主题名字/footer.tpl

主题定义文件方法:

在购物车主题根目录建立主题配置文件 theme.config

写入配置

properties:
loggedheader: clientarea # 定义登录后的头部底部调用
nologinheader: clientarea # 定义未登录的头部底部调用

URL 方法:

通过访问购物车时增加参数

使用 web 主题的头部底部

&site=web

使用会员中心主题的头部底部

&site=clientarea

例子

http://www.test.idcsmart.com/cart?action=configureproduct&pid=805&site=clientarea


如果未指定,系统会默认调用clientarea



2、开发案例


需求:客户需要修改升降级时候的文字,不希望改动主题和影响更新,需要使用子主题功能进行开发
1. 前往主题目录:

/public/themes/clientarea/
  1. 建立自己的主题目录,例如:
/public/themes/clientarea/mytheme
  1. 将需要修改的父主题文件复制到自己的主题目录:
/public/themes/clientarea/default/servicedetail/zjmfdcim.tpl
/public/themes/clientarea/mytheme/servicedetail/zjmfdcim.tpl
  1. 建立子主题描述文件:
/public/themes/clientarea/mytheme/theme.config

文件内容:

name: "mytheme"
description: ""
author: ""
config-parent-theme: "default"
  1. 前往后台,将主题切换到 mytheme