# Как добавить ссылки на настройки сайта в описание настроек моего компонента?

**URL:** https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531
**Category:** Development
**Created:** [02.Июнь.2025 11:50:02 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531 "2025-06-02T11:50:02Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [02.Июнь.2025 11:50:03 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/1 "2025-06-02T11:50:03Z")

</div>

На самом деле, я думал, что знаю, как это сделать, потому что несколько раз переводил что-то вроде `<a href="/admin/site_settings/category/all_results?filter=top_menu">настройка верхнего меню сайта</a>`, и всё работало 🎉.  
Но тесты не проходят, потому что ссылки без `%{base_path}` или `%{base_url}` не допускаются.

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/d/8/ad8f193a4e82f26af1065f21eb3ce6b2a56c1cbe.png)

Поэтому я поискал пример и нашёл его здесь:

> <https://github.com/discourse/discourse-homepage-feature-component/blob/0d4a895d8913a3f55e68667255be9ad3a869eb56/locales/en.yml#L7C61-L7C72>

Я скопировал это:

`<a href="%{base_url}/admin/site_settings/category/all_results?filter=top_menu">настройка верхнего меню сайта</a>`

Но тогда ссылка не сработала. Она превратилась в `https://example.discourse.group/%%7Bbase_url%7D/admin/site_settings/category/all_results?filter=top_menu`

Когда я установил [Homepage Feature](https://meta.discourse.org/t/homepage-feature-component/144264), ссылка там тоже не работала.

> [@Discourse](#):
>
> ![Screen Shot 2020-03-13 at 5.07.13 PM](https://global.discourse-cdn.com/meta/original/3X/3/2/3223b2bdb9ad08c38be8567ebc7c49a8d93ad3d4.png)

Тогда я попробовал добавить завершающий слэш и использовать `%{base_url}`, но ни один из вариантов не сработал.

`<a href="/%{base_url}/admin/site_settings/category/all_results?filter=top_menu">настройка верхнего меню сайта</a>` ведёт на `https://example.discourse.group/admin/customize/themes/%%7Bbase_url%7D/admin/site_settings/category/all_results?filter=top_menu`

`<a href="%{base_path}/admin/site_settings/category/all_results?filter=top_menu">настройка верхнего меню сайта</a>` ведёт на `https://example.discourse.group/admin/customize/themes/%%7Bbase_path%7Dadmin/site_settings/category/all_results?filter=top_menu`

`<a href="/%{base_path}/admin/site_settings/category/all_results?filter=top_menu">настройка верхнего меню сайта</a>` ведёт на `https://example.discourse.group/%%7Bbase_path%7D/admin/site_settings/category/all_results?filter=top_menu`

Но мне так и не удалось найти рабочее решение.

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [12.Июнь.2025 17:20:56 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/3 "2025-06-12T17:20:56Z")

</div>

После слияния этого PR вы сможете использовать `%{base_path}` в описаниях настроек темы:

> <https://github.com/discourse/discourse/pull/33180>
>
> This brings them in line with site setting descriptions

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [16.Июнь.2025 14:07:00 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/4 "2025-06-16T14:07:00Z")

</div>

Основное изменение уже влито, и я создал PR для исправления компонента темы «функция главной страницы»:

> <https://github.com/discourse/discourse-homepage-feature-component/pull/58>
>
> \`base\_url\` was never supported in theme setting descriptions. \`base\_path\` now is… - see https://meta.discourse.org/t/368531

---

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [16.Июнь.2025 14:47:25 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/5 "2025-06-16T14:47:25Z")

</div>

Поскольку относительные ссылки в описании настроек моего компонента в настоящее время работают, я предполагаю, что мне следует зафиксировать версию в `compatibility`, чтобы они продолжали работать для тех, кто не обновляет Discourse одновременно. Я полагаю, вы не зафиксировали версию, потому что ссылки раньше все равно не работали — так ли это?

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [16.Июнь.2025 14:55:45 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/6 "2025-06-16T14:55:45Z")

</div>

Да, всё верно 👍

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [16.Июль.2025 14:56:38 UTC](https://meta.discourse.org/t/how-do-i-add-links-to-site-settings-into-the-settings-description-of-my-component/368531/7 "2025-07-16T14:56:38Z")

</div>

Эта тема была автоматически закрыта через 30 дней после последнего ответа. Новые ответы больше не принимаются.
