本文运用了苹果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. 解密数据可视化软件、BI软件和数字孪生软件的不同

    在现代企业和科技领域,数据起着至关重要的作用.为了更好地管理和理解数据,不同类型的软件工具应运而生,其中包括数据可视化软件.BI(Business Intelligence)软件和数字孪生软件.虽然它 ...

  2. Java 并发编程(二 )Thread

    线程状态 线程一般的状态转换图如下: 在线程生命周期中存在的状态解释如下: New(初始化)状态 此时线程刚刚被实例化,可以通过调用 start() 方法来启动这个实例化的的线程,使其状态转变成为 R ...

  3. Vue源码学习(十九):router基本原理

    好家伙,   0.什么是路由? 路由就是匹配到对应路径显示对应的组件! 那么我们要如何去实现? 我们来回忆一下这router怎么用的 1. 声明式路由配置:在路由配置对象中,定义路径与组件的映射关系. ...

  4. 【pandas小技巧】--目录(完结)

    pandas小技巧系列是介绍的是使用pandas分析数据时,最常用的一些操作技巧. 具体包括: 创建测试数据 学习pandas的过程中,为了尝试pandas提供的各类功能强大的函数,常常需要花费很多时 ...

  5. 打通Rasa Action Server和LLM接口的尝试方法

      本文使用最简单的方法对打通 Rasa Action Server 和 LLM 接口进行了尝试,即当 Rasa 对话 intent 为 out_of_scope 时,调用 action_gpt_fa ...

  6. 光大银行刘淼:基于华为云GaussDB(DWS) 数据仓库创新实践

    摘要:面向未来数据平台3.0要做架构减法,平台由N->1,华为云GaussDB(DWS)未来作为数据仓库唯一平台,数据链路实现从数据湖直接到华为云GaussDB(DWS)数据仓库. 日前,华为举 ...

  7. 数据库技术丨GaussDB(DWS)数据同步状态查看方法

    摘要:针对数据同步状态查看方法,GaussDB(DWS)提供了丰富的系统函数.视图.工具等可以直观地对同步进度进行跟踪,尤其是为方便定位人员使用,gs_ctl工具已集合了大部分相关系统函数的调用,可做 ...

  8. 从缓存的本质说起,说服技术大佬用Redis

    摘要:在技术领域中,没有银弹.我们需要不断探索和研究新的技术,结合具体问题和需求,选择最适合的解决方案. 本文分享自华为云社区<知乎问题:如何说服技术老大用 Redis ?>,作者:勇哥j ...

  9. 云图说|数据仓库服务 GaussDB(DWS) 的“千里眼、顺风耳”—数据库智能运维

    摘要:数据库智能运维(DMS)是GaussDB(DWS) 为客户数据库快速.稳定运行提供保驾护航的能力,对业务数据库所使用磁盘.网络.OS指标数据,集群运行关键性能指标进行收集.监控.分析.通过综合收 ...

  10. CWE 视图层级关系解析:节点关系查询

    本文分享自华为云社区<CWE视图层级关系的解析 之 CWE节点关系的查询>,作者: Uncle_Tom. 1. CWE 转换成 SQLite 表 依据<CWE视图层级关系的解析 之 ...