Halo博客主题模板开发之公共宏模板代码规范
2023-04-18 16:08:54 时间
我们在开发Halo轻量博客主题的时候,还需要了解他们内部的封装模板。在这里,老蒋整理来自Halo官方的公共宏模板代码规范。我们将某些常见的全局变量封装成了一个公共模板,我们只需要引入该模板,然后调用其中的宏模板即可。
1、公共 head 模板
需要注意的是,为了保证系统功能的完整性,我们强制要求在每个页面的 <head> 标签下必须包含此模板。
<@global.head />
这个就等同于:
<#if options.seo_spider_disabled!false>
<meta name="robots" content="none">
</#if>
<meta name="generator" content="Halo ${version!}"/>
<@global.favicon />
<@global.custom_head />
<@global.custom_content_head />
2、公共底部
需要注意的是,为了保证系统功能的完整性,我们强制要求在每个页面的尾部必须包含此模板。
<@global.footer />
等同于:
<@global.statistics />
<@global.footer_info />
3、 相对时间
<@global.timeline datetime="时间" />
// 输出
x 年前/x 个月前/x 天前/昨天/x 小时前/x 分钟前/x 秒前/刚刚
4、 评论模块
<@global.comment target= type="" />
等同于:
<#if !post.disallowComment!false>
<script src="//cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.min.js"></script>
<script src="${options.comment_internal_plugin_js!'//cdn.jsdelivr.net/npm/halo-comment@latest/dist/halo-comment.min.js'"></script>
<halo-comment id="${post.id}" type="${type}"/>
</#if>
参数说明:
target:post / sheet / journal 对象
type:评论类型,可为:post / sheet / journal
例子:
在文章页面(post.ftl or post_xxx.ftl):
<@global.comment target=post type="post" />
在自定义页面(sheet.ftl or post_sheet.ftl):
<@global.comment target=sheet type="sheet" />
在日志页面(journals.ftl):
<@global.comment target=journal type="journal" />
这样,我们在开发Halo主题的时候就可以直接调用公共模板,不要这么复杂的代码。
参考来自Halo官方文档。
本文出处:老蒋部落 » Halo博客主题模板开发之公共宏模板代码规范
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击