Vous devez utiliser le code côté serveur afin de sécuriser votre compte MailChimp.
Ce qui suit est une version mise à jour de cette réponse qui utilise PHP :
Les fichiers PHP sont «sécurisés» sur le serveur où l'utilisateur ne les voit jamais mais le jQuery peut toujours accéder et utiliser.
1) Téléchargez l'exemple de PHP 5 jQuery ici ...
http://apidocs.mailchimp.com/downloads/mcapi-simple-subscribe-jquery.zip
Si vous n'avez que PHP 4, téléchargez simplement la version 1.2 du MCAPI et remplacez le MCAPI.class.php
fichier correspondant ci-dessus.
http://apidocs.mailchimp.com/downloads/mailchimp-api-class-1-2.zip
2) Suivez les instructions du fichier Lisez-moi en ajoutant votre clé API et votre ID de liste au store-address.php
fichier aux emplacements appropriés.
3) Vous pouvez également vouloir recueillir le nom de vos utilisateurs et / ou d'autres informations. Vous devez ajouter un tableau au store-address.php
fichier en utilisant les variables de fusion correspondantes.
Voici à quoi store-address.php
ressemble mon fichier où je rassemble également le prénom, le nom et le type d'e-mail:
<?php
function storeAddress(){
require_once('MCAPI.class.php'); // same directory as store-address.php
// grab an API Key from http://admin.mailchimp.com/account/api/
$api = new MCAPI('123456789-us2');
$merge_vars = Array(
'EMAIL' => $_GET['email'],
'FNAME' => $_GET['fname'],
'LNAME' => $_GET['lname']
);
// grab your List's Unique Id by going to http://admin.mailchimp.com/lists/
// Click the "settings" link for the list - the Unique Id is at the bottom of that page.
$list_id = "123456a";
if($api->listSubscribe($list_id, $_GET['email'], $merge_vars , $_GET['emailtype']) === true) {
// It worked!
return 'Success! Check your inbox or spam folder for a message containing a confirmation link.';
}else{
// An error ocurred, return error message
return '<b>Error:</b> ' . $api->errorMessage;
}
}
// If being called via ajax, autorun the function
if($_GET['ajax']){ echo storeAddress(); }
?>
4) Créez votre formulaire HTML / CSS / jQuery. Il n'est pas nécessaire qu'il soit sur une page PHP.
Voici à quoi ressemble mon index.html
fichier:
<form id="signup" action="index.html" method="get">
<input type="hidden" name="ajax" value="true" />
First Name: <input type="text" name="fname" id="fname" />
Last Name: <input type="text" name="lname" id="lname" />
email Address (required): <input type="email" name="email" id="email" />
HTML: <input type="radio" name="emailtype" value="html" checked="checked" />
Text: <input type="radio" name="emailtype" value="text" />
<input type="submit" id="SendButton" name="submit" value="Submit" />
</form>
<div id="message"></div>
<script src="jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#signup').submit(function() {
$("#message").html("<span class='error'>Adding your email address...</span>");
$.ajax({
url: 'inc/store-address.php', // proper url to your "store-address.php" file
data: $('#signup').serialize(),
success: function(msg) {
$('#message').html(msg);
}
});
return false;
});
});
</script>
Pièces requises ...
index.html construit comme ci-dessus ou similaire. Avec jQuery, l'apparence et les options sont infinies.
fichier store-address.php téléchargé dans le cadre d'exemples PHP sur le site Mailchimp et modifié avec votre clé API et votre identifiant de liste . Vous devez ajouter vos autres champs facultatifs au tableau.
Fichier MCAPI.class.php téléchargé depuis le site Mailchimp (version 1.3 pour PHP 5 ou version 1.2 pour PHP 4). Placez-le dans le même répertoire que votre store-address.php ou vous devez mettre à jour le chemin de l'url dans store-address.php pour qu'il puisse le trouver.