На этих выходных я настроил WP Discourse, чтобы автоматически создавать учётные записи Discourse для всех, кто совершает покупку в WooCommerce. Всё заработало, и я был очень горд собой. Я даже настроил Zapier для автоматического добавления таких пользователей в группу. Но сегодня утром некто по имени Франсуа совершил покупку, и его учётная запись в Discourse не была создана.
Я проверил, работает ли всё для Chris Smith. Да, работает.
Я проверил, работает ли для Chrisç Smith. Не работает. То есть проблема в букве «c» с волнистой чертой.
Пользователь был добавлен как пользователь WordPress с именем, использующим обычную «c» без волнистой черты. В Discourse он не был добавлен.
Можно ли это исправить, или мне следует добавить его в Discourse вручную? Если я добавлю его вручную, будут ли его данные для входа синхронизироваться между WordPress и Discourse?
При отключенном SSO я могу создать учетную запись Discourse с именем пользователя François. Однако создать учетную запись WordPress с таким именем не получается. На WordPress появляется сообщение об ошибке: «Это имя пользователя недопустимо, так как содержит недопустимые символы. Введите корректное имя пользователя».
Используете ли вы плагин на вашем сайте WordPress для поддержки дополнительных символов в именах пользователей?
Я не использую никаких специальных плагинов для поддержки дополнительных символов, но система всё же создала имя пользователя для этого человека, просто без специального символа: francois.xxx. Что-то изменило ç на c.
Я использую WooCommerce, и именно на странице оформления заказа WooCommerce пользователи вводят свои данные для создания учётной записи. Я требую от них создать учётную запись.
Похоже, что WooCommerce удаляет недопустимые символы из имени пользователя. Может ли пользователь с именем francois.xxx войти в Discourse? Вход в Discourse должен создать для него учетную запись.
Не знаю, смогут ли они. Я не очень хочу подвергать нового клиента таким испытаниям, но попробую со своим именем пользователя chrisç и посмотрю, что получится. Я точно знаю, что когда в имени есть этот символ, они не добавляются в мой список пользователей в Discourse.
Вы можете попробовать создать учетную запись с временным адресом Gmail для тестирования.
Если вы включите настройку «Создавать или синхронизировать пользователей Discourse при входе» на вкладке провайдера SSO WP Discourse, учетные записи Discourse будут автоматически создаваться для пользователей WordPress при входе в WordPress.
Если вы добавляете пользователей в группы Discourse через Zapier, запрос завершится ошибкой, если пользователь еще не существует в Discourse. Лучший способ избежать проблем в этом случае — добавлять пользователей в группы с помощью SSO. Однако настройка этого процесса требует некоторых технических знаний: Управление членством в группах Discourse с помощью WP Discourse.