Compare commits

...

3 Commits
v1.0.4 ... main

Author SHA1 Message Date
e7b35470f0 1.简化留言板模块中的正文配置
2.适配友链自助提交插件
2025-06-19 16:08:17 +08:00
ba696b6867 1.简化关于模块中的小部件和个人标签设置
2.移除广告设置模块
2025-06-19 11:19:12 +08:00
843a20bf76 1.适配halo 2.21.0
2.修改版本号为1.0.5-ce
3.适配装备管理插件
4.更新README说明文档
5.移除过时的配置
2025-06-17 00:46:54 +08:00
11 changed files with 101 additions and 177 deletions

View File

@ -4,7 +4,6 @@
<!-- 主题名称 -->
<h1>Halo-Theme-Hao</h1>
</div>
<!-- 主题预览图 -->
![](https://api.minio.uptoz.cn/blog/images/NsUInjCbZN.webp)
@ -43,6 +42,8 @@
5. `1.0.0`及以上版本需要`Halo`版本>=`2.14.0`
`1.0.3`及以上版本需要`Halo`版本>=`2.20.0`
`1.0.5`及以上版本需要`Halo`版本>=`2.21.0`
6. **若安装主题后出现500错误请到主题设置页面将每个设置项都保存一下**
@ -54,18 +55,18 @@
> 部分插件可能已经预设在 Halo 内。
> 部分插件主题尚未适配。
- 评论功能 <a href="https://github.com/halo-sigs/plugin-comment-widget/releases" target="_blank" rel="noopener noreferrer">plugin-comment-widget</a>
- 搜索功能 <a href="https://github.com/halo-sigs/plugin-search-widget/releases" target="_blank" rel="noopener noreferrer">plugin-search-widget</a>
- 友链页面 <a href="https://github.com/halo-sigs/plugin-links" target="_blank" rel="noopener noreferrer">plugin-links</a>
- 瞬间页面 <a href="https://github.com/halo-sigs/plugin-moments" target="_blank" rel="noopener noreferrer">plugin-moments</a>
- 追番插件 <a href="https://github.com/Roozenlz/plugin-bilibili-bangumi" target="_blank" rel="noopener noreferrer">plugin-bilibili-bangumi</a>
- 图库插件 <a href="https://github.com/halo-sigs/plugin-photos" target="_blank" rel="noopener noreferrer">plugin-photos</a>
- katex插件 <a href="https://github.com/chengzhongxue/plugin-katex/releases/" target="_blank" rel="noopener noreferrer">plugin-katex</a>
- 我的装备 <a href="https://github.com/chengzhongxue/plugin-equipments" target="_blank" rel="noopener noreferrer">plugin-equipments</a>
- 评论功能 <a href="https://www.halo.run/store/apps/app-YXyaD" target="_blank" rel="noopener noreferrer">plugin-comment-widget</a>
- 搜索组件 <a href="https://www.halo.run/store/apps/app-DlacW" target="_blank" rel="noopener noreferrer">plugin-search-widget</a>
- 链接管理 <a href="https://www.halo.run/store/apps/app-hfbQg" target="_blank" rel="noopener noreferrer">plugin-links</a>
- 瞬间页面 <a href="https://www.halo.run/store/apps/app-SnwWD" target="_blank" rel="noopener noreferrer">plugin-moments</a>
- 追番插件 <a href="https://www.halo.run/store/apps/app-OTFPN" target="_blank" rel="noopener noreferrer">plugin-bilibili-bangumi</a>
- 图库管理 <a href="https://www.halo.run/store/apps/app-BmQJW" target="_blank" rel="noopener noreferrer">plugin-photos</a>
- 装备管理 <a href="https://www.halo.run/store/apps/app-ytygyqml" target="_blank" rel="noopener noreferrer">plugin-equipments</a>
- Markdown / HTML 内容块插件 <a href="https://www.halo.run/store/apps/app-NgHnY" target="_blank" rel="noopener noreferrer">plugin-hybrid-edit-block</a>
- 爱发电 <a href="https://www.halo.run/store/apps/app-oXvZp" target="_blank" rel="noopener noreferrer">plugin-afdian</a>
- 爱发电插件 <a href="https://www.halo.run/store/apps/app-oXvZp" target="_blank" rel="noopener noreferrer">plugin-afdian</a>
- 友链自助提交插件 <a href="https://www.halo.run/store/apps/app-glejqzwk" target="_blank" rel="noopener noreferrer">link-submit</a>
> 更多插件请参见https://github.com/halo-sigs/awesome-halo
> 更多插件请参见https://www.halo.run/store/apps
## 📝 使用
@ -73,7 +74,7 @@
## 💰 赞助
如果我微调后的 Hao主题 对你有帮助,欢迎<a href="https://afdian.net/a/uptoz" target="_blank" rel="noopener noreferrer">赞助我</a>
如果我微调后的 Hao主题 对你有帮助,欢迎<a href="https://ifdian.net/a/uptoz" target="_blank" rel="noopener noreferrer">赞助我</a>
### 👍 赞助方式

View File

@ -150,26 +150,3 @@ spec:
- $formkit: "textarea"
name: "description"
label: "分组描述"
---
apiVersion: v1alpha1
kind: AnnotationSetting
metadata:
generateName: annotation-setting-
spec:
targetRef:
group: core.halo.run
kind: Equipment
formSchema:
- $formkit: "text"
name: "model"
label: "装备型号/版本"
- $formkit: "text"
name: "button"
label: "左下角按钮显示文字"
value: "详情"
- $formkit: "text"
name: "link"
label: "左下角按钮跳转链接"

View File

@ -1752,6 +1752,13 @@ spec:
value: true
- label: 隐藏
value: false
- $formkit: attachment
name: backgroundImg
key: backgroundImg
id: backgroundImg
label: 背景图
value: https://wallpaperaccess.com/full/2157.png
placeholder: 请输入图片地址
- group: todo
label: 待办清单
@ -1876,21 +1883,22 @@ spec:
label: 后半部分图片
placeholder: 请输入内容
value: "https://api.minio.uptoz.cn/blog/images/GpohBvaNdR.webp"
- $formkit: repeater
name: messageList
- $formkit: list
if: $get(enable_envelope_comment).value
name: message_list
label: 正文
addLabel: 添加标签
help: 选项是默认给的值
itemType: string
value:
- content: "有什么想问的?"
- content: "有什么想说的?"
- content: "有什么想吐槽的?"
- content: "哪怕是有什么想吃的,都可以告诉我哦~"
- 有什么想问的?
- 有什么想说的?
- 有什么想吐槽的?
- 哪怕是有什么想吃的,都可以告诉我哦~
children:
- $formkit: text
name: content
label: 内容
placeholder: 请输入内容
value: "有什么想问的?"
index: "$index"
validation: required
- $formkit: text
name: bottom
if: $get(enable_envelope_comment).value
@ -1909,61 +1917,58 @@ spec:
- group: about
label: 关于
formSchema:
- $formkit: repeater
name: widgetList
- $formkit: select
name: widget_list
multiple: true
sortable: true
label: 小部件
help: 我的介绍&我的想法, 我的问候, 技能&职业生涯, 性格&图片, 座右铭, 爱好, 关注偏好&音乐偏好, 数据统计&作者相关信息。
value:
- widgetId: content-idea
- widgetId: hello-about
- widgetId: authorCareers
- widgetId: personalities-photo
- widgetId: textarea
- widgetId: game
- widgetId: like-music
- widgetId: statistics-map
children:
- $formkit: select
name: widgetId
id: widgetId
label: 模块
options:
- value: content-idea
label: 我的介绍&我的想法
- value: hello-about
label: 我的问候
- value: authorCareers
label: 技能&职业生涯
- value: personalities-photo
label: 性格&图片
- value: textarea
label: 座右铭
- value: game
label: 爱好
- value: like-music
label: 关注偏好&音乐偏好
- value: statistics-map
label: 数据统计&作者相关信息
- $formkit: repeater
name: authorInfoLeftTags
- content-idea
- hello-about
- authorCareers
- personalities-photo
- textarea
- game
- like-music
- statistics-map
options:
- value: content-idea
label: 我的介绍&我的想法
- value: hello-about
label: 我的问候
- value: authorCareers
label: 技能&职业生涯
- value: personalities-photo
label: 性格&图片
- value: textarea
label: 座右铭
- value: game
label: 爱好
- value: like-music
label: 关注偏好&音乐偏好
- value: statistics-map
label: 数据统计&作者相关信息
- $formkit: list
name: author_info_left_tags
label: 个人标签-左
addLabel: 添加标签
help: 头像左侧个人标签
value: [ ]
itemType: string
children:
- $formkit: text
name: tag
label: 标签
placeholder: 请输入内容
- $formkit: repeater
name: authorInfoRightTags
index: "$index"
validation: required
- $formkit: list
name: author_info_right_tags
label: 个人标签-右
addLabel: 添加标签
help: 头像右侧个人标签
value: [ ]
itemType: string
children:
- $formkit: text
name: tag
label: 标签
placeholder: 请输入内容
index: "$index"
validation: required
- $formkit: code
name: content
label: 我的介绍
@ -3284,40 +3289,3 @@ spec:
label: 结束时间
placeholder: 请输入结束时间(小时)
help: 可以与开始时间相同,表示一个小时内的问候
- group: advertise
label: 广告设置
formSchema:
- $formkit: group
name: index_top_adv
label: 首页置顶广告
value:
enable: false
index_top_adv_url: "https://www.aliyun.com/daily-act/ecs/activity_selection?source=5176.11533457&userCode=ud0msscf"
index_top_adv_img: https://img.alicdn.com/imgextra/i3/O1CN01Tbj8qb1w835uueixH_!!6000000006262-2-tps-3840-120.png
children:
- $formkit: radio
name: enable
id: enable
key: enable
options:
- label: 启用
value: true
- label: 禁用
value: false
- $formkit: attachment
name: index_top_adv_img
id: index_top_adv_img
key: index_top_adv_img
if: $get(enable).value
label: 首页置顶广告图片
validation: required
placeholder: 请输入图片 url
- $formkit: text
name: index_top_adv_url
id: index_top_adv_url
key: index_top_adv_url
if: $get(enable).value
label: 首页置顶广告图片跳转地址
validation: required
placeholder: 请输入广告图片跳转 url

View File

@ -24,27 +24,26 @@
<div class="author-info">
<div class="author-tag-left"
th:if="${not #lists.isEmpty(theme.config.about.authorInfoLeftTags)}"
th:with="authorTags = ${theme.config.about.authorInfoLeftTags}">
th:if="${not #lists.isEmpty(theme.config.about.author_info_left_tags)}"
th:with="authorTags = ${theme.config.about.author_info_left_tags}">
<span class="author-tag" th:each="authorTag : ${authorTags}"
th:text="${authorTag.tag}"></span>
th:text="${authorTag}"></span>
</div>
<div class="author-img">
<img
th:src="@{${#strings.isEmpty(site.logo) ? assets_link + '/images/hao-logo.jpg' : site.logo}}">
</div>
<div class="author-tag-right"
th:if="${not #lists.isEmpty(theme.config.about.authorInfoRightTags)}"
th:with="authorTags = ${theme.config.about.authorInfoRightTags}">
th:if="${not #lists.isEmpty(theme.config.about.author_info_right_tags)}"
th:with="authorTags = ${theme.config.about.author_info_right_tags}">
<span class="author-tag" th:each="authorTag : ${authorTags}"
th:text="${authorTag.tag}"></span>
th:text="${authorTag}"></span>
</div>
</div>
<div class="author-title" th:text="${singlePage.spec.title}"></div>
<th:block
th:replace="~{modules/about-widgets :: about-widgets(${theme.config.about.widgetList})}"></th:block>
th:replace="~{modules/about-widgets :: about-widgets(${theme.config.about.widget_list})}"></th:block>
<div class="author-content">
<div class="create-site-post author-content-item single" th:utext="${theme.config.about.xjlc}">
</div>

View File

@ -128,9 +128,9 @@
来自[[${site.title}]]的留言:</h3>
<div class="comments"
style="text-align:center;border-bottom:#ddd 1px solid;border-left:#ddd 1px solid;padding-bottom:20px;background-color:#eee;margin:15px 0;padding-left:20px;padding-right:20px;border-top:#ddd 1px solid;border-right:#ddd 1px solid;padding-top:20px"
th:with="message = ${theme.config.envelope_comment.messageList}">
th:with="message = ${theme.config.envelope_comment.message_list}">
<div th:each="data : ${message}">[[${data.content}]]</div>
<div th:each="data : ${message}">[[${data}]]</div>
</div>
<div class="bottomcontent" style="text-align:center;margin-top:40px">

View File

@ -28,35 +28,35 @@
<th:block th:each="group : ${groups}">
<div class="equipment-item">
<h2 class="equipment-item-title">[[${group.spec.displayName}]]</h2>
<div class="equipment-item-description">[[${#annotations.get(group, 'description')}]]</div>
<div class="equipment-item-description">[[${group.spec.description}]]</div>
<div class="equipment-item-content" th:with="equipmentList = ${group.equipments}">
<div class="equipment-item-content-item" th:each="equipment : ${equipmentList}">
<div class="equipment-item-content-item-cover">
<img class="equipment-item-content-item-image"
th:alt="${equipment.spec.displayName}"
th:src="${isLazyload ? loadingImg : equipment.spec.url}"
th:data-lazy-src="${ isLazyload ? equipment.spec.url : ''}">
th:src="${isLazyload ? loadingImg : equipment.spec.cover}"
th:data-lazy-src="${ isLazyload ? equipment.spec.cover : ''}">
</div>
<div class="equipment-item-content-item-info">
<div class="equipment-item-content-item-name"
th:onclick="rm.rightmenuCopyText([[${equipment.spec.displayName}]]);btf.snackbarShow('已复制装备名称');">
[[${equipment.spec.displayName}]]
</div>
<div class="equipment-item-content-item-specification">[[${#annotations.get(equipment, 'model')}]]
<div class="equipment-item-content-item-specification">[[${equipment.spec.specification}]]
</div>
<div class="equipment-item-content-item-description">
[[${equipment.spec.description}]]
</div>
<div class="equipment-item-content-item-toolbar">
<a class="equipment-item-content-item-link" th:href="${#annotations.get(equipment, 'link')}"
target="_blank">[[${#annotations.get(equipment, 'button')}]]</a>
<a class="equipment-item-content-item-link" th:href="${equipment.spec.url}" target="_blank">详情</a>
<!-- <a class="bber-reply" -->
<a class="bber-reply" th:if="${theme.config.comments.use != 'commentWidget'}"
th:onclick="rightMenuCommentText([['&quot;'+${equipment.spec.displayName}+' '+${#annotations.get(equipment, 'model')}+' '+${equipment.spec.description}+'&quot;']]);"
th:onclick="rightMenuCommentText([['&quot;'+${equipment.spec.displayName}+' '+${equipment.spec.specification}+' '+${equipment.spec.description}+'&quot;']]);"
data-pjax-state="">
<i class="haofont hao-icon-chat--fill" style="font-size: 22px;"></i>
</a>
</div>
</div>
</div>

View File

@ -12,18 +12,6 @@
<div class="page" id="body-wrap">
<div class="_3f01c8f5a4546beb05aa576fb01cb512_banner"
style="--bg-color: #F0F3FB;" th:if="${theme.config.advertise.index_top_adv.enable}">
<a class="_3f01c8f5a4546beb05aa576fb01cb512_link"
th:href="${theme.config.advertise.index_top_adv.index_top_adv_url}"
target="_blank"
data-tracker-scm="20140722.M_185485774.P_128.MO_1774-ID_10314565-MID_10314565-CID_31226-ST_10134-PA_m@1000390637-V_1"
data-aplus-ae="x1_6a70ef6a" data-spm-anchor-id="5176.28987142.J_4VYgf18xNlTAyFFbOuOQe.1">
<img th:src="${theme.config.advertise.index_top_adv.index_top_adv_img}" alt="">
</a>
<a class="_3f01c8f5a4546beb05aa576fb01cb512_close"></a>
</div>
<!-- 头部导航栏 -->
<header th:class="${theme.config.top.above.enable_above ? 'full_page' : 'not-top-img'}" id="page-header">
<nav th:replace="~{modules/nav :: nav(title = ${siteTitle})}"></nav>
@ -52,21 +40,6 @@
<!-- 底部 -->
<footer th:replace="~{modules/footer}"/>
</div>
<style th:if="${theme.config.advertise.index_top_adv.enable}">
@media screen and (max-width: 768px) {
#page-header.not-top-img:not(.nav-fixed) #nav {
background: var(--heo-none);
}
}
@media screen and (min-width: 770px) {
#page-header.not-top-img:not(.nav-fixed) #nav {
background: var(--heo-none);
margin-top:60px
}
}
</style>
</th:block>

View File

@ -11,9 +11,15 @@
<i class="haofont hao-icon-paper-plane1"></i>
<span class="banner-button-text">随机访问</span>
</a>
<a class="banner-button" href="#post-comment" rel="external nofollow">
<i class="haofont hao-icon-link"></i>
<span class="banner-button-text">申请友链</span>
<a th:unless="${pluginFinder.available('link-submit')}" class="banner-button" href="#post-comment"
rel="external nofollow">
<i class="haofont hao-icon-link"></i>
<span class="banner-button-text">申请友链</span>
</a>
<a th:if="${pluginFinder.available('link-submit')}" class="banner-button"
href="javascript:LinkSubmitWidget.open()" rel="external nofollow">
<i class="haofont hao-icon-link"></i>
<span class="banner-button-text">申请友链</span>
</a>
</div>
<div class="tags-group-all nowrapMove">

View File

@ -2,6 +2,6 @@
<th:block th:fragment="about-widgets(widgets)"
th:if="${not #lists.isEmpty(widgets)}">
<th:block th:each="widget : ${widgets}">
<th:block th:replace="~{'modules/widgets/about-widgets/'+ ${widget.widgetId}}"/>
<th:block th:replace="~{'modules/widgets/about-widgets/'+ ${widget}}"/>
</th:block>
</th:block>

View File

@ -164,7 +164,7 @@
<script th:src="${assets_link + '/libs/clipboard/clipboard.min.js'}"></script>
<!-- 关于统计-->
<script th:if="${#strings.contains(theme.config.about.widgetList,'statistics-map')}" th:src="${assets_link + '/libs/countup/countup.js'}"></script>
<script th:if="${#strings.contains(theme.config.about.widget_list,'statistics-map')}" th:src="${assets_link + '/libs/countup/countup.js'}"></script>
<!-- 小板报 -->
<th:block th:if="${not #strings.isEmpty(theme.config.sidebar.welcome.key)}">

View File

@ -52,8 +52,8 @@ spec:
issues: https://gitee.com/uptoz/halo-theme-hao/issues
settingName: "theme-hao-setting"
configMapName: "theme-hao-configMap"
version: "1.0.4-ce"
require: ">=2.20.0"
version: "1.0.5-ce"
requires: ">=2.21.0"
license:
- name: "CC BY-SA 4.0"
url: "https://gitee.com/uptoz/halo-theme-hao/blob/main/LICENSE"