Halo自定义文章分类

在自定义站点的时候,往往需要再特定的页面展示个性的内容,为了满足这个特殊的要求,就需要文章自定义标签,然后挂载到自定义下面达到自己要的效果。

Halo版本
版本:2.12
在theme.yaml指定文章分类页
spec:
  customTemplates:
    category:
      - name: 新闻资讯
        description: 新闻资讯列表
        screenshot:
        file: category_news_information.html
在目录新建"templates/category_news_information.html"
<div th:with="tags = ${tagFinder.listAll()}">
    <div data-value="全部">
        <!-- /categories/xin-wen-zi-xun 是后台使用自定义模块配置的访问连接 -->
        <a href="/categories/xin-wen-zi-xun">全部</a>
    </div>
    <!-- 获取当前分类下面所有的标签_通过点击不同的标签来调整不同的页面 -->
    <div 
        th:classappend="(${tag} and ${tag.metadata.name == tagItem.metadata.name}) ? 'news_information_tab_bar_item_activate' : ''"
        th:each="tagItem : ${tags}"
        th:attr="data-value=${tagItem.spec.displayName}">
        <a 
            th:href="@{${tagItem.status.permalink}}"
            th:text="${tagItem.spec.displayName}"></a>
    </div>
</div>
后台配置
  • 找到文章点击分类
    image.png
  • 创建分类,使用自定义模板,跳转连接和html"全部"a标签href保持一致
    image.png
实现效果

image.png

category_news_information.html 遍历属于这个分类下的所有文章
 <div th:if="${posts.total gt 0}">
    <div>
        <div>
            <!--循环遍历-->
            <a 
                th:each="post : ${posts.items}"
                th:href="@{${post.status.permalink}}"
                >
                <!--封面-->
                <div>
                    <img th:src="${post.spec.cover}" alt=""/>
                </div>
                <div>
                    <!--文章标题-->
                    <div
                        th:text="${post.spec.title}"></div>
                    <div>
                        <!--自定义摘要-->
                        <span 
                            th:if="${!post.spec.excerpt.autoGenerate}"
                            th:text="${post.spec.excerpt.raw}"></span>
                    </div>
                    <div>
                        <div>
                            <span
                                th:each="tag : ${post.tags}"
                                th:title="${tag.spec.displayName}"
                                th:text="${tag.spec.displayName}"
                            ></span>
                        </div>
                        <div>
                            <span 
                            th:text="${#dates.format(post.spec.publishTime,'yyyy年MM月dd日 HH:ss')}">      
                            </span>
                        </div>
                    </div>
                </div>
            </a>
        </div>
    </div>
    <!--没有文章时-->
    <div th:if="${posts.total == 0}">
        此标签下没有文章
    </div>
    <!--分页-->
    <div th:if="${posts.hasPrevious() || posts.hasNext()}">
        <a
            th:href="@{${posts.prevUrl}}">
            上一页
        </a>
        <span th:text="|${posts.page} / ${posts.totalPages}|"</span>
        <a
            th:href="@{${posts.nextUrl}}">
            下一页
        </a>
    </div>
</div>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/554071.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springboot 载入自定义的yml文件转DTO

改进方法&#xff0c;直接spring注入 import cn.hutool.json.JSONUtil; import org.springframework.beans.factory.config.YamlMapFactoryBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import …

Pulsar【部署 01】消息队列PULSAR在Linux环境的主程序安装使用(小内存服务器问题处理)

官方网站&#xff1a;https://pulsar.apache.org/ 对于本地开发和测试&#xff0c;您可以在机器上以单机模式运行Pulsar。单机模式在单个Java虚拟机(JVM)进程中运行所有组件。本地单机版安装手册&#xff1a; 消息队列PULSAR在Linux环境的主程序安装使用 1.Prerequisites1.1 Pu…

万兆以太网MAC设计(4)CRC_process模块

文章目录 前言一、模块功能二、实现过程三、仿真总结 前言 上文介绍的MAC_RX模块当中增加了CRC校验和比对的功能&#xff0c;本文将根据CRC校验的结果&#xff0c;来决定将数据输出到上层用户还是丢弃。 一、模块功能 接收MAC_RX模块输出的AXIS数据&#xff0c;存入本地环形…

每日两题1

文章目录 使用最小花费爬楼梯91解码方法 使用最小花费爬楼梯 class Solution { public:int minCostClimbingStairs(vector<int>& cost) {if(cost.size() 2)return min(cost[0],cost[1]);vector<int> dp;dp.reserve(cost.size()1);dp[0] 0;dp[1] 0;for(int i…

Flink KafkaSink分区配置的不同版本对比

Flink KafkaSink分区配置的不同版本对比 在不同版本的Flink中&#xff0c;KafkaSink 分区默认配置方式可能会有一些变化。以下是摘自Flink官方文档不同版本的原文&#xff1a; 1. Flink版本&#xff1a;1.12~1.19 Sink 分区 # 配置项 sink.partitioner 指定了从 Flink 分区到 …

eBay、亚马逊自养号测评如何避免风控账号关联选择合适网络IP环境

在自养号下单中选择适合的网络环境至关重要。经过多次实践与测试&#xff0c;积累了大量的经验&#xff0c;希望能够与大家分享&#xff0c;帮助大家避开陷阱&#xff0c;顺利前行。 市面上的网络环境种类繁多&#xff0c;从纯IP类的Luminati、Rola&#xff0c;到纯环境类的VM…

Redis 的数据结构和内部编码

Redis的 5 种数据类型 Redis 底层在实现上述数据结构的时候&#xff0c;会在源码层面&#xff0c;针对上述实现进行 特定的优化 &#xff0c;来达到节省时间/节省空间效果 特定的优化&#xff1a;内部的具体实现的数据结构&#xff0c;在特定场景下&#xff0c;不是其对应的标准…

ros1 C++ 输出helloworld

1、创建工作空间并初始化 mkdir -p 自定义空间名称/src cd 自定义空间名称 catkin_make运行完&#xff0c;生成文件如下图&#xff1a; 2、进入 src 创建 ros 包并添加依赖 cd src catkin_create_pkg 自定义ROS包名 roscpp rospy std_msgs这里&#xff0c;我的自定义ROS包名…

VUE 页码分页封装

VUE 页码封装组件 pagination/index.vue &#xff1a; <template><div class"pagination-contianer"><el-pagination background layout"prev, pager, next" :total"total" current-change"currentChange"> </e…

SQL255 给出employees表中排名为奇数行的first_name

题目来源&#xff1a; 给出employees表中排名为奇数行的first_name_牛客题霸_牛客网 描述 对于employees表中&#xff0c;输出first_name排名(按first_name升序排序)为奇数的first_name CREATE TABLE employees ( emp_no int(11) NOT NULL, birth_date date NOT NULL, firs…

【服务器部署篇】Linux下Redis安装

作者介绍&#xff1a;本人笔名姑苏老陈&#xff0c;从事JAVA开发工作十多年了&#xff0c;带过刚毕业的实习生&#xff0c;也带过技术团队。最近有个朋友的表弟&#xff0c;马上要大学毕业了&#xff0c;想从事JAVA开发工作&#xff0c;但不知道从何处入手。于是&#xff0c;产…

基于SpringBoot的幼儿园管理系统 免费获取源码

项目源码获取方式放在文章末尾处 项目技术 数据库&#xff1a;Mysql5.7 数据表&#xff1a;16张 开发语言&#xff1a;Java(jdk1.8) 开发工具&#xff1a;idea 前端技术&#xff1a;html 后端技术&#xff1a;SpringBoot 功能简介 项目获取关键字&#xff1a;幼儿园 该…

《大话数据结构》03 线性表

1. 线性表的定义 线性表&#xff1a;零个或多个数据元素的有限序列。 这里需要强调几个关键的地方。 首先它是一个序列。也就是说&#xff0c;元素之间是有顺序的&#xff0c;若元素存在多个&#xff0c;则第一个元素无前驱&#xff0c;最后一个元素无后继&#xff0c;其他每…

基于云计算技术的HIS系统,一体化云HIS、云病历、云LIS系统源码,扩展后能够应用于医联体/医共体

医院信息管理系统云HIS系统源码&#xff0c;云计算技术的HIS系统源码 开发技术&#xff1a; 前端&#xff1a;AngularNginx&#xff1b; 后台&#xff1a;JavaSpring&#xff0c;SpringBoot&#xff0c;SpringMVC&#xff0c;SpringSecurity&#xff0c;MyBatisPlus 等&…

基于ssm校园驿站全天候辅助取货管理系统的设计与实现论文

摘 要 身处网络时代&#xff0c;随着网络系统体系发展的不断成熟和完善&#xff0c;人们的生活也随之发生了很大的变化&#xff0c;人们在追求较高物质生活的同时&#xff0c;也在想着如何使自身的精神内涵得到提升&#xff0c;而读书就是人们获得精神享受非常重要的途径。为了…

DNS服务器的管理与配置

目录 一、相关知识 域名空间 DNS服务器分类 域名解析过程 资源记录 二、安装DNS服务 安装bind软件包 DNS服务的启动与停止 配置主要名称服务器 主配置文件 从例子学起&#xff1a; &#xff08;1&#xff09;建立主配置文件named.conf &#xff08;2&#xff09;…

酒店管理系统

文章目录 酒店管理系统一、项目演示二、项目介绍三、15000字论文参考四、部分功能截图五、部分代码展示六、底部获取项目源码和万字论文参考&#xff08;9.9&#xffe5;带走&#xff09; 酒店管理系统 一、项目演示 酒店管理系统 二、项目介绍 基于springbootvue前后端分离的…

亿级流量系统多级缓存架构6

亿级流量系统多级缓存架构6 服务限流 什么叫限流&#xff1f; Ab测试 yum install httpd-tools即限制流量进入 缓存&#xff0c;是用来增加系统吞吐量&#xff0c;提升访问速度提供高并发。 降级&#xff0c;是在系统某些服务组件不可用的时候、流量暴增、资源耗尽等情况…

宠物店小程序如何搭建制作?宠物店小程序核心功能有哪些?

随着宠物经济的兴起&#xff0c;宠物店的线上服务需求日益增长。微信小程序作为一种便捷的线上服务平台&#xff0c;为宠物店提供了一个与爱宠人士建立联系的新渠道。面对市场上众多的小程序开发选项&#xff0c;宠物店应该如何选择或制作一款适合自己的小程序呢&#xff1f;本…

[spring] Spring Boot REST API - CRUD 操作

Spring Boot REST API - CRUD 操作 这里主要提一下 spring boot 创建 rest api&#xff0c;并对其进行 CRUD 操作 jackson & gson 目前浏览器和服务端主流的交互方式是使用 JSON(JavaScript Object Notation)&#xff0c;但是 JSON 没有办法直接和 Java 的 POJO 创建对应…
最新文章