自定义标签
自定义标签可以在页面的任意地方调用。
postTag(文章)
获取最新文章
入参
参数 | 值 | 说明 |
---|
method | latest | 无 |
top | 需要获取的条数,如:10 | 无 |
返回参数
参数 | 类型 | 说明 |
---|
posts | List<Post> | 详细字段参考 Post |
语法格式
<@postTag method="latest" top="条数">
// 返回参数:posts
</@postTag>
实例
<@postTag method="latest" top="3">
<#list posts as post>
<a href="${context}/archives/${post.url!}">${post.title!}</a>
</#list>
</@postTag>
// 输出
<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>
获取所有文章条数
入参
返回参数
语法格式
<@postTag method="count">
// 返回参数:count
</@postTag>
实例
<@postTag method="count">
文章数量:${count!0}
</@postTag>
// 输出
文章数量:20
根据年份归档
入参
返回参数
参数 | 类型 | 说明 |
---|
archives | List<ArchiveYearVO> | 无 |
语法格式
<@postTag method="archiveYear">
// 返回参数:archives
</@postTag>
实例
<@postTag method="archiveYear">
<#list archives as archive>
<h1>年份: ${archive.year?c}</h1>
<ul>
<#list archive.posts?sort_by("createTime")?reverse as post>
<li>
<a href="${context!}/archives/${post.url!}">${post.title!}</a>
</li>
</#list>
</ul>
</#list>
</@postTag>
// 输出
<h1>2019</h1>
<ul>
<li>
<a href="http://localhost:8090/archives/url1">title1</a>
</li>
<li>
<a href="http://localhost:8090/archives/url2">title2</a>
</li>
</ul>
<h1>2018</h1>
<ul>
<li>
<a href="http://localhost:8090/archives/url3">title3</a>
</li>
<li>
<a href="http://localhost:8090/archives/url4">title4</a>
</li>
</ul>
根据年月归档
入参
返回参数
参数 | 类型 | 说明 |
---|
archives | List<ArchiveMonthVO> | 无 |
语法格式
<@postTag method="archiveMonth">
// 返回参数:archives
</@postTag>
实例
<@postTag method="archiveYear">
<#list archives as archive>
<h1>${archive.year?c}-${archive.month?c}</h1>
<ul>
<#list archive.posts?sort_by("createTime")?reverse as post>
<li>
<a href="${context!}/archives/${post.url!}">${post.title!}</a>
</li>
</#list>
</ul>
</#list>
</@postTag>
// 输出
<h1>2019-01</h1>
<ul>
<li>
<a href="http://localhost:8090/archives/url1">title1</a>
</li>
<li>
<a href="http://localhost:8090/archives/url2">title2</a>
</li>
</ul>
<h1>2018-12</h1>
<ul>
<li>
<a href="http://localhost:8090/archives/url3">title3</a>
</li>
<li>
<a href="http://localhost:8090/archives/url3">title4</a>
</li>
</ul>
根据分类 id 查询文章
入参
参数 | 值 | 说明 |
---|
method | listByCategoryId | 无 |
categoryId | 分类 id | 无 |
返回参数
语法格式
<@postTag method="listByCategoryId" categoryId="分类 id">
// 返回参数:posts
</@postTag>
根据标签 id 查询文章
入参
参数 | 值 | 说明 |
---|
method | listByTagId | 无 |
tagId | 标签 id | 无 |
返回参数
语法格式
<@postTag method="listByTagId" tagId="标签 id">
// 返回参数:posts
</@postTag>
commentTag(评论)
获取最新评论
入参
参数 | 值 | 说明 |
---|
method | latest | 无 |
top | 想要获取的条数,如:10 | 无 |
返回参数
参数 | 类型 | 说明 |
---|
comments | Page<Comment> | 无 |
语法格式
<@commentTag method="latest" top="条数">
// 返回参数:comments
</@commentTag>
实例
<@commentTag method="latest" top="3">
<#list comments.content as comment>
${comment.author!}:${comment.content!}
</#list>
</@commentTag>
// 输出
Author1:写的不错
Author2:真的真好
Author3:继续加油
获取所有评论条数
入参
返回参数
语法格式
<@commentTag method="count">
// 返回参数:count
</@commentTag>
实例
<@commentTag method="count">
评论数量:${count!0}
</@commentTag>
// 输出
评论数量:20
menuTag(菜单)
获取所有菜单
入参
返回参数
参数 | 类型 | 说明 |
---|
menus | List<Menu> | 详细字段参考 Menu |
语法格式
<@menuTag method="list">
// 返回参数:menus
</@menuTag>
实例
<@menuTag method="list">
<ul>
<#list menus as menu>
<li>
<a href="${menu.url!}">${menu.name!}</a>
</li>
</#list>
</ul>
</@menuTag>
// 输出
<ul>
<li>
<a href="/">首页</a>
</li>
<li>
<a href="/archives">归档</a>
</li>
</ul>
获取多级菜单列表
入参
返回参数
语法格式
<@menuTag method="tree">
// 返回参数:menus
</@menuTag>
实例
<@menuTag method="tree">
<ul>
<#list menus as menu>
<li>
<a href="${menu.url!}">${menu.name!}</a>
<#if menu.children?? && menu.children?size gt 0>
<ul>
<#list menu.children as child>
<li>
<a href="${child.url!}">${child.name!}</a>
</li>
</#list>
</ul>
</#if>
</li>
</#list>
</ul>
</@menuTag>
// 输出
<ul>
<li>
<a href="/">首页</a>
</li>
<li>
<a href="/archives">归档</a>
<ul>
<li>
<a href="/categories/study">学习笔记</a>
</li>
<li>
<a href="/categories/java">Java</a>
</li>
</ul>
</li>
</ul>
categoryTag(分类)
获取所有分类
入参
返回参数
参数 | 类型 | 说明 |
---|
categories | List<CategoryWithPostCountDTO> | 无 |
语法格式
<@categoryTag method="list">
// 返回参数:categories
</@categoryTag>
实例
<@categoryTag method="list">
<#list categories as category>
<a href="${context!}/categories/${category.slugName!}">${category.name}</a>
</#list>
</@categoryTag>
// 输出
<a href="http://localhost:8090/categories/url1">name1</a>
<a href="http://localhost:8090/categories/url2">name2</a>
根据文章 id 获取分类
入参
参数 | 值 | 说明 |
---|
method | list | 无 |
postId | 文章 id,如:10 | 文章 id |
返回参数
参数 | 类型 | 说明 |
---|
categories | List<Category> | 详细字段参考 Category |
语法格式
<@categoryTag method="listByPostId" postId="文章 id">
// 返回参数:categories
</@categoryTag>
实例
<@categoryTag method="listByPostId" postId="1">
<#list categories as category>
<a href="${context!}/categories/${category.slugName!}">${category.name}</a>
</#list>
</@categoryTag>
// 输出
<a href="http://localhost:8090/categories/url1">name1</a>
<a href="http://localhost:8090/categories/url2">name2</a>
获取所有分类条数
入参
返回参数
语法格式
<@categoryTag method="count">
// 返回参数:count
</@categoryTag>
实例
<@categoryTag method="count">
分类数量:${count!0}
</@categoryTag>
// 输出
分类数量:20
tagTag(标签)
获取所有标签
<@tagTag method="list">
// 返回参数:tags
</@tagTag>
实例
<@tagTag method="list">
<#list tags as tag>
<a href="${context!}/tags/${tag.slugName!}">${tag.name}</a>
</#list>
</@tagTag>
// 输出
<a href="http://localhost:8090/tags/url1">name1</a>
<a href="http://localhost:8090/tags/url2">name2</a>
根据文章 id 获取标签
<@tagTag method="listByPostId" postId="文章 id">
// 返回参数:tags
</@tagTag>
实例
<@tagTag method="listByPostId" postId="1">
<#list tags as tag>
<a href="${context!}/tags/${tag.slugName!}">${tag.name}</a>
</#list>
</@tagTag>
// 输出
<a href="http://localhost:8090/tags/url1">name1</a>
<a href="http://localhost:8090/tags/url2">name2</a>
获取所有标签条数
<@tagTag method="count">
// 返回参数:count
</@tagTag>
实例
<@tagTag method="count">
标签数量:${count!0}
</@tagTag>
// 输出
标签数量:20
photoTag(图库)
获取所有图片
<@photoTag method="list">
// 返回参数:photos
</@photoTag>
实例
<@photoTag method="list">
<#list photos as photo>
<img href="${photo.url}" />
</#list>
</@photoTag>
// 输出
<img href="http://localhost:8090/upload/2019/1/1.png" />
<img href="http://localhost:8090/upload/2019/1/2.png" />
获取图片组
<@photoTag method="listTeams">
// 返回参数:teams
</@photoTag>
实例
<@photoTag method="listTeams">
<#list teams as item>
<h1>${item.team}</h1>
<#list item.photos as photo>
<img href="${photo.url}" />
</#list>
</#list>
</@photoTag>
// 输出
<h1>风景</h1>
<img href="http://localhost:8090/upload/2019/1/1.png" />
<img href="http://localhost:8090/upload/2019/1/2.png" />
<h1>旅游</h1>
<img href="http://localhost:8090/upload/2019/1/3.png" />
<img href="http://localhost:8090/upload/2019/1/4.png" />
根据分组获取图片
<@photoTag method="listByTeam" team="分组名称">
// 返回参数:photos
</@photoTag>
实例
<@photoTag method="listByTeam" team="风景">
<#list photos as photo>
<img href="${photo.url}" />
</#list>
</@photoTag>
// 输出
<img href="http://localhost:8090/upload/2019/1/1.png" />
<img href="http://localhost:8090/upload/2019/1/2.png" />
获取所有图片条数
<@photoTag method="count">
// 返回参数:count
</@photoTag>
实例
<@photoTag method="count">
图片数量:${count!0}
</@photoTag>
// 输出
图片数量:20
linkTag(友情链接)
获取所有友情链接
<@linkTag method="list">
// 返回参数:links
</@linkTag>
实例
<@linkTag method="list">
<#list links as link>
<a href="${link.url!}">${link.name!}</a>
</#list>
</@linkTag>
// 输出
<a href="url1">name1</a>
<a href="url1">name2</a>
获取友情链接组
<@linkTag method="listTeams">
// 返回参数:teams
</@linkTag>
实例
<@linkTag method="listTeams">
<#list teams as item>
<h1>${item.team}</h1>
<#list item.links as link>
<a href="${link.url!}">${link.name!}</a>
</#list>
</#list>
</@linkTag>
// 输出
<h1>好友</h1>
<a href="url1">name1</a>
<a href="url1">name2</a>
<h1>网友</h1>
<a href="url3">name3</a>
<a href="url4">name4</a>
获取所有友情链接条数
<@linkTag method="count">
// 返回参数:count
</@linkTag>
实例
<@linkTag method="count">
友情链接数量:${count!0}
</@linkTag>
// 输出
友情链接数量:20