# 自定义标题链接（图标）

**URL:** <https://meta.discourse.org/t/custom-header-links-icons/86307>\
**Category:** Theme component\
**Tags:** official, custom-header-icons\
**Created:** [2018年四月27日 14:00 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307 "2018-04-27T14:00:38Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年五月20日 23:01 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/129 "2021-05-20T23:01:09Z")

</div>

我已升级此功能，并在 `/admin/customize/themes` 页面上看到以下错误信息：

```plaintext
错误：未定义的变量："$add-whitespace"。位于 common.scss 第 14 行 >> @if $add_whitespace == "true" { ----^

```

更新：我勾选了新的“空白”复选框，然后取消勾选（每次操作后都保存），错误已消失。

---

<div class="post-metadata">

**Author:** ![Johani](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/johani/32/176920_2.png) [@Johani](https://meta.discourse.org/u/Johani)\
**Post date:** [2021年五月20日 23:18 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/130 "2021-05-20T23:18:11Z")

</div>

> [@bartv](#):
>
> 我可以配置为使用 `rel="noreferer, noopener"` 代码吗？

报告本身没错，但严重性评估略有偏差。这些链接并非用户生成内容，只有管理员可以通过管理面板添加它们。因此，可以合理假设管理员不会链接到不可信的站点。

不过，我与 David 简单沟通后，他建议无论如何都为外部链接添加 `rel="noopener"`。我已在此处添加了该设置。如果链接被设置为在新标签页中打开，该属性将自动添加。

> <https://github.com/discourse/discourse-icon-header-links/commit/21687683db77023d3caad868d3235ede0174c55b>
>
> If a link is set to open in a new tab, automatically add \`rel="noopener"\` to it.

关于 `noreferrer`，

我认为不添加它更为有利，因为您可能希望链接到您的主站点，并获取有关有多少用户从您的社区被引荐到主站点的分析数据。

> [@hollosch](#):
>
> 图标不再显示了

情况仍然如此吗？能否分享您的组件设置截图？

> [@Jonathan5](#):
>
> 更新：我勾选了新的“空白”复选框，然后取消勾选（每次操作后都保存），错误已消失。

是的，我在更新时也注意到了这一点，但这与新的更改无关。不知为何，编译器没有立即识别该新设置。因此，您可能需要勾选该设置，然后取消勾选。

不过请放心，根据我的测试，该错误对您的站点没有任何影响。

---

<div class="post-metadata">

**Author:** ![GuidoD](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/guidod/32/292621_2.png) [@GuidoD](https://meta.discourse.org/u/GuidoD)\
**Post date:** [2021年五月21日 06:11 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/131 "2021-05-21T06:11:22Z")

</div>

我们的网站今天提示我应该升级主题组件，我刚刚通过点击“更新”按钮完成了操作。  
但现在出现了以下错误：  
`错误：未定义的变量："$add-whitespace"。位于 common.scss 第 14 行 >> @if $add_whitespace == "true" { ----^ `

 ![grafik](https://global.discourse-cdn.com/meta/original/3X/a/1/a1c8fa378ad8a8e05b47e44238e4105198058c4a.png)

---

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年五月21日 06:21 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/132 "2021-05-21T06:21:45Z")

</div>

我遇到过这个问题，勾选后再取消勾选该复选框后问题就自行解决了：[Custom Header Links (icons) - #129 by Jonathan5](https://meta.discourse.org/t/custom-header-links-icons/86307/129?u=jonathan5)

---

<div class="post-metadata">

**Author:** ![Johani](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/johani/32/176920_2.png) [@Johani](https://meta.discourse.org/u/Johani)\
**Post date:** [2021年五月21日 06:24 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/133 "2021-05-21T06:24:59Z")

</div>

感谢你的报告 @GuidoD

我们已知晓此问题，但它不应对你的网站产生任何影响。这是一个我们正在内部追踪的编译器问题。

如果它导致你的网站出现任何问题，请告诉我——按理说不应该发生。

---

<div class="post-metadata">

**Author:** ![GuidoD](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/guidod/32/292621_2.png) [@GuidoD](https://meta.discourse.org/u/GuidoD)\
**Post date:** [2021年五月21日 06:43 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/135 "2021-05-21T06:43:10Z")

</div>

> [@Johani](#):
>
> 请告诉我是否会在您的网站上引发任何问题——应该不会。

确实，我没有注意到任何进一步的问题。  
我目前正在对网站进行 Discourse 重建，之后会再次检查。如果错误仍然存在，我会查看 Jonathan 的提示。

> [@GuidoD](#):
>
> 我目前正在对网站进行 Discourse 重建，之后会再次检查。如果错误仍然存在，我会查看 Jonathan 的提示。

重建之后，错误消失了 🙂

感谢您出色的主题组件，我们使用它已经两年了。

---

<div class="post-metadata">

**Author:** ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)\
**Post date:** [2021年五月23日 15:03 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/136 "2021-05-23T15:03:35Z")

</div>

你好，我使用的是 Discourse 2.8.0.beta1，在更新到该主题组件的最新版本时，出现了以下错误信息：

```plaintext
错误：未定义的变量 "$add-whitespace"。位于 common.scss 第 14 行 >> @if $add_whitespace == "true" { ----^

```

---

<div class="post-metadata">

**Author:** ![CaptainZac](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/captainzac/32/195184_2.png) [@CaptainZac](https://meta.discourse.org/u/CaptainZac)\
**Post date:** [2021年五月24日 01:14 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/137 "2021-05-24T01:14:55Z")

</div>

我也遇到同样的错误。我使用的是 2.7 稳定版。

---

<div class="post-metadata">

**Author:** ![Johani](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/johani/32/176920_2.png) [@Johani](https://meta.discourse.org/u/Johani)\
**Post date:** [2021年五月24日 05:46 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/138 "2021-05-24T05:46:13Z")

</div>

> [@Canapin](#):
>
> 我收到了这条错误消息

> [@CaptainZac](#):
>
> 我也遇到了同样的错误

我明白了。正如我上面提到的，这完全不会影响您的网站。

> [@Johani](#):
>
> 根据我的测试，该错误对您的网站没有任何影响。

> [@Johani](#):
>
> 不知为何，编译器没有立即识别新设置。因此，您可能需要勾选该设置，然后再取消勾选。

> [@Johani](#):
>
> 我们已了解此问题，但它不会影响您的网站。这是一个我们正在内部追踪的编译器问题。

---

<div class="post-metadata">

**Author:** ![Vaping\_Community](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/vaping_community/32/89248_2.png) [@Vaping\_Community](https://meta.discourse.org/u/Vaping_Community)\
**Post date:** [2021年六月7日 12:49 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/139 "2021-06-07T12:49:07Z")

</div>

> [@Johani](#):
>
> 不知为何，编译器没有立即识别新设置。因此，您可能需要先勾选该设置，然后再取消勾选。

我可以确认这确实有效。

先勾选该选项，然后取消勾选，并刷新页面。

![screenshot-vapingcommunity.co.uk-2021.06.07-13_48_21](https://global.discourse-cdn.com/meta/original/3X/b/c/bc0092be1e8b1ff3e47300bc924bf77b8393a8ca.png)

---

<div class="post-metadata">

**Author:** ![Ralf\_Stockmann](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ralf_stockmann/32/505867_2.png) [@Ralf\_Stockmann](https://meta.discourse.org/u/Ralf_Stockmann)\
**Post date:** [2021年六月24日 10:10 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/140 "2021-06-24T10:10:09Z")

</div>

你好，感谢这个插件。  
我观察到一些关于 FA 图标的问题，想与您分享：  
far- 图标的集成似乎可以正常工作（regular 风格），但 fas- 图标（solid 风格）却无法显示。

您可以尝试以下示例：

fas-building  
对比  
far-building

> **[Font Awesome](https://fontawesome.com/v5/icons/building?style=solid)**
>
> The internet's icon library + toolkit. Used by millions of designers, devs, & content creators. Open-source. Always free. Always awesome.

对此您有什么看法吗？far- 图标数量相比 fas- 图标少了很多（从设计角度来看更是如此），因此这是一个问题……

---

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年六月24日 10:13 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/141 "2021-06-24T10:13:38Z")

</div>

> [@Jonathan5](#):
>
> 查看 [https://github.com/discourse/discourse/pull/6557/commits/bf3f958cdd516d09136bee33e3d51b36c05dcbfe](https://github.com/discourse/discourse/pull/6557/commits/bf3f958cdd516d09136bee33e3d51b36c05dcbfe) 和 [https://github.com/discourse/discourse/pull/6557/commits/bf3f958cdd516d09136bee33e3d51b36c05dcbfe](https://github.com/discourse/discourse/pull/6557/commits/bf3f958cdd516d09136bee33e3d51b36c05dcbfe)

我认为你需要搜索代码，以查看可以使用哪些图标以及它们的名称（除非自上述评论发布以来已有更改）。

---

<div class="post-metadata">

**Author:** ![Ralf\_Stockmann](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ralf_stockmann/32/505867_2.png) [@Ralf\_Stockmann](https://meta.discourse.org/u/Ralf_Stockmann)\
**Post date:** [2021年六月24日 10:30 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/142 "2021-06-24T10:30:08Z")

</div>

好吧，主题组件的描述表明，可以使用 _任何_ 免费的 FA5 图标——无论其类别（品牌、常规、实心）如何。

请查看您引用的代码：

 ![image](https://global.discourse-cdn.com/meta/original/3X/a/5/a54a6d0f90a09e7db753951fccf9ebdfad416b2a.png)

其中没有针对实心的 if 子句。因此，它应该写成：

```plaintext
when "solid"
  key = "fas-"

```

对吗？

---

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年六月24日 10:31 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/143 "2021-06-24T10:31:41Z")

</div>

据我所知，这一说法一直是不正确的。

---

<div class="post-metadata">

**Author:** ![Ralf\_Stockmann](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ralf_stockmann/32/505867_2.png) [@Ralf\_Stockmann](https://meta.discourse.org/u/Ralf_Stockmann)\
**Post date:** [2021年六月24日 10:55 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/144 "2021-06-24T10:55:17Z")

</div>

好的——在这种情况下，是否应该在主题组件描述中修复？  
但实际上，它确实适用于所有 far- 图标，所以我认为 fas- 只是被“遗漏”了。

---

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年六月24日 11:14 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/145 "2021-06-24T11:14:03Z")

</div>

我的知识局限在于，它并未按描述运行，以及如何通过查看代码找出哪些图标能正常工作 🙂

---

<div class="post-metadata">

**Author:** ![manuel](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/manuel/32/468169_2.png) [@manuel](https://meta.discourse.org/u/manuel)\
**Post date:** [2021年六月24日 11:32 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/146 "2021-06-24T11:32:22Z")

</div>

我认为实心图标的变量名通常是不带前缀实现的。你试过直接用 `building` 吗？

---

<div class="post-metadata">

**Author:** ![Ralf\_Stockmann](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ralf_stockmann/32/505867_2.png) [@Ralf\_Stockmann](https://meta.discourse.org/u/Ralf_Stockmann)\
**Post date:** [2021年六月24日 11:53 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/147 "2021-06-24T11:53:19Z")

</div>

是的，当然。但毫无成效。  
我想只有 fas- 的一小部分子集随 Discourse 一起发布。

---

<div class="post-metadata">

**Author:** ![manuel](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/manuel/32/468169_2.png) [@manuel](https://meta.discourse.org/u/manuel)\
**Post date:** [2021年六月24日 12:02 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/148 "2021-06-24T12:02:40Z")

</div>

对我有效……默认包含了一个子集（你可以在 /styleguide/atoms/icons 下看到）。其他图标需要你先添加，可以在管理设置中，也可以在组件本身中添加，就像这个例子：

 ![Screenshot from 2021-06-24 12-58-44](https://global.discourse-cdn.com/meta/original/3X/5/a/5a15f29db6a640cd2d0610fe7a029cfe312c96bb.png)

---

<div class="post-metadata">

**Author:** ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)\
**Post date:** [2021年六月24日 12:43 UTC](https://meta.discourse.org/t/custom-header-links-icons/86307/149 "2021-06-24T12:43:39Z")

</div>

我也让它工作了（在 SVG 图标和主题组件中使用了"building"）——显示的是图标的实心版本 👍 我可能得收回之前的话（我仍然_几乎_确定_有些_本该正常工作的东西并没有起作用……）

[上一頁](https://meta.discourse.org/t/custom-header-links-icons/86307.md?page=2)

[下一頁](https://meta.discourse.org/t/custom-header-links-icons/86307.md?page=4)
