本文运用了苹果cms官网的模板开发教程,开发了一套苹果cms的前端模板,感兴趣的同学可以去github下载使用。

什么是模板

模板是网站的主题外观,也被称为主题或皮肤。通过使用不同的模板,网站的前台可以以不同的样式展示。这就像人们的服装一样,人们打扮得漂亮会吸引人,同样地,一个好看的模板不仅能吸引用户的第一眼,还可以更加人性化地展示网站的功能给用户。所以选择一个合适的模板对于网站的吸引力和用户体验非常重要。

开发模板

想要书写一个主题,首先在template录创建一个 theme_tpl 目录作为我们自定义的模板目录,接着创建一个 html文件夹 用来存放所有的html文件

└─ template
└─ `theme_tpl`
├─ css
├─ js
└─ html

必备js

自带的 home.js已经做好了很多必备的功能,开发者直接引入既可以使用里面 MAC 对象封装的函数,例如:历史记录、顶踩收藏、访问量统计,评论等等功能,俗称苹果cms模板必备三段。

<script src="{$maccms.path}static/js/jquery.js"></script>
<script>var maccms={"path":"__ROOT__","mid":"{$maccms['mid']}","url":"{$maccms['site_url']}","wapurl":"{$maccms['site_wapurl']}","mob_status":"{$maccms['mob_status']}"};
</script>
<script src="{$maccms.path}static/js/home.js"></script>

使用标签

苹果CMSv10标签完全支持tp5的语法,在HTML中使用{}包裹起来的php变量,如 {$maccms['site_name']}数组的形式支持用.来代替如:{$maccms.site_name}。列表标签有起始标签和结束标签组成。如 {maccms:vod type="all" num="10"}{/maccms:vod},内部变量都是数据库字段组成,以 $vo.开头如:{$vo.vod_name}、{$vo.vod_id} 等等。

使用函数

我们往往需要对模板输出变量使用函数,可以使用:

{$data.name|md5}

编译后的结果是:

<?php echo (md5($data['name'])); ?>

TIP 变量输出使用的函数可以支持内置的PHP函数或者用户自定义函数,甚至是静态方法。

常用处理函数

  • 允许使用多个函数,都使用|分隔开

  • 所有图片地址,不管是远程的本地的都建议使用 mac_url_img 来处理。

  • {: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

  • {:mac_data_count(1,'today')} 获取某个分类下的今日更新数据总量,支持视频和文章,传入分类ID

  • 另外还支持topic,website,actor,role模块的获取数据数量

  • {:mac_url('map/index')} 获取站内链接,参数代表 模块/页面

  • {$obj.vod_content|mac_url_content_img} 如果使用了第三方附件存储,附件和图片默认url是mac:开头的,此方法将替换为- http

  • {$vo.vod_pic|mac_url_img} 自动转换图片地址

  • {$vo.vod_content|mac_substring=100}返回截取字符串100个字

  • {$vo.vod_content|mac_filter_html}返回没有html代码的内容

  • {$vo.actor|mac_url_create='actor','vod','search',' '} 把,号相连的一串字符生成N个搜索链接,后2个参数可以不填写默认是生成vod模块搜索链接。 例子是创建演员搜索链接。支持演员、导演、tag、扩展分类等字段。最后一个参数是生成链接的分隔符。

  • {$vo.vod_time|mac_day}自动返回日期

  • {$vo.vod_time|mac_friend_date}友好时间提醒 几秒前,几分前,几小时前,几天前。。。

  • {$vo.vod_year|mac_default='未知'}如果字符串为空,则返回默认字符串

  • {$user.user_login_ip|mac_long2ip}返回格式化ip地址

  • {$user.user_id|mac_get_user_portrait}获取用户头像

参考资料

苹果cms开发教程

猫猫赞影视

苹果cms源码

程序设计网

如何开发一套苹果cms前端模板的更多相关文章

  1. ASP.NET Core 2.1以上 Bootstrap 4前端模板文件,开发环境与发布环境前端模板 environment的使用

    笔者的前端文件如下 笔者增加Bootstrap 4 和 FontAwersome(字体图标),因为Bootsrap 4已经不再包含图标了. ASp.Net Core 中,通常在 _Layout.csh ...

  2. 苹果cms模板文件不存在:public/jump.html

    1,模板文件不存在很显然就是模板缺少文件导致,缺少什么文件一般都会提示.(如上图)点击首页的时,有的能进入播放页  有的提示(上图) 模版文件不存在:public/jump.html 通过查询苹果cm ...

  3. 苹果cms v10官网下载

    苹果CMS程序是一套采用PHP+MYSQL环境下运行的完善而强大的快速建站系统.经过近多年的开发经验和技术积累,苹果CMS程序已逐步走向成熟,在易用性和功能上已经成为同行中的佼佼者.程序体积小-> ...

  4. Java快速开发平台,JEECG 3.7.7闪电版本发布,增加多套主流UI代码生成器模板

    JEECG 3.7.7 闪电版本发布,提供5套主流UI代码生成器模板 导读 ⊙平台性能优化,速度闪电般提升           ⊙提供5套新的主流UI代码生成器模板(Bootstrap表单+Boots ...

  5. 微服务项目开发学成在线_day02 CMS前端开发

    1 Vue.js与Webpack研究 开发版的浏览器:https://www.google.cn/intl/zh-CN/chrome/dev/ 前端的开发框架:微服务项目开发学成在线_Vue.js与W ...

  6. 要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放

    要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放 大师主讲 经验难得 由逐浪CMS首席架构师发哥老师,亲自主理讲解. 历时一年精心打造, 汇聚了互联网诞生 ...

  7. 基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境

    基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境 Express 是比较经典的,也是最常用的 Nodejs Web框架. 一.Express 快速构建一个web应用 ...

  8. 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_16-CMS前端工程创建-导入系统管理前端工程

    提供了基于脚手架封装好的前端工程 H:\BaiDu\黑马传智JavaEE57期 2019最新基础+就业+在职加薪\阶段5 3.微服务项目[学成在线]·\day02 CMS前端开发\资料\xc-ui-p ...

  9. 苹果cms开启防红跳转后,提示模板文件不存在解决方法

    1,苹果cms开启防红跳转后,提示模板文件不存在(如下图)这是因为你使用的模板里面缺少苹果cms自带的防红跳转模板导致,遇到这种状况后需要把苹果cms默认自带的( template/default_p ...

  10. 后端渲染html、前端模板渲染html,jquery的html

    作者:赵魏璇链接:https://www.zhihu.com/question/28725977/answer/116177149来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

随机推荐

  1. 华企盾DSC苹果Mac针对Word编辑文件不加密

    解决方法:查看了客户端的控制台日志显示的进程名和加密后缀都正常,可能文件内部有rename的操作,加密所有类型解决 ​

  2. 华企盾DSC防泄密申请解密、外发等失败常见处理方法

    1.检查文件是否已经打开或被占用,以及文件的权限不是只读(错误代码32或5,这种情况比较常见) 2.系统用户名不能带特殊字符.老版本文件路径中不能含特殊字符(包括备份路径) 3.备份路径是否有读写权限 ...

  3. 华企盾DSC由于proevhost.exe进程未添加导致rhino的文件无法预览

    解决方法:用procmon监控文件目录,然后搜索readfile,查看除了explorer.dllhost.rentimebroker是否还有其它进程添加,查到proevhost进程也读取了文件添加加 ...

  4. jclasslib的安装

    双击安装包打开后点击下一步,然后选择安装的路径. 默认路径,如果c盘有空间不建议更改路径,然后再次点击下一步 依然选择下一步 最后点击完成即可完成安装.现在可以使用啦 注:如果需要安装包,请点击下面链 ...

  5. influxdb 进行数据删除和修改

    本文为博主原创,转载请注明出处: 1.条件删除数据 InfluxDB 只支持基于时间的删除操作. 可以使用 DELETE 语句来删除指定时间范围内的数据.例如,以下的 SQL 语句将删除 measur ...

  6. 珍藏网站-关于路由器、WIFI协议等

    路由器详解:为什么不要买AX3000路由器 https://zhuanlan.zhihu.com/p/403855533 包含以下专业名词和相关话题: RX/TX和MU-MIMO 20MHz/40MH ...

  7. Azure Data Factory(十一)Data Flow 的使用解析

    一,引言 上一篇文字,我们初步对 Data Flow 有个简单的了解,也就是说可以使用 Data Flow 完成一些复杂的逻辑,如,数据计算,数据筛选,数据清洗,数据整合等操作,那我们今天就结合 Da ...

  8. 2023-05-19:汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。 沿途有加油站,每个 station[i] 代表一个加油站, 它位于出发位置东面 station[i][

    2023-05-19:汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处. 沿途有加油站,每个 station[i] 代表一个加油站, 它位于出发位置东面 station[i][ ...

  9. Boost程序库完全开发指南:1-开发环境和构建工具

      Boost官方于2019年12月发布的1.72版编写,共包含160余个库/组件,涵盖字符串与文本处理.容器.迭代器.算法.图像处理.模板元编程.并发编程等多个领域,使用Boost,将大大增强C++ ...

  10. 云图说|交换数据空间Exchange Data Space

    本文分享自华为云社区<云图说|交换数据空间Exchange Data Space>,作者: 阅识风云. 阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅 ...