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

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

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

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

<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, ссылка там тоже не работала.

Тогда я попробовал добавить завершающий слэш и использовать %{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

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

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

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

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

Да, всё верно :+1: