Этот компонент темы перемещает переключатель языка из шапки в подвал боковой панели.
Зачем это изменение?
В стандартном макете Discourse шапка может быстро загромождаться, особенно в активных сообществах, которые добавляют пользовательские ссылки в шапку и т. д.
Переключатель языка — это по своей сути настройка типа «установил и забыл». Пользователи обычно выбирают предпочитаемый язык один раз и больше не меняют его.
Перемещение переключателя в подвал боковой панели очищает интерфейс шапки, сохраняя при этом легкий доступ к этой настройке, когда она действительно нужна.
Большое спасибо. Это сделано намеренно, чтобы выбор языка в подвале был доступен только авторизованным пользователям, или можно сделать так же и для гостей?
Судя по коду, для его отображения необходимо войти в систему. Но я задумался, не следует ли вместо этого использовать для логики настройку сайта Переключатель языка локализации контента (@Don)?
Изначально оно было настроено так, потому что гости часто посещают страницы, где боковая панель полностью скрыта системой (например, полноэкранный экран входа), что приводило к полному исчезновению переключателя языка для них.
Однако я успешно обновил логику, чтобы включить выбор языка и для гостей. Чтобы обеспечить бесперебойный пользовательский опыт, я реализовал динамическое решение:
И авторизованные пользователи, и гости будут видеть переключатель языка, аккуратно интегрированный в нижнюю часть боковой панели.
Система автоматически определяет отсутствие боковой панели и перемещает переключатель языка в шапку, гарантируя, что гости никогда не потеряют возможность изменить язык.
Если пользователь или гость вручную закроет боковую панель, переключатель останется скрытым, как и задумано, сохраняя шапку чистой.