如何开发一套苹果cms前端模板
本文运用了苹果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前端模板的更多相关文章
- ASP.NET Core 2.1以上 Bootstrap 4前端模板文件,开发环境与发布环境前端模板 environment的使用
笔者的前端文件如下 笔者增加Bootstrap 4 和 FontAwersome(字体图标),因为Bootsrap 4已经不再包含图标了. ASp.Net Core 中,通常在 _Layout.csh ...
- 苹果cms模板文件不存在:public/jump.html
1,模板文件不存在很显然就是模板缺少文件导致,缺少什么文件一般都会提示.(如上图)点击首页的时,有的能进入播放页 有的提示(上图) 模版文件不存在:public/jump.html 通过查询苹果cm ...
- 苹果cms v10官网下载
苹果CMS程序是一套采用PHP+MYSQL环境下运行的完善而强大的快速建站系统.经过近多年的开发经验和技术积累,苹果CMS程序已逐步走向成熟,在易用性和功能上已经成为同行中的佼佼者.程序体积小-> ...
- Java快速开发平台,JEECG 3.7.7闪电版本发布,增加多套主流UI代码生成器模板
JEECG 3.7.7 闪电版本发布,提供5套主流UI代码生成器模板 导读 ⊙平台性能优化,速度闪电般提升 ⊙提供5套新的主流UI代码生成器模板(Bootstrap表单+Boots ...
- 微服务项目开发学成在线_day02 CMS前端开发
1 Vue.js与Webpack研究 开发版的浏览器:https://www.google.cn/intl/zh-CN/chrome/dev/ 前端的开发框架:微服务项目开发学成在线_Vue.js与W ...
- 要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放
要web开发精品教程吗?免费无广告一百期连讲的那种-逐浪CMS前端开发100期入门教程全面开放 大师主讲 经验难得 由逐浪CMS首席架构师发哥老师,亲自主理讲解. 历时一年精心打造, 汇聚了互联网诞生 ...
- 基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境
基于 Express+Gulp+BrowserSync 搭建一套高性能的前端开发环境 Express 是比较经典的,也是最常用的 Nodejs Web框架. 一.Express 快速构建一个web应用 ...
- 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_16-CMS前端工程创建-导入系统管理前端工程
提供了基于脚手架封装好的前端工程 H:\BaiDu\黑马传智JavaEE57期 2019最新基础+就业+在职加薪\阶段5 3.微服务项目[学成在线]·\day02 CMS前端开发\资料\xc-ui-p ...
- 苹果cms开启防红跳转后,提示模板文件不存在解决方法
1,苹果cms开启防红跳转后,提示模板文件不存在(如下图)这是因为你使用的模板里面缺少苹果cms自带的防红跳转模板导致,遇到这种状况后需要把苹果cms默认自带的( template/default_p ...
- 后端渲染html、前端模板渲染html,jquery的html
作者:赵魏璇链接:https://www.zhihu.com/question/28725977/answer/116177149来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
随机推荐
- 华企盾DSC可能造成系统蓝屏奔溃常见处理方法
1.蓝屏先卸载我们DSC客户端检测是否是我们影响的 2.如果是我们影响的查到版本说明是否有处理过 3.是否有一些不常用的杀毒软件卸载试试 4.如果使用一些USB驱动类的先把USB的注册表改一下试试 5 ...
- 断言可Cookie管理器
断言可以判断预期结果和实际结果是否一致 可以辅助判断脚本的运行结果是否正确 cookie管理器 记录用户的cookie信息 可以自动记录cookie,也可以使用用户自定义的cookie
- K8s和声明式编程
转载:原文链接 认识k8s之后,他的操作模式对我来说是一种很不错的体验.他提供了更接近现实世界的面向对象接口. 什么是k8s? Kubernetes(K8s)是一种开源容器编排平台,用于自动化部署.扩 ...
- JavaFx之播放MP4(二十七)
JavaFx之播放MP4(二十七) JavaFX 视频和音频支持,由 JavaFX 媒体类 Media.MediaPlayer.MediaView 和 AudioClip 提供. import jav ...
- 聊一聊如何整合Microsoft.Extensions.DependencyInjection和Castle.Core(完结篇)
前言 书接上回,上回我们了解了 castle 代理的一些缺点,本文将开始操作整合 Microsoft.Extension.Dependency和Castle,以让默认的容器可以支持拦截器 我们将以进阶 ...
- nacos-config配置中心
依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-clou ...
- LeetCode DFS、BFS篇(102、200、111、752)
102. 二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值. (即逐层地,从左到右访问所有节点). 示例: 二叉树:[3,9,20,null,null,15,7], 3 / 9 ...
- 如何应对Spark-Redis行海量数据插入、查询作业时碰到的问题
摘要:由于redis是基于内存的数据库,稳定性并不是很高,尤其是standalone模式下的redis.于是工作中在使用Spark-Redis时也会碰到很多问题,尤其是执行海量数据插入与查询的场景中. ...
- 4种语义分割数据集Cityscapes上SOTA方法总结
摘要:当前语义分割方法面临3个挑战. 1 Cityscapes数据集介绍 Cityscapes评测数据集即城市景观数据集,在2015年由奔驰公司推动发布,是目前公认的机器视觉领域内最具权威性和专业性的 ...
- 【伙伴故事】智慧厨电接入华为云+HarmonyOS,你的未来厨房长这样
摘要:国内集成灶的头部企业-火星人,正是通过华为云IoT接入HarmonyOS生态,打造云端智慧厨房的整体解决方案,为我们描绘出一副未来厨房新趋势的蓝图. 本文分享自华为云社区<[伙伴故事]智慧 ...