37个常用Halo Java轻量博客页面模板标签调用(快速调用页面数据)

由 ssr 发布

这篇文章应该算是Halo Java轻量博客程序的最后一篇主题开发的最后篇文章。在前面老蒋有整理到Halo页面调用、公共模板、全局变量的调用。这里我们是不是有需要页面模板标签的调用,比如最新文章、菜单、图片组的调用,这篇文章是比较全的37个Halo页面模板标签调用整理。

模板标签可以运用在页面的任何地方。
第一、文章(postTag)
1、获取最新文章(latest)

<@postTag method="latest" top="3">
    <#list posts as post>
        

3、根据年份归档(archiveYear)

<@postTag method="archiveYear">
  <#list archives as archive>
      <h1>年份: ${archive.year?c}</h1>      

</@commentTag>
</pre>
2、获取所有评论的数量(count)

<@commentTag method="count">
<span>评论数量:${count!0}</span>
</@commentTag>

第三、分类目录(categoryTag)
1、获取所有分类目录(list)

<@categoryTag method="list">
  <#list categories as category>
    

第四、标签(tagTag)
1、获取所有标签(list)

<@tagTag method="list">
  <#list tags as tag>
    

第五、菜单(menuTag)
1、获取所有菜单(list)

<@menuTag method="list">  

</@menuTag>
</pre>
2、获取多级菜单(tree)

<@menuTag method="tree">  
    <#list menus as menu>
  • ${menu.name!} <#if menu.children?? && menu.children?size gt 0>
        </#if>
      </li>
    </#list>

    </@menuTag>
    </pre>
    3、根据分组获取菜单(listByTeam)

    <@menuTag method="listByTeam" team="main">  

    </@menuTag>
    </pre>
    4、根据分组获取多级菜单(treeByTeam)

    <@menuTag method="treeByTeam" team="main">  
      <#list menus as menu>
    • ${menu.name!} <#if menu.children?? && menu.children?size gt 0>
          </#if>
        </li>
      </#list>

      </@menuTag>
      </pre>
      第六、友情链接(linkTag)
      1、获取所有友情链接(list)

      <ul>
        <@linkTag method="list">
          <#list links as link>
              <li>
                  
                      ${link.name!}
                  
              </li>
          </#list>
        </@linkTag>
      </ul>
      

      2、乱序获取所有友情链接(listByRandom)

      <ul>
        <@linkTag method="list">
          <#list links as link>
              <li>
                  
                      ${link.name!}
                  
              </li>
          </#list>
        </@linkTag>
      </ul>
      

      3、获取分组友情链接(listTeams)

      <@linkTag method="listTeams">
        <#list teams as team>
          <h1>${team.team}</h1>    

      </#list>
      </@linkTag>
      </pre>
      4、乱序获取分组友情链接(listTeamsByRandom)

      <@linkTag method="listTeamsByRandom">
        <#list teams as team>
          <h1>${team.team}</h1>    

      </#list>
      </@linkTag>
      </pre>
      5、获取所有友情链接的数量(count)

      <@linkTag method="count">
      <span>友情链接数量:${count!0}</span>
      </@linkTag>
      

      第七、图库(photoTag)
      1、获取所有图片(list)

      <@photoTag method="list">
          <#list photos as photo>
              ${photo.description}" src="${photo.url}
          </#list>
      </@photoTag>
      

      2、获取所有分组图片(listTeams)

      <@photoTag method="listTeams">
          <#list teams as team>
              <h1>${team.team}</h1>
          <#list team.photos as photo>
              ${photo.description}" src="${photo.url}
          </#list>
          </#list>
      </@photoTag>
      

      3、根据分组获取图片(listByTeam)

      <@photoTag method="listTeams" team="风景">
        <#list team.photos as photo>
          ${photo.description}" src="${photo.url}
        </#list>
      </@photoTag>
      

      4、获取所有图片的数量(count)

      <@linkTag method="count">
      <span>图片数量:${count!0}</span>
      </@linkTag>
      

      第八、分页(paginationTag)
      1、获取首页文章列表的分页数据(index)

      <ul class="pagination">
          <@paginationTag method="index" page="${posts.number}" total="${posts.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      2、获取文章归档列表的分页数据(archives)

      <ul class="pagination">
          <@paginationTag method="archives" page="${posts.number}" total="${posts.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      3、获取搜索结果文章列表的分页数据(search)

      <ul class="pagination">
          <@paginationTag method="search" page="${posts.number}" total="${posts.totalPages}" keyword="${keyword}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      4、获取标签下文章列表的分页数据(tagPosts)

      <ul class="pagination">
          <@paginationTag method="tagPosts" slug="${tag.slug!}" page="${posts.number}" total="${posts.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      5、获取分类下文章列表的分页数据(categoryPosts)

      <ul class="pagination">
          <@paginationTag method="categoryPosts" slug="${category.slug!}" page="${posts.number}" total="${posts.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      6、获取图库页面图片列表的分页数据(photos)

      <ul class="pagination">
          <@paginationTag method="photos" page="${photos.number}" total="${photos.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      7、获取日志页面日志列表的分页数据(journals)

      <ul class="pagination">
          <@paginationTag method="journals" page="${journals.number}" total="${journals.totalPages}" display="3">
              <#if pagination.hasPrev>
                  <li>
                      上一页
                  </li>
              </#if>
              <#list pagination.rainbowPages as number>
                  <#if number.isCurrent>
                      <li>
                          <span class="current">${number.page!}</span>
                      </li>
                  <#else>
                      <li>
                          下一页
                  </li>
              </#if>
          </@paginationTag>
      </ul>
      

      这样,我们联合其他的Halo主题开发的页面调用标签、公共模板、函数等,基本上可以完成Halo主题开发需要的调用。
      相关文章:
      1、Halo博客主题开发之页面变量调用示范整理
      2、Halo博客主题模板开发之公共宏模板代码规范
      3、Halo博客主题开发之全局变量模板标签调用整理
       


您的大名:
万水千山总是情,给个打赏行不行。 打赏

暂无评论

发表评论