模板开发
全局变量与站点标签
使用 MacCMS 的站点名称、模板路径、SEO 参数和登录信息,避免混淆全局变量与当前内容对象。
MacCMS V10 · 更新于 · MacCMS Club 编辑部 · 版本与验证范围
$maccms 保存当前站点和页面信息。$obj 则由当前页面决定,不能当成全局站点设置。
常用变量
| 标签 | 用途 |
|---|---|
| $maccms.site_name | 网站名称 |
| $maccms.site_url | 配置中的主站地址 |
| $maccms.site_description | 网站说明 |
| $maccms.site_logo | 网站标志 |
| $maccms.path | 安装路径 |
| $maccms.path_tpl | 当前主题路径 |
| $maccms.mid | 当前模型编号 |
| $maccms.aid | 当前页面编号 |
| $maccms.search_hot | 后台设置的热门搜索词 |
一个可直接检查的例子
<h1>{$maccms.site_name}</h1>
<p>当前模型:{$maccms.mid},页面:{$maccms.aid}</p>分别打开影片列表、详情与会员页,编号会变化。它不是当前影片 ID;影片 ID 是详情对象中的 vod_id。
模型与页面编号
视频 mid=1,文章=2,专题=3,会员=6,演员=8,角色=9,剧情=10,网址=11,漫画=12。视频详情 aid=14、播放=15、下载=16、角色=17、剧情=18;文章详情为24。
配置和登录信息
模板应只输出实际需要的非敏感字段,不要 dump 整份 $GLOBALS['config']:其中可能包含邮件、支付和接口配置。调试站点名称用上面的单字段例即可。
动态页可以根据程序提供的用户对象显示昵称;纯静态页不能把某个用户的登录信息固定写进生成文件。客户端 Cookie 判断最多控制界面显示,真正权限必须由后端检查。
友情链接示例
{maccms:link num="10" order="asc" by="sort"}
<a href="{$vo.link_url}">{$vo.link_name}</a>
{/maccms:link}先在后台添加并启用友情链接,再检查名称与 URL。广告或付费推荐应如实标记,不用伪造评价或排名。
下一步:通用模板与分页。