Sincronizar usuarios de WordPress con Brevo

Sincronizar usuarios de WordPress con Brevo

Tabla de Contenidos

También te puede interesar como integrar Brevo con Contact Form 7

Parece que no, pero Brevo (Anteriormente llamado Sendinblue) esta cogiendo puestos como un CRM con versatilidad y fácil manejo. En este post vamos a ver como sincronizar usuarios de WordPress con Brevo añadiendo una función en nuestro template. Justamente en functions.php

Al fin y al cabo meter codigo dentro de nuestro functions nos permite crear los plugins que necesitamos y ejecutarlos en el momento adecuado enganchandolos a las acciones de WordPress

¿Para que una sincronización de usuarios de WordPress con Brevo?

Al sincronizar los usuarios de WordPress con Brevo, es posible tener un único sistema centralizado de información de los empleados.

Por ejemplo, si una empresa utiliza WordPress (con o sin WooCommerce) para su sitio web y Brevo para la gestión del personal, la sincronización permitiría que los usuarios registrados en WordPress sean automáticamente agregados o actualizados en Brevo.

Código para sincronizar usuarios de WordPress con Brevo

Para agregar este código puedes ir al archivo functions.php de tu template o tema principal (o child). 

// Función para importar usuarios a Brevo
function importar_usuario_brevo($user_id) {
	// Define las credenciales de la API de Brevo
	$brevo_list_id = xxx;
	$brevo_api_key = 'Tu API de Brevo';
	// Obtiene los datos necesarios del usuario
	$user_info = get_userdata($user_id);
	$user_role = implode(', ', $user_info->roles); // Obtiene los roles del usuario
	// Crea el arreglo de datos para enviar a Brevo
	$data = array(
		'email' => $user_info->user_email,
		'attributes' => array(
			'NOMBRE' => $user_info->first_name,
			'APELLIDOS' => $user_info->last_name,
			'NICKNAME' => $user_info->nickname,
			'EJEMPLO_ATRIBUTO2' => $user_info->EJEMPLO_META_KEY2,
		),
		'listIds' => array($brevo_list_id),
		'updateEnabled' => true,
	);
	// Envía los datos a Brevo mediante una petición POST
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, 'https://api.brevo.com/v3/contacts');
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_HTTPHEADER, array(
		'Content-Type: application/json',
		'api-key: '.$brevo_api_key,
	));
	$response = curl_exec($ch);
	curl_close($ch);
}
// Agrega la función al hook de registro y actualización de usuario en WordPress
add_action('user_register', 'importar_usuario_brevo');
add_action('profile_update', 'importar_usuario_brevo');

Modifica el código para sincronizar a tu manera

Para empezar vas a necesitar saber el ID (Numero de identificación) de la lista de usuarios de Brevo donde vas a guardas a tus datos. Recuerda tener localizados los atributos y los meta_key que quieras integrar. Te adjunto unas imagenes para tenerlos localizados en tu dashboard de Brevo.  Puedes acceder a tus listas de Brevo aquíAccede a tu API de Brevo desde aquí.

La función importar_usuario_brevo permite sincronizar usuarios de WordPress con Brevo, una plataforma de gestión de contactos y automatización de marketing.

El código comienza definiendo las credenciales de la API de Brevo, incluyendo el ID de la lista en la que se deben agregar los usuarios y la clave de API necesaria para autenticar la conexión.

Luego, se obtienen los datos necesarios del usuario que se está registrando o actualizando su perfil, utilizando la función get_userdata. Estos datos incluyen el correo electrónico, nombre, apellido, apodo y cualquier otro atributo de usuario personalizado que se haya creado en WordPress.

A continuación, se crea un arreglo de datos que se enviará a Brevo mediante una petición POST. Este arreglo incluye las siguientes propiedades:

  • email: el correo electrónico del usuario, que es la clave principal para identificar contactos en Brevo.
  • attributes: un sub-arreglo que contiene otros datos relevantes sobre el usuario, como su nombre completo y cualquier otro atributo personalizado.
  • listIds: una matriz que indica a qué lista(s) de Brevo se debe agregar el contacto.
  • updateEnabled: un valor booleano que indica si se deben actualizar los datos existentes del contacto en lugar de crear uno nuevo si ya existe un contacto con el mismo correo electrónico en Brevo.

Finalmente, se utiliza la función curl_init para enviar los datos a Brevo a través de la API. Se define la URL de la API, se configura la petición POST con los datos enviados anteriormente en formato JSON y se agregan las credenciales de autenticación en los encabezados. Luego, se ejecuta la petición y se cierra la conexión.

Para asegurarse de que la función se ejecute cuando se registra o actualiza un usuario en WordPress, se agregan dos acciones al hook de registro y actualización de usuario: user_register y profile_update. Esto asegura que cada vez que se cree o actualice un usuario en WordPress, se sincronizará automáticamente con Brevo.

5 2 votos
Article Rating
Subscribirse
Notificacion de
guest
0 Comments
Feedbacks en línea
Ver todos los comentarios