双链标签

Markdown 编辑器与默认富文本编辑器统一使用 obsidian-core-link 标签。

<obsidian-core-link post="post-name" url="/archives/example" title="文章标题" target="_blank">显示文字</obsidian-core-link>

插入方式

  • Markdown:进入 Halo「文章」列表,打开目标文章右侧下拉菜单,选择「复制双链标签」,粘贴到正文。不要放入反引号、代码围栏或缩进代码块。
  • 默认编辑器:使用「文章关联」选择目标文章。保存时输出相同标签,重新打开时保留文章标识、地址、标题和显示文字。
  • 双链管理:反向链接与断链列表的文章行也提供复制操作。断链行的「复制来源文章双链标签」复制的是来源文章,不是尚不存在的目标。

属性

属性含义
postHalo 文章 metadata.name。文章关系索引以此为准,不依赖标题或 URL。
url文章地址,支持站内绝对路径或 HTTP(S) 地址。已指定 post 时,发布页使用该文章当前的永久链接。
title目标文章标题;标签内没有文字时作为显示文字。
target_blank(默认,新窗口)或 _self(当前窗口)。
标签内文字自定义显示文字,不改变关联的目标文章。建议只放纯文本。

只有 url、没有 post 的标签可以作为普通超链接展示,但不产生文章双链关系。复制未发布文章时可能没有 url;目标发布后再通过索引更新解析。

渲染与安全

  • 前台内容处理器将标签转换为普通 <a>,应用链条图标、浅色背景和圆角的无描边行内卡片样式,不依赖图谱脚本或匿名图谱开关;Markdown 预览与主题模板也会由轻量 <obsidian-core-link> Web Component 即时渲染。
  • 已指定 post 但目标无法解析时,显示不可点击的未解析文字,不继续使用过期的 url。
  • 代码块、HTML 注释及已有普通超链接中的示例标签不建立关系。
  • 复制时转义属性及文字;前台不透传事件属性,拒绝 javascript:、data: 等非 HTTP(S) 地址。
  • 当前插件未上线,不迁移旧的 <a data-obsidian-post> 标签;测试文章请重新复制新标签。

主题样式

可使用 --obsidian-link-color、--obsidian-link-bg 和 --obsidian-link-hover-bg 分别覆盖文字/图标、卡片背景和悬停背景。组件也兼容超链接编辑器的行内卡片颜色变量;完整优先级、明暗适配和示例见 主题适配说明。