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