[halo-dev/halo]Markdown标题生成HTML的时候被URLEncode导致锚点无法使用

2023-12-18 687 views
2
是什么版本出现了此问题?

1.5.3

使用的什么数据库?

H2

使用的哪种方式部署?

Fat Jar

在线站点地址

https://sppan24.cn/archives/docker-dev-1.html

发生了什么?

Markdown标题生成HTML发生的时候,中文会被进行URLEncode,导致锚点无法定位,最终导致文章目录无法跳转对应的位置。

相关日志输出 附加信息 image

回答

4

试试自定义锚点:

### <a name="create-network"></a>创建网络

前往自定义锚点:[创建网络](#create-network)
7

这个我觉得应该和主题没关系吧,我去看过了,现在数据库里面的标题也是被编码了的,我之前的文章数据库里面标题就没有被编码,所以我觉得应该是服务端某个版本导致的。

1

对于浏览器来说,中文或者其他特殊字符被 URLEncode 处理是不会影响锚定位的,是符合预期的表现。这个问题就是主题所用的目录生成插件导致的。这个问题也被 tocbot 这个插件定义为 bug,详情见:https://bbs.halo.run/d/2288/7