Ce plugin vous permet de synchroniser les adhésions WooCommerce avec les groupes Discourse.
Prérequis
Pour que cela fonctionne, vous devez avoir DiscourseConnect activé, avec soit WordPress, soit Discourse comme fournisseur DiscourseConnect.
Étapes
-
Installez ce plugin WordPress GitHub - paviliondev/discourse-woocommerce · GitHub.
-
Utilisez l’éditeur de thème WordPress pour mettre à jour ces valeurs avec l’
plan_idWooCommerce et l’idet legroup_namedu groupe Discourse que vous souhaitez synchroniser :$member_group_map[] = (object) array('plan_id' => 51, 'group_id' => 43, 'group_name' => 'group1'); $member_group_map[] = (object) array('plan_id' => 62, 'group_id' => 44, 'group_name' => 'group2');Vous pouvez ajouter autant d’entrées que vous le souhaitez (ou supprimer celles existantes).
-
Les identifiants de plan d’adhésion WooCommerce se trouvent dans l’URL lors de la modification du plan dans WordPress : https://site/wp-admin/post.php?post=441&action=edit
-
L’identifiant du groupe Discourse se trouve ici : Login | HSTS Redirection Community
-
Étape facultative
- Installez WP Crontrol – plugin WordPress | WordPress.org et programmez
run_full_wc_membership_syncpour s’exécuter toutes les 24 heures. Cela effectuera une synchronisation complète afin d’assurer la cohérence.
Notes techniques
La seule méthode fiable pour capturer à la fois la création d’une adhésion et le changement de statut dans WooCommerce consiste à utiliser le hook d’administration wc_memberships_user_membership_saved. Vous pouvez l’utiliser en combinaison avec le hook wc_memberships_user_membership_status_changed, mais cela ne devrait pas être nécessaire.
Ce code utilise le journal de WooCommerce pour enregistrer des informations dans /wp-content/uploads/wc-logs/{log_file}. Si cela ne fonctionne pas, vérifiez la sortie à cet endroit. Vous verrez des journaux ressemblant à ceci, qui montrent les étapes de la logique :
2019-05-23T07:01:57+00:00 INFO Exécution de handle_wc_membership_saved 1, 92, 1
2019-05-23T07:01:57+00:00 INFO L'adhésion de angus@email.com à VIP Membership a changé pour wcm-active
2019-05-23T07:01:57+00:00 INFO Envoi d'une requête PUT vers http://localhost:3000/groups/41/members avec angus@email.com
2019-05-23T07:01:57+00:00 INFO Réponse de Discourse : 200 OK
Notes d’utilisation
La synchronisation ne fonctionnera pas si vous cliquez sur « Supprimer l’adhésion de l’utilisateur » dans le panneau d’administration WordPress. Aucun hook WooCommerce ne se déclenche lors de cette action. Modifiez plutôt le statut de l’adhésion.


