Мы хотим, чтобы пользователи выбирали свой язык как при первой регистрации в сообществе, так и при входе в систему. Как нужно адаптировать настройки? У нас есть приветственное сообщение на двух языках, и мы хотели бы предоставить пользователю возможность выбора языка отображения.
Если вы включите настройки Discourse «Разрешить выбор локали пользователем» и «Устанавливать локаль из заголовка Accept-Language» (обе находятся в верхней части раздела «Базовая настройка»), то при первой регистрации на сайте язык пользователей будет автоматически установлен в соответствии с локалью, заданной в их веб-браузере. Во многих случаях этого достаточно для корректного определения языка пользователя.
В Discourse нет опции, позволяющей пользователям вручную выбирать свой язык при регистрации аккаунта. Однако я понимаю, что для некоторых сайтов это может быть полезной функцией.
Пока включена настройка сайта «Разрешить выбор локали пользователем», пользователи могут изменить свою локаль после регистрации. Это делается в разделе «Интерфейс» на странице настроек пользователя:
Существуют обсуждения на Meta о многоязычных сайтах. В этой теме есть несколько идей, которые могут оказаться полезными: Structuring a multilingual community.
отличная реализация. Как ты создал эту форму регистрации? Она выглядит очень профессионально! Наш текущий процесс регистрации очень базовый. Форма регистрации, которую ты создал, создает ощущение эксклюзивности! Также было бы очень приветливо для разнообразных пользователей выбрать свой язык и страну происхождения. И вопрос о том, откуда пользователь узнал о нас, тоже отличный!
Это реализовано в WordPress с помощью плагина wp-discourse и Gravity Forms. Есть некоторый пользовательский код, отвечающий за синхронизацию предпочитаемого языка интерфейса. @hudsonwebdev, возможно, готов это объяснить.
@roomer Извините за задержку. Как уже упоминал Тобиас, это комбинация WordPress и Gravity Forms. Gravity Forms позволяет «подключаться» к отправке формы. Когда форма Gravity Forms отправляется, вы указываете ей выполнить фрагмент кода, который вы написали в файлах вашей темы или плагина. Этот код обычно состоит из PHP с использованием оператора CURL для подключения к API Discourse. Вы можете отправлять информацию, собранную в вашей форме Gravity Forms, непосредственно в Discourse.