链接到帖子或主题中的标题

:bookmark: 本指南介绍如何直接链接到 Discourse 帖子或主题中的标题,使用户能够高效地浏览长篇帖子。

:person_raising_hand: 所需用户级别:所有用户

在长篇帖子中添加标题可以提高内容的可读性,并允许用户直接链接到特定部分。这对于浏览大量的讨论和文档特别有用。

摘要

本指南涵盖:

  • 使用 Markdown 创建标题
  • 直接链接到帖子中的特定标题

使用 Markdown 创建标题

要在 Markdown 中创建标题,请在文本行前加上一个或多个 # 字符。# 字符的数量对应于标题级别。以下是一些示例:

## 这是一个二级标题
后面是一小段文字。

### 这是一个三级标题
再后面是一小段文字。

渲染后的效果如下:


这是一个二级标题

后面是一小段文字。

这是一个三级标题

再后面是一小段文字。


直接链接到标题

要共享指向帖子中特定标题的直接链接:

  1. 悬停在标题上,旁边会出现一个链接图标:link icon
  2. 点击链接图标,浏览器地址栏中的 URL 将更新为指向该标题的直接链接。
  3. 从地址栏复制更新后的 URL 以与他人共享。

:information_source: 链接图标仅在桌面(非触摸屏)设备上悬停在标题上时才会显示。在触摸屏和移动设备上,锚点链接存在于页面中,但不可见。

了解标题锚点 URL

当您单击标题的链接图标时,地址栏中的 URL 会使用以下格式的片段进行更新:

#p-{postId}-{slugified-heading}-{number}

例如,帖子 12345 中标题为“Getting Started”的链接会生成一个类似 #p-12345-getting-started-1 的 URL 片段。末尾的数字是基于标题在帖子中位置的顺序计数器。

最佳实践

  • 使用描述性的标题以清晰地总结内容。
  • 在适当的情况下,使用分层标题来组织您的帖子。
  • 确保标题一致且合乎逻辑,以提高可读性。
  • 请注意,编辑标题文本或更改标题顺序将更改其锚点 URL,这可能会导致现有链接失效。

常见问题解答

我能链接到帖子的任何部分吗?
您可以链接到任何使用 Markdown 正确格式化的标题,只要它不在引用块或引文块内。这些块内的标题不会生成锚点链接。

标题链接在不同的帖子之间有效吗?
是的!当在其他主题中使用或在别处共享时,这些链接会直接指向帖子中的标题。

附加资源

73 个赞

我在这个网站或我自己的网站上都看不到链接图标。无论是在火狐浏览器还是 Chrome 浏览器中都看不到。

是否发生了什么变化?

您需要将鼠标悬停在标题上才能显示它们:

当我鼠标悬停时,什么也看不到。

似乎确实存在一些东西,但没有显示任何图标。

一个后续问题…

我假设如果更改标题的文本,链接就会断开。

编辑补充:不仅当标题更改时锚点会更改,而且如果在现有标题之前插入另一个标题,则标题上的数字后缀也会更改。这似乎脆弱得毫无用处。

唯一安全的解决方法是将标题包装在 html a 标签中并为其指定一个 id,对吗?

再次编辑补充:我尝试了将标题文本包装在 a 标签中,以及仅在标题文本之前放置空标签。两种 id 都不起作用。我还尝试了 span 标签,结果同样失败。

是的,我可以在 DOM 中将其找到为 before

我使用的是 Windows 11。

我能让链接图标出现的方法是复制链接,然后在新标签页中打开该链接(带有 # 和 id)。这样链接图标就会一直显示(无需悬停),但其他链接图标仍然不会在悬停时出现。

我可以顶一下这个帖子吗?我想知道我是不是遗漏了关于在帖子中链接的某些显而易见的东西。

我遇到了同样的问题。图标在那里,但它的不透明度设置为零,所以它不可见。


.cooked h1 a.anchor, .cooked h2 a.anchor, .cooked h3 a.anchor, .cooked h4 a.anchor, .cooked h5 a.anchor, .cooked h6 a.anchor, .d-editor-preview h1 a.anchor, .d-editor-preview h2 a.anchor, .d-editor-preview h3 a.anchor, .d-editor-preview h4 a.anchor, .d-editor-preview h5 a.anchor, .d-editor-preview h6 a.anchor

Specificity: (0,2,2)

{

opacity: 0;

transition: opacity .25s;

}

我也看不到原帖中的图标,所以这排除了我实例上的任何自定义样式。

我使用的是 Chrome。

1 个赞

作为另一个独立的问题,我发现(隐藏的)图标提供的链接在同一主题中无法使用。如果图标给我:

https://forum.example.com/t/testing-anchors/63647#p-311503-heading-1

我必须仅使用 #p-311503-heading-1 来创建我的链接,而不是完整的网址。如果我将完整网址粘贴到浏览器中,它是可以工作的。

1 个赞