Aprobación automática de un subconjunto de usuarios de WordPress

Estoy seguro de que mi mejor enfoque está disponible aquí y estoy investigando en consecuencia, pero como usuario relativamente nuevo de Discourse (instalado hace unos días en mi propio VPS), espero que alguien pueda orientarme en la dirección correcta para el siguiente escenario.

Tengo una membresía basada en WordPress (WooCommerce, WooCommerce Subscriptions, WP Fusion, etc.). También vendo productos. En términos generales, mis clientes son: a) clientes habituales que optaron por crear una cuenta opcional al realizar su pedido, o b) miembros que se registraron en mi membresía. Un contacto también puede ser ambas cosas (cliente y miembro).

Mis suscriptores tienen el rol de “Suscriptor” en WordPress. Mis foros de Discourse están en un subdominio y tengo el SSO de WordPress funcionando correctamente. Sin embargo, lo que no tengo claro es el proceso de aprobación.

En la medida de lo posible, quiero gestionar el acceso al foro de forma automática; es decir, cuando alguien se registra en mi membresía, debe poder acceder al foro sin que yo tenga que aprobarlo manualmente. Es importante destacar que si solo son clientes habituales (sin membresía), NO quiero que sean aprobados; esto solo debe ocurrir para los suscriptores.

Además, cuando alguien cancele su membresía, quiero que su acceso al foro se revogue automáticamente.

¿Es todo esto factible y, de ser así, cuáles son los principios clave que debería investigar y probar?

Gracias.

PD: Estoy pensando en webhooks, pero quizás no sea necesario seguir por ese camino.

Si te sientes cómodo editando functions.php, buscar “woo membership” aquí debería darte la información que necesitas. Se requiere algo de trabajo personalizado para alinear tus membresías con los grupos de Discourse.

Consulta How to prevent some WP users from being able to login to Discourse.

Gracias @pfaffman y @simon por sus respuestas. Parece que podré encontrar una solución aquí en cuanto a la automatización completa.

Dado que planeo lanzar pronto y tengo muchas cosas que hacer para ello, sospecho que acabaré optando por algún tipo de aprobación masiva para mis miembros (todavía necesito verificar los mecanismos de esto). Luego, a medida que nuevos miembros se unan, los aprobaré manualmente, rechazando cualquier solicitud que no provenga de miembros.

Después de eso, podré profundizar un poco más en la actualización de mi plugin para integrarlo de manera más estrecha y automática. Mi volumen es suficientemente bajo por ahora, por lo que esto no debería ser un problema a corto plazo.

Gracias de nuevo.