苹果CMS介绍与标签大全



苹果CMS介绍与标签大全

一、苹果CMS简介

苹果CMS(maccms)是一套基于 PHP+MySQL 环境下运行的完善而强大的快速建站系统[reference:0]。系统内置了丰富的 CMS 标签并支持 ThinkPHP 框架标签完美融合,可以调取系统内所有的数据,只要你懂一些前端知识就可以快速开发自己的模板功能[reference:1][reference:2]。

核心特点

特点说明
程序体积小
           
优化代码,运行速度快,普通虚拟主机即可搭建[reference:3]
       
模板分离
           
仿 MVC 模板分离,后台与前端完全分离[reference:4]
       
内置标签丰富
           
支持 TP5 语法,可调取系统内所有数据[reference:5]
       
模块众多
           
支持视频、文章、专题、明星、角色、网址导航等模块[reference:6]
       
后台易用
           
界面简洁,功能齐全,支持双端管理[reference:7]
       
开源免费
           
基于 MIT 协议开源,可商用可二次开发
       

环境要求

  • PHP 5.6+ / 7.x(推荐 PHP 7.0+)[reference:8]
  • MySQL 5.5+ / 5.7+[reference:9][reference:10]
  • 服务器:Apache / IIS / Nginx

二、模板目录结构

苹果 CMS 所有模板主题包都规定放在 /template/ 目录下,必须严格遵守标准的目录结构,否则会导致前端访问异常[reference:11]。

│─template/模板目录/
│  ├─info.ini      # 模板信息文件
│  ├─ads/           # 广告文件目录
│  ├─js/            # JavaScript 文件
│  ├─css/           # 样式文件
│  ├─images/        # 图片文件
│  └─html/          # 模板 HTML 文件目录
│     ├─art/        # 文章模块模板
│     ├─comment/    # 评论模块模板
│     ├─gbook/      # 留言本模块模板
│     ├─index/      # 首页模块模板
│     ├─topic/      # 专题模块模板
│     ├─user/       # 用户中心模块模板
│     └─vod/        # 视频模块模板[reference:12]
    

三、标签基础语法

1. 变量输出

类型语法说明
普通变量
           
{$maccms.site_name}输出站点名称等配置信息,支持点语法代替数组下标[reference:13]
       
数组变量
           
{$maccms['site_name']}传统数组语法
       
函数调用
           
{$data.name|md5}对变量应用过滤函数,多个函数用 | 分隔[reference:14]
       
多参数函数
           
{$create_time|date="y-m-d",###}用 ### 占位变量位置[reference:15]
       
原生 PHP
           
{:substr($name,0,3)}直接执行 PHP 代码,适合简单运算[reference:16]
       

2. 列表标签

列表标签由起始标签和结束标签组成,内部变量以 $vo. 开头[reference:17]。

{maccms:vod type="all" num="10" order="desc" by="time"}
    <div>{$vo.vod_name}</div>
{/maccms:vod}

3. 变量作用域

  • $obj:详情页(视频详情、文章详情等)代表当前主对象[reference:18]
  • $vo:循环列表中的每一条数据[reference:19]
  • $parent:分类页二级分类时代表上级分类对象[reference:20]

四、全局配置标签

标签说明示例值
{$maccms.site_name}站点名称
           
我的影视站
       
{$maccms.site_url}站点网址
           
https://www.example.com
       
{$maccms.path}系统根目录路径
           
/
       
{$maccms.mid}当前模型 ID(视频=1,文章=2)
           
1
       
{$maccms.mob_status}手机端访问状态
           
1
       
{:mac_url('map/index')}获取站内链接
           
/index.php/map/index
       

五、视频模块标签({maccms:vod})

最常用的视频数据调用标签,支持丰富的筛选参数。

常用参数

参数说明示例
type分类 ID,all 全站 / current 当前分类
           
type="1"
num调用数量
           
num="12"
order排序方式,desc 倒序 / asc 正序[reference:21]
           
order="desc"
by排序字段,如 time(时间)、hits(点击)、score(评分)[reference:22]
           
by="hits"
ids指定视频 ID,多个用逗号分隔[reference:23]
           
ids="1,2,3"
level推荐等级
           
level="5"
paging是否分页,yes / nopaging="yes"
timeadd添加时间范围,如 -1 week 一周内[reference:24]
           
timeadd="-1 week"
hits点击量筛选,如 gt 1000 大于1000[reference:25]
           
hits="gt 1000"

使用示例

{maccms:vod num="10" type="all" order="desc" by="time"}
<div class="video-item">
    <a href="{:mac_url_vod_detail($vo)}" title="{$vo.vod_name}">
        <img src="{$vo.vod_pic|mac_url_img}" alt="{$vo.vod_name}">
        <h3>{$vo.vod_name}</h3>
        <p>主演:{$vo.vod_actor}</p>
    </a>
</div>
{/maccms:vod}

六、文章模块标签({maccms:art})

文章数据调用标签,参数结构与视频模块类似。

使用示例

{maccms:art num="8" type="2" order="desc" by="hits"}
<li><a href="{:mac_url_art_detail($vo)}">{$vo.art_name}</a>({$vo.art_time|date='Y-m-d'})</li>
{/maccms:art}

七、专题模块标签({maccms:topic})

专题列表标签,参数如下[reference:26]:

参数说明示例
num调用数量
           
num="10"
ids指定专题 ID
           
ids="1,2,3"
paging是否分页
           
paging="yes"
{maccms:topic num="6" order="asc" by="sort"}
<div class="topic">
    <a href="{:mac_url_topic_detail($vo)}">{$vo.topic_name}</a>
</div>
{/maccms:topic}

八、角色模块标签({maccms:role})

角色功能针对影视剧里面虚构人物信息进行收集整理[reference:27]。

常用参数

参数说明
rid指定关联视频 ID[reference:28]
       
role指定演员名,支持多个(如“刘德华,成龙”)[reference:29]
       
name指定角色名,支持多个[reference:30]
       
area指定地区[reference:31]
       
level指定推荐值[reference:32]
       
{maccms:role num="10" rid="'.$obj['vod_id'].'" order="asc" by="sort"}
<div>角色名:{$vo.role_name} | 演员:{$vo.role_actor}</div>
{/maccms:role}

角色字段(详情页 $obj)

标签说明
{$obj.role_name}角色名[reference:33]
       
{$obj.role_actor}演员名称[reference:34]
       
{$obj.role_pic}图片[reference:35]
       
{$obj.role_level}推荐值[reference:36]
       

九、分类标签({maccms:type})

分类标签可以调出后台所有数据分类数据,不限定在某个模板中使用[reference:37]。

{maccms:type num="10" order="asc" by="sort" ids="all"}
<div>分类名称:{$vo.type_name}</div>
{/maccms:type}

十、页面独有标签

1. 分类页标签($obj)

在分类页模板中可用以下变量获取当前分类信息[reference:38][reference:39]:

标签说明
{$obj.type_id}分类 ID
       
{$obj.type_name}分类名称
       
{$obj.type_pid}上级分类 ID
       
{$obj.parent}上级分类对象(二级分类时可用)[reference:40]
       
{$obj.type_title}分类 SEO 标题
       
{$obj.type_key}关键字
       
{$obj.type_des}描述信息
       
{:mac_url_type($obj)}分类链接
       

2. 视频详情页标签($obj)

在视频详情页(/html/vod/detail.html)可用以下标签[reference:41]:

标签说明
{$obj.vod_id}视频 ID
       
{$obj.vod_name}视频名称
       
{$obj.vod_pic|mac_url_img}海报图片
       
{$obj.vod_actor}主演
       
{$obj.vod_director}导演
       
{$obj.vod_area}地区
       
{$obj.vod_year}年份
       
{$obj.vod_remarks}备注(如“更新至XX集”)
       
{$obj.vod_content|mac_filter_html}剧情简介(过滤 HTML)
       
{$obj.vod_hits}总点击量
       
{$obj.vod_score}评分
       
{$obj.vod_time_add|date='Y-m-d'}添加时间
       

十一、常用处理函数

苹果 CMS 提供了一系列实用函数,可大幅简化开发流程[reference:42][reference:43]:

函数说明示例
mac_url_img自动转换图片地址,远程和本地图片通用
           
{$vo.vod_pic|mac_url_img}
mac_substring截取字符串指定长度
           
{$vo.vod_content|mac_substring=100}
mac_filter_html过滤 HTML 标签
           
{$vo.vod_content|mac_filter_html}
mac_url_create将逗号分隔的字符生成搜索链接[reference:44]
           
{$vo.actor|mac_url_create='actor','vod','search',' '}
mac_day返回格式化日期
           
{$vo.vod_time|mac_day}
mac_friend_date友好时间格式(“3分钟前”)
           
{$vo.vod_time|mac_friend_date}
mac_default空值时返回默认字符串
           
{$vo.vod_year|mac_default='未知'}
mac_long2ip长整型 IP 转字符串
           
{$user.user_login_ip|mac_long2ip}
mac_get_user_portrait获取用户头像地址
           
{$user.user_id|mac_get_user_portrait}

十二、数据统计函数

内置数据统计函数,快速获取各模块数据总量[reference:45][reference:46]:

函数说明
{:mac_data_count(0,'all','vod')}获取视频总数量
       
{:mac_data_count(0,'today','vod')}获取今日更新视频数量
       
{:mac_data_count(0,'all','art')}获取文章总数量
       
{:mac_data_count(0,'today','art')}获取今日更新文章数量
       
{:mac_data_count(1,'all')}获取分类ID=1下的数据总量(视频/文章)
       
{:mac_data_count(1,'today')}获取分类ID=1下的今日更新量
       

十三、分页标签

分页标签用于列表页实现内容分页显示,通过 paging="yes" 参数启用。

{maccms:vod num="20" paging="yes" type="current"}
    <!-- 循环输出视频列表,$vo 代表每条数据 -->
    <div class="vod-list-item">{$vo.vod_name}</div>
{/maccms:vod}

<!-- 分页导航栏 -->
{include file="public/pagination"}

十四、条件判断标签({if})

苹果 CMS 支持 {if} 条件判断标签,语法与 PHP 类似。

{if $obj.vod_hits > 1000}
    <span class="hot-label">热门</span>
{elseif $obj.vod_hits > 500}
    <span class="warm-label">较热</span>
{else}
    <span class="new-label">普通</span>
{/if}

十五、最佳实践建议

  • 图片地址统一处理:所有图片地址都使用 mac_url_img 函数处理,确保地址统一性和可维护性[reference:47]。
  • 引入必备 JS:模板开发中应引入系统自带的 home.js,封装了历史记录、顶踩收藏、访问量统计、评论等常用功能[reference:48]。
  • 合理使用缓存:通过 cachetime 参数设置自定义缓存时间,提升网站访问速度[reference:49]。
  • 注意数据排序:使用二分搜索时确保数据已正确排序,否则可能导致错误结果。
  • 遵循模板结构:严格遵守标准的目录结构进行模板创建,避免前端访问异常[reference:50]。
  • 避免过深嵌套:多级列表一般不超过3-4级,否则影响阅读。

十六、总结

  • 苹果 CMS 基于 PHP+MySQL 环境运行,采用 TP5.x 作为核心框架[reference:51]。
  • 支持视频、文章、专题、明星、角色、网址导航等八大模块[reference:52]。
  • 模板标签完全支持 TP5 语法,使用 {} 包裹变量[reference:53]。
  • 列表标签由起始和结束标签组成,内部变量以 $vo. 开头[reference:54]。
  • 提供丰富的数据统计函数和处理函数,大幅简化开发流程[reference:55]。
  • 分页、条件判断等标签满足复杂模板需求。
  • 建议开发者从视频模块标签开始学习,逐步掌握其他模块的标签用法。

❤️收藏 👍点赞

用户评论

发表评论

您还未登录,无法发表评论!
快来留下你的足迹吧~