Двусторонняя синхронизация между именем пользователя WP Discourse и именем пользователя Discourse?

Несколько вопросов и некоторые заметки

Однако при новых регистрациях они будут совпадать, поскольку вы используете DiscourseConnect. Я предполагаю, что вас это устраивает, и вас беспокоит только сама синхронизация (т. е. после создания аккаунта)?

Как вы представляете ситуацию, когда пользователь создаёт аккаунт в WordPress, но ещё не входил в Discourse? Аккаунта в Discourse тогда не существует. В таком случае поле «Имя пользователя Discourse» не будет редактируемым?

Обратите внимание, что вебхук «Обновить данные пользователя» (см. раздел «Вебхуки» в настройках WP Discourse) будет обновлять имя пользователя Discourse в WordPress, когда оно изменено в Discourse. Это одна из сторон двусторонней синхронизации, которую вы имеете в виду.

Таким образом, конкретно то, что вам нужно, — это чтобы плагин WP Discourse обновлял имя пользователя в Discourse при его изменении, верно?

Теперь о том, что это поле используется разными людьми для разных целей. Некоторые хотят иметь возможность редактировать это поле без изменения имени пользователя в Discourse, связанного с аккаунтом, который они используют через DiscourseConnect.

Однако существует относительно простое решение. Мы могли бы просто добавить action где-то здесь здесь, чтобы вы могли использовать PUT-запрос к Discourse для обновления имени пользователя в Discourse, то есть так, как вы делаете сейчас. Я бы просто добавил, что самый простой способ сделать это — использовать абстрагированный метод discourse_request из утилит плагина WP, то есть:

use WPDiscourse\Utilities\Utilities as DiscourseUtilities;
$path = ''
$args =  array(
);
$response = DiscourseUtilities::discourse_request( $path, $args );

Используя как вебхук, так и обратный вызов action, вы получите двустороннюю синхронизацию так, как вы себе представляете, при условии, что вы учли два вопроса, которые я поднял выше.

С радостью рассмотрю и приму PR с добавлением action по такому принципу.