Ya como saben, Mailchimp es un proveedor de servicios de marketing por correo electrónico y el nombre de la empresa que lo opera, fundada en el año 2001 y en este artículo te voy a mostrar una forma sencilla de procesar suscripciones a tu lista de correos desde wordpress.
Bueno, básicamente vamos a necesitar:
- Un formulario html que solo va a tener un input y un botón, algo así:
<form action="<?php _e(site_url('/process-mailchimp')) ?>" method="POST">
<input type="email" name="email">
<button type="submit">Suscribirme</button>
</form>
- Un archivo php que va a contener lo siguiente
<?php
/**
* Template Name: Process Mailchimp
*/
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit;
if ( ! empty( $_POST ) ) {
$email = sanitize_email($_POST['email']);
$listId = '4c0d2XXXX1';
$apiKey = 'XXXXXXXXXXXXXXXXXXXXXXXXXX-us7';
$url = 'https://us7.api.mailchimp.com/3.0/lists/'. $listId .'/members';
$json = json_encode([
'email_address' => $email,
'status' => 'subscribed', //pass 'subscribed' or 'pending'
]);
$args = [
'headers' => [
'content-type' => 'application/json',
'accept' => 'application/json',
'cache-control' => 'no-cache',
'Authorization' => 'apikey ' . $apiKey
],
'body' => $json
];
$mailchimpResponse = wp_remote_post($url, $args);
// wp_redirect(site_url('/thank-you/'));
} else {
wp_redirect('https://google.com');
}
- Una página donde mostrarle al usuario que su suscripción fue procesada y eso sería algo más o menos así:
<?php
/**
* Template Name: Blank Page Template
*/
// Exit if accessed directly.
defined( 'ABSPATH' ) || exit;
?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="http://gmpg.org/xfn/11">
<?php wp_head(); ?>
</head>
<body>
<h1>Su suscripciónn fue procesada correctamente</h1>
</body>
</html>
Cosas para tener en cuenta:
- tienes que crear una página que sirva como ruta para la acción del formulario usando la plantilla que puse arriba
- cambia la redirección a la página de agradecimiento usando el slug correspondiente