Zwei-Wege-Synchronisierung zwischen WP Discourse-Benutzernamen und Discourse-Benutzernamen?

Ein paar Fragen und einige Anmerkungen

Bei Neuanmeldungen sind sie jedoch gleich, da Sie DiscourseConnect verwenden. Ich gehe davon aus, dass Sie damit einverstanden sind und sich nur um die Synchronisierung an sich sorgen (d. h. nach der Kontoerstellung)?

Wie stellen Sie sich den Fall vor, dass ein Benutzer ein WordPress-Konto erstellt und sich noch nicht bei Discourse angemeldet hat? Es wird kein Discourse-Konto existieren. In diesem Fall wäre das Feld „Discourse-Benutzername“ nicht editierbar?

Beachten Sie, dass der Webhook „Benutzerdaten aktualisieren“ (siehe „Webhooks“ in den WP Discourse-Einstellungen) den Discourse-Benutzernamen in WordPress aktualisiert, wenn er in Discourse geändert wird. Das ist ein Teil der Zwei-Wege-Synchronisierung, die Sie sich vorstellen.

Sie möchten also speziell, dass das WP Discourse-Plugin den Discourse-Benutzernamen des Benutzers aktualisiert, wenn er sich ändert, ja?

Nun, dieses Feld wird von verschiedenen Personen für unterschiedliche Zwecke verwendet. Einige Personen möchten dieses Feld bearbeiten können, ohne den Benutzernamen des Discourse-Benutzers zu aktualisieren, der mit dem Konto verknüpft ist, das sie mit DiscourseConnect verwenden.

Es gibt jedoch eine relativ einfache Lösung. Wir könnten einfach eine Aktion irgendwo hier hier hinzufügen, damit Sie eine PUT-Anfrage an Discourse senden können, um den Benutzernamen in Discourse zu aktualisieren, d. h. so, wie Sie es jetzt tun. Ich würde nur hinzufügen, dass der einfache Weg dazu die Verwendung der abstrahierten discourse_request-Methode in den Dienstprogrammen des WP-Plugins ist, d. h.

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

Durch die Verwendung sowohl des Webhooks als auch des Aktions-Callbacks hätten Sie eine Zwei-Wege-Synchronisierung auf die von Ihnen vorgesehene Weise, vorausgesetzt, Sie haben die beiden von mir aufgeworfenen Fragen berücksichtigt.

Gerne überprüfe und merge ich einen PR mit einer zusätzlichen Aktion in dieser Richtung.

4 „Gefällt mir“