Замечаю, что эта функция уже в работе (хотя, конечно, экспериментальная)! Отлично! В исходном посте можно было бы добавить об этом примечание.
Также стоит упомянуть, что значок глобуса отображается только для @staff:
Я узнал об этом только после того, как сумел скрыть его с помощью CSS, решив, что он будет выглядеть нелепо для обычных пользователей!
В настоящее время это видно всем, а редактировать могут @staff. Ограничить доступ только для администраторов нельзя, но такая опция была бы очень полезна.
В настоящее время (по крайней мере, пока функция находится в стадии экспериментов) вы можете выбрать, кто может видеть (и редактировать) пользовательские ссылки, но настройки не позволяют детально управлять редактированием глобальных ссылок.
Из этих трёх вариантов не подходят только ссылки, начинающиеся с /my. Однако, похоже, существует преднамерённый белый список. Обратите внимание, что пути, добавляемые плагинами, также не включены (например, с плагином Custom Wizard Plugin — /w).
Вы можете поэкспериментировать с этим на Meta — поведение точно такое же, как для личных ссылок.
Большое спасибо за подтверждение. Ссылки /my/* представляют собой довольно важное ограничение для моих задач. В данный момент я использую вариант этого кода для добавления пользовательских ссылок в боковую панель:
Приведённый выше пользовательский код всё ещё немного нестабилен (пользовательские ссылки исчезают, если размер браузера изменить с узкого на широкий и обратно), поэтому я предпочёл бы использовать официальное решение Discourse. Но интересно, не мог бы я использовать этот код как временное решение для добавления ссылок /my/* в официальное пользовательское меню Discourse?
Странно, что ссылки /my заблокированы, ведь можно ссылаться на версии /u/{username}, по крайней мере, для всех, которые я пробовал.
РЕДАКТИРОВАНИЕ: Добавлен скриншот, и приношу извинения Falco — я просто использовал его имя пользователя, чтобы показать это, так как это первое валидное имя, которое пришло мне в голову
Дорогая команда — вы (надеюсь) в какой-то момент разрешите адреса /my. Я хотел бы попросить ещё об одном: /safe-mode
Это немного облегчило бы использование DiscourseHub, когда что-то идёт не так, так как сменить URL почти невозможно. И если бы я и мы могли создать раздел администратора, где была бы быстрая ссылка на безопасный режим среди других ярлыков, это было бы… приятно. Конечно, всегда есть возможность использовать браузер, но это требует больше кликов
Это уже полностью реализовано? Я могу создать глобальный раздел, но он виден только членам групп, для которых определены права на изменение в enable_custom_sidebar_sections, а не как раздел только для чтения для всех пользователей (в разделе «Сделать этот раздел публичным и видимым для всех» стоит галочка).
Вы правы: и пользовательские разделы, и глобальные разделы доступны только пользователям из групп, указанных в настройке сайта enable_custom_sidebar_sections. Отдельных настроек для глобальных и пользовательских разделов нет. Вы можете включить эту функцию для всех, добавив все группы trust_level.
Извините, была ошибка на сенсорных устройствах, таких как мобильные телефоны и планшеты. Она должна быть исправлена. Не могли бы вы попробовать ещё раз?
Да, ссылки /my считаются внешними, поскольку для них требуется полная перезагрузка страницы. Поэтому поведение открытия в новой вкладке можно настроить на Discourse Meta - The Official Support Forum for Discourse с помощью параметра «Открывать все внешние ссылки в новой вкладке».
После изменения настройки, возможно, вам потребуется перезагрузить страницу.
А, интересно, спасибо за объяснение. Хотя я бы хотел, чтобы все внешние ссылки по умолчанию открывались в новой вкладке для всех пользователей, так что это не совсем идеально.
Интересно, есть ли способ добавить какой-то плейсхолдер, например $USER, и затем с помощью JavaScript подставлять вместо него /u/username активного пользователя?
А, понятно. Вы можете изменить поведение по умолчанию в Настройках сайта → Настройки пользователя → по умолчанию открывать внешние ссылки в новой вкладке.
Пользователи всё ещё могут переопределить настройку по умолчанию в своём профиле. Решает ли это проблему?
Да, но большинство пользователей предпочитает, чтобы внешние ссылки открывались в новой вкладке. Проблема с перезагрузкой для ссылок /my/* кажется немного сложной в решении, но, возможно, в будущем можно будет что-то сделать с помощью JS и переменной-заполнителя для пользовательского меню, чтобы мы могли напрямую ссылаться на /u/username/* в пользовательских меню.
Действительно? Не хочу звучать саркастично, но… есть ли исследования на эту тему?
Лично я считаю раздражающим, когда сайт отправляет ссылки в новую вкладку. Если я хочу новую вкладку, браузеры имеют простые способы сделать это, но обычно нет простого способа сказать «та же вкладка, игнорируйте настройки сайта».
И при отсутствии убедительных объективных данных мне приходится предполагать, что мои личные предпочтения универсальны, верно?