思博文档中心 | SibHosting Docs - 模板开发手册
type: channel
link: https://doc.0330.top/category/theme-dev/
description: 前端模板结构、标签语法、样式定制及主题开发规范
items: 用户中心开发文档
items: 购物车模板开发文档
items: 首页模板开发教程
items: 公用函数说明

用户中心开发文档
type: item
date: 2026-03-21T19:11:38+08:00
description: 目录结构public/template/clientarea/{模板标识}/ ├── {模板标识}.php # 模板配置文件 ├── clientarea.html # 仪表盘/首页 ├── login.html # 登录页面 ├── register.html # 注册页面 ├── hostlist.html # 产品列表 ├── host.html # 产品详情 ├── orders.html # 订单列表 ├── order.html # 订单详情 ├── addfunds.html # 充值页面 ├── balanceLog.html # 余额日志 ├── profile.html # 个人资料 ├── realname.html # 实名认证 ├── verified.html # 实名认证检测 ├── ticketlist.html # 工单列表 ├── ticket.html # 工单详情 ├── submitaticket.html # 提交工单 ├── common/ # 公共组件 │ ├── header.html # 页面头部 │ ├── footer.html # 页面底部 │ ├── meta.html # Meta 标签 │ ├── script.html # 脚本引用 │ ├── sidenav.html # 侧边导航 │ └── captcha.html # 验证码组件 └── assets/ # 静态资源（可选） ├── css/ ├── js/ └── images/路由规范路由对应模板说明/clientareaclientarea.html仪表盘/loginlogin.html登录/registerregister.html注册/clientarea/hostlisthostlist.html产品列表/clientarea/host/{id}host.html产品详情/clientarea/ordersorders.html订单列表/clientarea/order/{id}order.html订单详情/clientarea/addfundsaddfunds.html充值/clientarea/balanceLogbalanceLog.html余额日志/clientarea/profileprofile.html个人资料/clientarea/realnamerealname.html实名认证/clientarea/verifiedverified.html实名认证检测/clientarea/ticketlistticketlist.html工单列表/clientarea/ticket/{id}ticket.html工单详情/clientarea/submitaticketsubmitaticket.html提交工单/clientarea/page/{name}{name}.html自定义页面配置文件<?php function {模板标识}_MetaData() { return [ "DisplayName" => "用户中心模板", "APIVersion" => "1.0.0", "HelpDoc" => "http://example.com" ]; } function {模板标识}_ConfigOptions() { return [ [ 'key' => 'site_title', 'title' => '网站标题', 'type' => 'input', 'default' => '', 'options' => [], 'tip' => '显示在浏览器标签页', ], [ 'key' => 'footer', 'title' => '页脚内容', 'type' => 'textarea', 'default' => '', 'options' => [], 'tip' => '支持HTML', ], [ 'key' => 'theme', 'title' => '主题风格', 'type' => 'select', 'default' => 'light', 'options' => [ 'light' => '浅色', 'dark' => '深色', ], 'tip' => '选择配色方案', ], ]; }配置访问：{$config.clientarea_meta.xxx}字段类型：input（单行）、textarea（多行）、select（下拉）全局变量变量说明$site.name站点名称$site.favicon站点图标$site.version站点版本$config系统配置$user.id用户ID$user.nickname昵称$user.email邮箱$us…

购物车模板开发文档
type: item
date: 2026-03-21T19:04:57+08:00
description: 目录结构public/template/cart/{模板标识}/ ├── {模板标识}.php # 模板配置文件（必需） ├── cart.html # 商品列表页（必需） ├── product.html # 商品详情页（必需） ├── header.html # 公共头部（可选） ├── footer.html # 公共底部（可选） ├── xxx.html # 自定义页面（可选） └── assets/ # 静态资源（可选） ├── css/ ├── js/ └── images/核心文件说明1. {模板标识}.php<?php function {模板标识}_MetaData() { return [ "DisplayName" => "模板显示名称", "APIVersion" => "1.0.0", "HelpDoc" => "http://example.com" ]; } function {模板标识}_ConfigOptions() { return [ // 单行文本 [ 'key' => 'nav_title', 'title' => '导航标题', 'type' => 'input', 'default' => '', 'options' => [], 'tip' => '显示在导航栏的标题', ], // 下拉选择 [ 'key' => 'theme_color', 'title' => '主题颜色', 'type' => 'select', 'default' => 'blue', 'options' => [ 'blue' => '蓝色主题', 'red' => '红色主题', 'dark' => '深色主题', ], 'tip' => '选择站点配色风格', ], ]; } function {模板标识}_CartArea() { return [ // 单行文本 [ 'key' => 'product_slogan', 'title' => '产品标语', 'type' => 'input', 'default' => '', 'options' => [], 'tip' => '显示在商品名称下方的简短标语', ], // 下拉选择 [ 'key' => 'recommend_level', 'title' => '推荐等级', 'type' => 'select', 'default' => 'normal', 'options' => [ 'normal' => '普通', 'hot' => '热销', 'new' => '新品', ], 'tip' => '商品标签展示级别', ], ]; }配置访问：{$config.cart.xxx} - ConfigOptions 配置{$meta.xxx} - CartArea 扩展字段字段类型：类型说明input单行文本textarea多行文本select下拉选择2. 页面文件cart.html - 商品列表页路由：/cart可用变量：变量类型说明$siteArray站点信息$configArray模板配置$userArray当前用户$productsObject商品分页数据$topListArray商品分类树$groupIdInt当前分类ID$keywordString搜索关键词$sortString排序方式商品数据结构：$p = [ 'id' => 1, 'product_name' => '商品名称', 'product_desc' => '商品描述', 'billing_type' => 'cycle', // free/oneoff/cycle 'price_matrix' => [ 'first_original' => 100.00, 'first_discount' => 80.00, 'first_cycle_txt'=> '月', ], ];排序参数：值说明weigh综合排序（默认）new最新上架price_asc价格从低到高price_desc价格从高到低product.html - 商品详情页路由：/cart/product/{id}可用变量：变量类型说明$productArray商品详细信息$priceArray价格配置信息$metaArray商品扩展字段值$metaListArray商品配置项列表价格结构：$price = [ 'type' => 'cycle', // free/oneoff/cycle 'oneoff_original' => 100.00, 'oneoff_discount' => '80.00', 'cycles' => [ '1M' => 10.00, '3M' => 27.00, '6M…

首页模板开发教程
type: item
date: 2026-03-21T18:37:00+08:00
description: 概述本文档定义了在 public/template/web/{模板名}/ 目录下开发首页及相关页面的规范。目录结构规范public/template/web/{模板标识名}/ ├── {模板标识名}.php # 模板配置文件（必须） ├── index.html # 首页模板（必须） ├── header.html # 页头组件（可选） ├── footer.html # 页脚组件（可选） ├── announcement.html # 公告列表页（必须 ├── announcement_detail.html # 公告详情页（必须） ├── xxx.html # 自定义页面（可选） ├── template.png # 模板预览图（建议 400x300） └── assets/ # 静态资源（可选，按需添加） ├── css/ ├── js/ ├── images/ └── fonts/注意：assets 目录不是必须的。如果使用外部 CDN 或系统自带资源，可以不创建。配置文件详解模板配置文件 {模板名}.php 必须包含以下三个函数：1. {模板名}_MetaData() - 模板元数据（必须）<?php function {模板名}_MetaData() { return [ "DisplayName" => "简洁首页", // 后台显示的名称 "APIVersion" => "1.0.0", // API版本号 "HelpDoc" => "http://www.sib.cc/" // 帮助文档链接（可选） ]; }2. {模板名}_ConfigOptions() - 首页配置字段（必须）定义首页模板后台可配置的字段，通过 $config.web_meta.xxx 访问。function {模板名}_ConfigOptions() { return [ // 单行文本 - 标题类 [ 'key' => 'hero_title', 'title' => '首页主标题', 'type' => 'input', 'default' => '', 'options' => [], 'tip' => '显示在首页Banner区域的主标题', ], // 单行文本 - 联系方式 [ 'key' => 'contact_email', 'title' => '联系邮箱', 'type' => 'input', 'default' => '', 'options' => [], 'tip' => '显示在联系我们页面的邮箱地址', ], // 多行文本 - 富文本内容 [ 'key' => 'welcome_content', 'title' => '欢迎语内容', 'type' => 'textarea', 'default' => '', 'options' => [], 'tip' => '支持HTML标签，显示在首页欢迎区域', ], // 多行文本 - 页脚代码 [ 'key' => 'footer_html', 'title' => '页脚自定义代码', 'type' => 'textarea', 'default' => '', 'options' => [], 'tip' => '支持HTML/JS代码，显示在页面底部', ], // 下拉选择 - 主题风格 [ 'key' => 'theme_style', 'title' => '主题风格', 'type' => 'select', 'default' => 'default', 'options' => [ 'default' => '默认风格', 'dark' => '深色模式', 'light' => '浅色模式', ], 'tip' => '选择站点整体配色方案', ], // 下拉选择 - 布局模式 [ 'key' => 'layout_mode', 'title' => '首页布局', 'type' => 'select', 'default' => 'standard', 'options' => [ 'standard' => '标准布局', 'full' => '全屏布局', 'compact' => '紧凑布局', ], 'tip' => '选择首页的整体布局风格', ], ]; }3. {模板名}_ArticleArea() - 文章配置字段（可选）定义文章详情页的自定义字段，通过 $config.article_meta.xxx 访问。function {模板名}_ArticleArea() { return [ [ 'key' => 'article_sidebar', 'title' => '文章侧边栏', 'type' => 'tex…

公用函数说明
type: item
date: 2026-03-21T18:20:00+08:00
description: $site 全局配置变量作用域：全站模板可用（首页模板、购物车模板、会员中心模板） 语法：{$site.字段名} 或 {$site['字段名']} 数据来源：后台「系统配置」各分组设定值站点基础信息变量名类型说明示例输出{$site.name}string站点名称思博业务系统{$site.domain}string站点根地址http://sib.cc{$site.favicon}string站点图标路径/uploads/xxx.png{$site.beian}stringICP备案号京ICP备xxx号{$site.cdnurl}stringCDN域名https://cdn.xxx.com{$site.timezone}string时区Asia/Shanghai{$site.version}int版本时间戳1769933723SEO 与页面元数据变量名类型数据来源说明{$site.title}string后台 → 系统配置 → Seo设置 → 标题站点默认标题，通常用于首页 标签{$site.keywords}string后台 → 系统配置 → Seo设置 → 关键词默认 SEO 关键词，多个关键词用英文逗号分隔{$site.description}string后台 → 系统配置 → Seo设置 → 描述默认站点描述，建议控制在 80-120 字符会员与认证配置变量名类型数据来源可选值说明{$site.user_register_captcha}string后台 → 系统配置 → 会员配置 → 注册验证方式email / mobile / none新用户注册时的验证方式{$site.global_idv}string后台 → 系统配置 → 会员配置 → 强制实名认证0 / 1是否全局强制要求实名认证{$site.global_phone}string后台 → 系统配置 → 会员配置 → 强制手机绑定0 / 1是否全局强制要求绑定手机号IDC 业务核心配置变量名类型单位数据来源业务含义{$site.renew_before}string天后台 → 常规配置 → 计划任务 → 计划任务设置到期前 X 天开始发送续费提醒通知{$site.pause_before}string天后台 → 常规配置 → 计划任务 → 计划任务设置到期后 X 天自动暂停服务（置为暂停状态）{$site.keep_days}string天后台 → 常规配置 → 计划任务 → 计划任务设置暂停后保留数据的宽限期，超期可删除{$site.purge_after}string天后台 → 常规配置 → 计划任务 → 计划任务设置产品删除后等待 X 天再从物理上清除数据$user 用户变量使用前提：仅在用户登录状态下有效，未登录时为 null。使用前必须先判断 {if $user}。基础信息变量名类型示例值说明{$user.id}int1用户ID{$user.username}string"admin"用户名（登录账号）{$user.nickname}string"帅哥1是"用户昵称{$user.email}string"king@sib.cc"邮箱地址{$user.mobile}string"17699122121"手机号{$user.avatar}string"http://.../avatar.jpg"头像URL账户状态变量名类型示例值说明{$user.status}string"normal"账户状态：normal=正常，disabled=禁用{$user.level}int0用户等级{$user.group_id}int1用户组ID{$user.agent_id}int1代理商ID财务信息变量名类型示例值说明{$user.money}string"574.01"账户余额{$user.score}int0积分个人资料变量名类型示例值说明{$user.gender}int1性别：0=未知，1=男，2=女{$user.birthday}string"2017-04-04"生日{$user.bio}string"7777s"个人简介登录记录变量名类型示例值说明{$user.logintime}int1769750628最后登录时间（时间戳）{$user.loginip}string"127.0.0.1"最后登录IP{$user.prevtime}int1769398867上次登录时间（时间戳）{$user.successions}int1连续登录天数{$user.maxsuccessions}int2最大连续登录天数注册信息变量名类型示例值说明{$user.jointime}int1491635035注册时间（时间戳）{$user.joinip}string"127…