\n\u003Cimg width=\"1310\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/ae9ffd60-5697-4bcd-aefe-07d14fd7530f\" />\n\n\n### 附加信息\n\n_No response_",[3077],{"name":3078,"color":3079},"kind/improvement","f714c6",7141,"[Feature]页面功能优化-嵌入HTML页面","2025-05-21T04:52:17Z","https://github.com/halo-dev/halo/issues/7141",0.74900687,{"description":3086,"labels":3087,"number":3091,"owner":3035,"repository":3036,"state":3047,"title":3092,"updated_at":3093,"url":3094,"score":3095},"### 前置条件\n\n- [x] 已经在 [issues](https://github.com/halo-dev/halo/issues) 列表中搜索了相关问题。\n- [x] 这是 Halo 项目本身存在的问题,如果是非项目本身的问题(如:安装部署问题),建议在 [Discussions](https://github.com/halo-dev/halo/discussions) 提交。\n- [x] 已经尝试过停用所有的插件,排除是插件导致的问题。\n- [x] 如果是插件和主题的问题,请在对应的插件和主题仓库提交。\n\n### 系统信息\n\n- 外部访问地址: http://localhost:8090\n- 启动时间: 2025-04-23 11:09\n- 版本: [2.20.18](https://www.lxware.cn/docs/helpcenter/halo-pro/changlog)\n- 构建时间: 2025-03-22 23:44\n- Git Commit: 357a45c\n- Java: IBM Semeru Runtime Open Edition / 21.0.6+7-LTS\n- 数据库: MySQL Community Server - GPL / 8.4.4\n- 操作系统: Linux 6.8.0-48-generic / amd64\n- 系统时区: Asia/Shanghai\n- 系统语言: en_US\n\n### 使用的哪种方式运行?\n\nDocker Compose\n\n### 发生了什么?\n\n在使用 Halo 博客系统集成 Dify 提供的嵌入代码后,博客前端页面出现异常,具体表现为 点击按钮之后样式错位。 \n正确的样式背景应该是透明的,而不是白色底。 \n基于 Dify 的代码使用的是 ifram,所以 Dify 源码应该不存在样式冲突,望修复。\n\n## 截图\n### 错误展示:\n\n\n\n### 正确展示:\n\n\n\n### 复现步骤\n\n**复现步骤:**\n\n1. 登录 Halo 博客后台。\n2. 进入 **设置 -> 代码注入 -> 全局 head 标签**。\n3. 将 Dify 提供的以下嵌入代码粘贴到该文本框中:\n\n```html\n\u003Cscript>\n window.difyChatbotConfig = {\n token: '',\n baseUrl: ''\n }\n\u003C/script>\n\u003Cscript\n src=\"\"\n id=\"\"\n defer>\n\u003C/script>\n\u003Cstyle>\n #dify-chatbot-bubble-button {\n background-color: #00a78e !important;\n }\n #dify-chatbot-bubble-window {\n width: 24rem !important;\n height: 40rem !important;\n }\n\u003C/style>\n\n### 相关日志输出\n\n```shell\n\n```\n\n### 附加信息\n\n_No response_",[3088],{"name":3089,"color":3090},"triage/unresolved","d455d0",7435,"Halo 集成 Dify 嵌入代码时出现 Bug","2025-05-20T06:58:42Z","https://github.com/halo-dev/halo/issues/7435",0.7512853,{"description":3097,"labels":3098,"number":3103,"owner":3035,"repository":3036,"state":3047,"title":3104,"updated_at":3105,"url":3106,"score":3107},"### 系统信息\n\n- 外部访问地址: https://vaguely-integral-oyster.ngrok-free.app\r\n- 启动时间: 2024-09-05 14:38\r\n- 版本: 2.19.0-SNAPSHOT\r\n- 构建时间: 2024-09-05 14:38\r\n- Git Commit: c3ba869\r\n- Java: Java(TM) SE Runtime Environment / 17.0.11+7-LTS-207\r\n- 数据库: MySQL Community Server - GPL / 8.0.32\r\n- 操作系统: Mac OS X / 12.2.1\r\n- 已激活主题: [LingXia 1.5.0](https://github.com/f2ccloud/theme-lingxia.git)\r\n- 已启动插件:\r\n - [应用市场 1.3.0](https://www.halo.run/store/apps/app-VYJbF)\r\n - [瞬间 1.7.0](https://github.com/halo-sigs/plugin-moments)\r\n - [链接管理 1.4.0](https://github.com/halo-sigs/plugin-links)\r\n - [图库管理 1.4.0](https://github.com/halo-sigs/plugin-photos)\r\n - [搜索组件 1.6.2](https://github.com/halo-dev/plugin-search-widget)\r\n - 联系表单 1.0.2\r\n - [评论组件 2.4.0](https://github.com/halo-dev/plugin-comment-widget)\r\n - [社交 IAM 认证 1.0.2-SNAPSHOT](https://www.halo.run/store/apps/app-IXZkJ)\r\n - [文章限制阅读 Pro 1.0.0-SNAPSHOT](https://www.halo.run/store/apps/app-TzRqd)\r\n - [LDAP 认证 1.0.0-SNAPSHOT](https://www.halo.run/store/apps/app-vrSqF)\n\n### 使用的哪种方式运行?\n\nFat Jar\n\n### 发生了什么?\n\n- 值发生变化未触发change方法\r\n- 如果本身选中某个值如选中`测试`再通过js将值设置为undefined,还是显示原来的label`测试`\n\n### 复现步骤\n\n_No response_\n\n### 相关日志输出\n\n_No response_\n\n### 附加信息\n\n_No response_",[3099,3100],{"name":3029,"color":3030},{"name":3101,"color":3102},"area/ui","1d76db",6594,"formkit select组件值变化的问题","2024-09-06T09:45:53Z","https://github.com/halo-dev/halo/issues/6594",0.752389,{"description":3109,"labels":3110,"number":3112,"owner":3035,"repository":3036,"state":3047,"title":3113,"updated_at":3114,"url":3115,"score":3116},"\r\n**我确定我已经查看了**\r\n\r\n- [x] [Halo 使用文档](https://halo.run/docs)\r\n- [x] [Halo 论坛](https://bbs.halo.run)\r\n- [x] [Github Wiki 常见问题](https://github.com/halo-dev/halo/wiki/4.-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98)\r\n- [x] [其他 Issues](https://github.com/halo-dev/halo/issues)\r\n\r\n----\r\n\r\n**我要申请**\r\n\r\n- [x] BUG 反馈\r\n- [ ] 添加新的特性或者功能\r\n- [ ] 请求技术支持\r\n\r\n删除主题后用户目录下对应的主题文件夹没有删除,导致不能再次导入主题。\r\n手动删除也不行,停掉服务后文件夹自动消失。\r\n在调试主题的时候需要不停地启/停服务,有点难受。",[3111],{"name":3029,"color":3030},198,"删除主题后不能重新导入主题","2019-06-12T13:01:16Z","https://github.com/halo-dev/halo/issues/198",0.7525605,{"description":3118,"labels":3119,"number":3120,"owner":3035,"repository":3036,"state":3047,"title":3121,"updated_at":3122,"url":3123,"score":3124},"### Your current Halo version\n\n2.13\n\n### Describe this feature\n\n在我想要修改某个模板页,比如post.html的内容后,点击\r\n\u003Cimg width=\"263\" alt=\"image\" src=\"https://github.com/halo-dev/halo/assets/2950260/b834b3af-289c-449a-a5ba-312f5576af1d\">\r\n`重载主题配置` 按钮后,希望模板能够生效然后查看效果。\r\n\r\n但是好像重载配置只支持theme.yaml的更新?导致我每次必须先停止halo服务,然后再启动halo服务。。有点繁琐。\r\n\r\n只支持theme.yaml的更新这个能力有点鸡肋的,毕竟我们更多的变动就是修改模板页。\r\n\r\n希望能对这个功能升级下。\n\n### Additional information\n\n_No response_",[],5466,"希望主题刷新配置的时候把模板html文件也刷新","2024-03-07T11:07:32Z","https://github.com/halo-dev/halo/issues/5466",0.7573675,{"description":3126,"labels":3127,"number":3129,"owner":3035,"repository":3036,"state":3047,"title":3130,"updated_at":3131,"url":3132,"score":3133},"### 检查清单\r\n\r\n- [X] 已经在 [GitHub Issues](https://github.com/halo-dev/halo/issues) 中搜索过该问题\r\n- [X] 已经在[论坛](https://bbs.halo.run/)中搜索过该问题\r\n- [X] 已经查阅过[文档](https://docs.halo.run/)\r\n\r\n### 是什么版本出现了此问题?\r\n\r\nmaster\r\n\r\n### 使用的什么数据库?\r\n\r\nH2\r\n\r\n### 使用的哪种方式部署?\r\n\r\nFat Jar\r\n\r\n### 在线站点地址\r\n\r\nhttps://halo.run\r\n\r\n### 发生了什么?\r\n\r\n/kind bug\r\n/milestone 1.5.x\r\n\r\nsee https://github.com/halo-dev/halo/pull/2137#pullrequestreview-994912972\r\n\r\n\u003Cimg width=\"611\" alt=\"image\" src=\"https://user-images.githubusercontent.com/21301288/171863209-1c990e97-c526-4055-adbd-2a74a499d4e1.png\">\r\n\r\nPayload:\r\n\r\n```\r\n------WebKitFormBoundarynH8sMaBVAhAWGVaj\r\nContent-Disposition: form-data; name=\"file\"; filename=\"test.md\"\r\nContent-Type: text/markdown\r\n\r\n\r\n------WebKitFormBoundarynH8sMaBVAhAWGVaj--\r\n```\r\n\r\nResponse:\r\n\r\n```json\r\n{\r\n \"status\": 415,\r\n \"message\": \"Unsupported Media Type\",\r\n \"devMessage\": null,\r\n \"data\": {\r\n \"timestamp\": 1654262747477,\r\n \"status\": 415,\r\n \"error\": \"Unsupported Media Type\",\r\n \"trace\": \"org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;boundary=----WebKitFormBoundarynH8sMaBVAhAWGVaj' not supported\\n\\tat org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.handleNoMatch(RequestMappingInfoHandlerMapping.java:267)\\n\\tat org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:442)\\n\\tat run.halo.app.config.HaloRequestMappingHandlerMapping.lookupHandlerMethod(HaloRequestMappingHandlerMapping.java:52)\\n\\tat org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:383)\\n\\tat org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:125)\\n\\tat org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:67)\\n\\tat org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:498)\\n\\tat org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1261)\\n\\tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1043)\\n\\tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)\\n\\tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)\\n\\tat org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)\\n\\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:517)\\n\\tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)\\n\\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:584)\\n\\tat org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1631)\\n\\tat org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:230)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat run.halo.app.security.filter.AdminAuthenticationFilter.doAuthenticate(AdminAuthenticationFilter.java:120)\\n\\tat run.halo.app.security.filter.AbstractAuthenticationFilter.doFilterInternal(AbstractAuthenticationFilter.java:229)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:102)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:102)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat run.halo.app.filter.CorsFilter.doFilter(CorsFilter.java:53)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat run.halo.app.filter.LogFilter.doFilterInternal(LogFilter.java:40)\\n\\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)\\n\\tat org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193)\\n\\tat org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601)\\n\\tat org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\\n\\tat org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:600)\\n\\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)\\n\\tat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)\\n\\tat org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1440)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)\\n\\tat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501)\\n\\tat org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)\\n\\tat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1355)\\n\\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\\n\\tat org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:763)\\n\\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)\\n\\tat org.eclipse.jetty.server.Server.handle(Server.java:516)\\n\\tat org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:487)\\n\\tat org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:732)\\n\\tat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:479)\\n\\tat org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277)\\n\\tat org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)\\n\\tat org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)\\n\\tat org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)\\n\\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338)\\n\\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315)\\n\\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173)\\n\\tat org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)\\n\\tat org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:409)\\n\\tat org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883)\\n\\tat org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034)\\n\\tat java.base/java.lang.Thread.run(Thread.java:829)\\n\",\r\n \"message\": \"Unsupported Media Type\",\r\n \"path\": \"/api/admin/backups/markdown/import\"\r\n }\r\n}\r\n```\r\n\r\n### 相关日志输出\r\n\r\nNone\r\n\r\n### 附加信息\r\n\r\n_No response_",[3128],{"name":3029,"color":3030},2176,"Markdown 导入无法正常上传符合预期格式的文件","2022-06-24T15:00:26Z","https://github.com/halo-dev/halo/issues/2176",0.7626195,["Reactive",3135],{},["Set"],["ShallowReactive",3138],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fwdBVsLb-KBGNe_8pwqgW38mHsg3HE03VazqFN-lJxz4":-1},"/halo-dev/halo/622"]