Halo博客主题开发之页面变量调用示范整理
2023-04-18 16:08:53 时间
今天老蒋再分享一篇Halo轻量博客相关的文章,也是关于主题开发的。一般我们在使用WP或者ZBP博客程序的时候开发主题,是不是有需要页面调用变量的。同样在Halo博客主题的时候也是如此。在前面,我们也有介绍到"Halo博客主题开发之全局变量模板标签调用整理"。这里我们将页面的变量调用实际以实际的案例使用整理。
1、首页(index.ftl)
遍历输出首页的文章:
<#list posts.content as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
输出:
<a href="http://localhost:8090/archives/url1">title1</a>
<a href="http://localhost:8090/archives/url2">title2</a>
<a href="http://localhost:8090/archives/url3">title3</a>
2、文章页面(post.ftl)
获取文章标题:
<span>${post.title!}</span>
输出:
<span>示例文章</span>
获取上一篇文章的信息:
<#if prevPost??>
<a href="${prevPost.fullPath!}">上一篇:${prevPost.title!}</a>
</#if>
输出:
<a href="http://localhost:8090/archives/url1">上一篇:title1</a>
获取下一篇文章的信息:
<#if nextPost??>
<a href="${nextPost.fullPath!}">上一篇:${nextPost.title!}</a>
</#if>
输出:
<a href="http://localhost:8090/archives/url3">上一篇:title3</a>
获取文章的分类列表:
<#list categories as category>
<a href="${category.fullPath!}">${category.name!}</a>
</#list>
输出:
<a href="http://localhost:8090/categories/url1">name1</a>
<a href="http://localhost:8090/categories/url2">name2</a>
获取文章的标签列表:
<#list tags as tag>
<a href="${tag.fullPath!}">${tag.name!}</a>
</#list>
输出:
<a href="http://localhost:8090/tags/url1">name1</a>
<a href="http://localhost:8090/tags/url2">name2</a>
获取用户设置的音乐链接:
<audio src="${metas.music_url}" controls="controls"></audio>
输出:
<audio src="/music.mp3" controls="controls"></audio>
3、自定义页面(sheet.ftl)
获取页面标题:
<span>${sheet.title!}</span>
输出:
<span>示例页面</span>
获取用户设置的音乐链接:
<audio src="${metas.music_url}" controls="controls"></audio>
输出:
<audio src="/music.mp3" controls="controls"></audio>
4、文章归档页面(archives.ftl)
遍历输出归档页面的文章(无年份分组):
<#list posts.content as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
输出:
<a href="http://localhost:8090/archives/url1">title1</a>
<a href="http://localhost:8090/archives/url2">title2</a>
<a href="http://localhost:8090/archives/url3">title3</a>
遍历输出归档页面的文章(有年份分组):
<#list archives.content as archive>
<h1>${archive.year?c}</h1>
<#list archive.posts as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
</#list>
输出:
<h1>2021</h1>
<a href="http://localhost:8090/archives/url1">title1</a>
<a href="http://localhost:8090/archives/url2">title2</a>
<a href="http://localhost:8090/archives/url3">title3</a>
<h1>2020</h1>
<a href="http://localhost:8090/archives/url4">title4</a>
<a href="http://localhost:8090/archives/url5">title5</a>
<a href="http://localhost:8090/archives/url6">title6</a>
4、单个分类所属文章页面(category.ftl)
遍历输出某个分类的文章:
<#list posts.content as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
输出:
<a href="http://localhost:8090/archives/url1">title1</a>
<a href="http://localhost:8090/archives/url2">title2</a>
<a href="http://localhost:8090/archives/url3">title3</a>
分类:
<a href="${category.fullPath!}">分类:${category.name!}</a>
5、标签页面(tags.ftl)
单个标签所属文章页面(tag.ftl)
遍历输出某个标签的文章:
<#list posts.content as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
标签:
<a href="${tag.fullPath!}">标签:${tag.name!}</a>
6、文章搜索结果页面(search.ftl)
搜索关键字为:${keyword!}
遍历输出某个搜索结果的文章:
<#list posts.content as post>
<a href="${post.fullPath!}">${post.title!}</a>
</#list>
7、图库页面(photos.ftl)
<#list photos.content as photo>
<img alt="${photo.description!}" src="${photo.url!}"/>
</#list>
8、日志页面(journals.ftl)
<ul>
<#list journals.content as journal>
<li>
${journal.createTime?string('yyyy年MM月dd日')}:${journal.content!}
</li>
</#list>
</ul>
这里只是针对页面变量的。具体到页面的标签还有单独的整理,这个后面老蒋再单独整理。
本文出处:老蒋部落 » Halo博客主题开发之页面变量调用示范整理
相关文章
- 【技术种草】cdn+轻量服务器+hugo=让博客“云原生”一下
- CLB运维&运营最佳实践 ---访问日志大洞察
- vnc方式登陆服务器
- 轻松学排序算法:眼睛直观感受几种常用排序算法
- 十二个经典的大数据项目
- 为什么使用 CDN 内容分发网络?
- 大数据——大数据默认端口号列表
- Weld 1.1.5.Final,JSR-299 的框架
- JavaFX 2012:彻底开源
- 提升as3程序性能的十大要点
- 通过凸面几何学进行独立于边际的在线多类学习
- 利用行动影响的规律性和部分已知的模型进行离线强化学习
- ModelLight:基于模型的交通信号控制的元强化学习
- 浅谈Visual Source Safe项目分支
- 基于先验知识的递归卡尔曼滤波的代理人联合状态和输入估计
- 结合网络结构和非线性恢复来提高声誉评估的性能
- 最佳实践丨云开发CloudBase多环境管理实践
- TimeVAE:用于生成多变量时间序列的变异自动编码器
- 具有线性阈值激活的神经网络:结构和算法
- 内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击