Custom Header Links (icons)

:discourse2: Summary Custom Header Links (icons) will allow you to easily add linked icons to the Discourse header.
:eyeglasses: Preview Preview on Discourse Theme Creator
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-icon-header-links
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Features

Screenshots

Desktop

Mobile

Settings

This component includes a theme setting that allows you to add as many links as you want, determine their icons, and decide which devices they show up on!

Name Descriptions
header links List of links with the following properties: title, icon, URL, view and target
add whitespace If checked, this will add some whitespace between the default Discourse header icons and the custom icons added via this component
Svg icons Include FontAwesome 6 icon classes for each icon used in the list.

Notes:

If the icon you want to use does not show up, then add it to the svg_icons setting in the component. If you add new icons, they need to be prefixed with FontAwesome 6 prefixes like fab, far and fas.

Credits

This is based on @techAPJ’s awesome tutorial here: (Superseded) Add new link on header beside search icon, and on @vinothkannans’s Brand header theme which was a great reference for the structure of this component.


:discourse2: Hosted by us? Theme components are available to use on our Standard, Business, and Enterprise plans.

Last edited by @Moin 2025-07-19T08:10:47Z

Check documentPerform check on document:
93 лайка
How are theme setting fields created?
Discourse Mingle
Header Submenus
Can I add a icon and link back to my homesite at the top bar
Login Required activated - after successfull login it transfers you to nonexisting page
Introducing Font Awesome 5 and SVG icons
Add custom buttons at the top of the site
How to use my own SVG icons in Custom Header Links theme component?
Adding a custom Link/Icon to the discourse header
Show "new topic" when not logged in
Help changing Help Guide Permalink
Customize the header with links, icons, or menus
Updated Custom Header Icon: Post Data via URL
Nextcloud support
(deprecated) Plugin outlet locations theme component
User custom field toggle for sidebar (SFW Mode)
Custom Homepage for Groups
Disclaimer section on the "about" page
Generic URL for private messages?
Add button in header for logged in users
Use decorateWidget to add text link to header
Visiting /admin/upgrade may lead to a server error
How to add a directory of people/businesses to my theme?
How to make Navbar SVG icons white?
How to make Navbar SVG icons white?
Add a link to user profile in the navigation
Adding icons rather than text
Clickable Social Icon Links on Profile
Create hyperlink from home logo
Upcoming Header Changes - Preparing Themes and Plugins
Left side hamburger menu on mobile
Air Theme
How to Integrate a Custom Plugin in discourse UI
How to Disable ALL User-to-User DMs/Chat without breaking Other Features?
Custom Header Links
Disable personal message between members
How to add a link icon to the header
How to remove iconified header links from mobile?
Header icons color on mouse hovering issue
Link on Top header to Go to Home page of main site
Missing custom header link icon after update
Upcoming Header Changes - Preparing Themes and Plugins
How to add a "button" which composes a pre-filled topic
[PAID] Moving the Anonymous icon onto the header
Category for Threads with zero replies?
Plugin: add a menu icon (next to search)
Discourse Mingle
Introducing Font Awesome 5 and SVG icons
Introducing Font Awesome 5 and SVG icons
Adding a link into the mobile header
How to create a dynamic header link?
How can I add a button to the header?
Looking for a freelancer to implement a custom Discourse theme (based on an existing mockup)
Problem with beta6: Header Link Theme Component no longer working
Discourse messaging guide for new users
Insert Link to External Website
My 2nd Discourse forum, 2 years after the first one
Custom Buttons with own functions
Link to external site remains in forum context somehow
Is it possible to add an icon to create New Topic in the navbar?
Is it possible to add an icon to create New Topic in the navbar?
Custom Admin Toolbox
2021: The Year in Review
External Links Icon
How to use my own SVG icons in Custom Header Links theme component?
Customizing your site with existing theme components

У меня возникла аналогичная проблема, о которой упоминали несколько человек выше: иконка не отображается, но кнопку всё ещё можно нажать. Я внес изменения в настройку иконки, указав, например, «fab-facebook-f» вместо просто «facebook-f». Для Twitter и моего другого сайта проблем нет, но для Facebook и LinkedIn это по-прежнему не работает.

Я разобрался с Facebook, но LinkedIn всё ещё не получается. Также есть ли способ создать пользовательскую иконку? Могу ли я загрузить логотип своей компании и использовать его в качестве иконки?

У меня тоже — с иконкой Discord.

Почему в последней версии у меня нет раздела «svg-иконки»?

У меня вот что:

Этот скриншот настроек похож на компонент Custom Header Links - #84, который предназначен для отображения текстовых ссылок, а не иконок.

Я понимаю, почему названия компонентов могут сбивать с толку:

  • https://github.com/discourse/discourse-header-links — ссылки с иконками (эта тема)
  • https://github.com/discourse/discourse-custom-header-links — текстовые ссылки (Custom Header Links)

Может быть, стоит добавить слово «иконка» в название этого компонента, @Johani?

4 лайка

А, это действительно решило проблему. Да, очень запутанно. Переименование было бы отличным решением!

РЕДАКТИРОВАНИЕ: В недавнем обновлении также, похоже, незаметно изменили имя класса Discord, добавив в него префикс fab- (например, если вы хотите изменить цвет иконок; это было бы отличной нативной функцией для @OP — довольно трудно было заметить).

1 лайк

Для LinkedIn вы можете использовать fab-linkedin в качестве имени иконки в этом настройке

но поскольку эта иконка не включена в стандартный набор иконок, используемый Discourse, вам также нужно добавить её в другую настройку компонента.

У меня результат выглядит так

Конечно, в этой теме есть раздел о добавлении пользовательских иконок.

После настройки вы сможете использовать любые пользовательские иконки, добавленные в этот компонент темы. Пожалуйста, ознакомьтесь с этим и дайте знать, если возникнут какие-либо проблемы.

Я внес это изменение вместе с несколькими другими улучшениями реализации здесь

Новое обновление добавляет уникальные префиксированные классы к каждой ссылке на основе используемого вами заголовка. Таким образом, например, если вы используете

facebook, fab-facebook, https://facebook.com, vdm, blank

ссылка будет иметь класс

header-icon-facebook

Шаблон — header-icon-НАЗВАНИЕ-ИКОНКИ

Который затем можно настроить с помощью CSS следующим образом

.d-header-icons {
  .header-icon-facebook svg {
    fill: #4267b2;
  }

  .header-icon-twitter svg {
    fill: #1da1f2;
  }

  // добавьте больше иконок здесь
}

что приведёт к результату, похожему на этот

цветные иконки

4 лайка

Спасибо за вашу помощь. Я пробовал использовать «fab-linkedin» в категориях «Ссылки в заголовке» и «SVG-иконки». Как видно на скриншоте, по какой-то причине это всё ещё не работает.

Серый круг — это место, где должен быть логотип LinkedIn. Есть ли какие-то другие идеи, как это исправить?

Я не совсем уверен, почему это не работает. Вот как выглядят мои настройки:

Facebook, fab-facebook, https://facebook.com, vdm, blank
Twitter, fab-twitter, https://twitter.com, vdm, blank
LinkedIn, fab-linkedin, https://www.linkedin.com, vdm, blank

и

fab-facebook
fab-linkedin
fab-twitter

а вот что я вижу:

Не могли бы вы попробовать то же самое для иконки LinkedIn и сообщить, сохраняется ли ваша проблема?

1 лайк

Вот что я пробовал, и я также пробовал разные иконки. Вот как это выглядит сейчас.

Настройки:

Веб-сайт:

Работают только те, которые не используют «fab-», что кажется странным. Дайте знать, что вы думаете.

Привет, Мишель!

Поскольку вы наш клиент, я зашел на ваш сайт, проверил его и исправил проблему за вас. Я обновил компонент темы и настроил правильные параметры для иконок — теперь они должны работать без сбоев.

5 лайков

Теперь выглядит отлично, спасибо!

2 лайка

Ещё один вопрос/запрос: изначально эти ссылки открывались в отдельной вкладке, но теперь они открываются в той же. Настройка уже установлена на «blank», как ещё можно это изменить?

2 лайка

Похоже на регрессию, мы разберёмся и скоро выпустим исправление.

1 лайк

Действительно. Я случайно упустил атрибут target в последних изменениях.

С вашей стороны никаких действий не требуется. Я исправил компонент и обновил его на вашем сайте. Так что всё должно быть готово. Спасибо за сообщение об ошибке :+1:

7 лайков

Привет,

Пользовательские иконки находятся справа от кнопки входа и регистрации, но, на мой взгляд, они лучше смотрелись бы слева, как это обычно бывает.

image

image

3 лайка

Я могу заставить работать некоторые иконки версии 4.7.0 из Font Awesome Icons, просто введя их название (например, car) в соответствующем разделе «Ссылки в заголовке». Некоторые иконки не отображаются (например, fa-comments-o). Для некоторых не нужно использовать «SVG-иконки» (например, home), а для некоторых это требуется (например, car).

Ни одна из иконок версии 5, которые я пробовал из Find Icons with the Perfect Look & Feel | Font Awesome, не заработала. Я вставлял имена с префиксом fa- в разделы «Ссылки в заголовке» и «SVG-иконки», но безрезультатно. Однако иконки fab-facebook (и другие), которые были там по умолчанию, работают.

Что я делаю не так?

Редактирование: Я исправил первый абзац для большей точности.

Большое спасибо за это, @Johani. Работает как по маслу и даёт мне «эстетичное» решение для ссылки «вернуться на сайт» (в моём случае).Однако я столкнулся с проблемой, так как также использую компонент Боковое гамбургер-меню на мобильных устройствах, из-за чего всё в этой части .d-header ломается

Есть ли идеи, как заставить оба компонента работать вместе? Буду очень признателен за помощь.

У меня тоже возникла проблема с отображением иконки. Не уверен, что я делаю не так. Вот что у меня указано в настройках:

А в итоге получается следующее:

Для иконки книги попробуйте без fas-

2 лайка