Cancellare iscritti da MailChimp con PHP

Mattepuffo's logo
Cancellare iscritti da MailChimp con PHP

Cancellare iscritti da MailChimp con PHP

Le API di MailChimp prevedono due modi per cancellare gli utenti da una lista:

  • l'archiviazione
  • la cancellazione definitiva

Noi procederemo con la prima soluzione, in quanto ci permette di riaggiungere l'utente in maniera semplice; la seconda soluzione, invece, prevede che l'utenta si reiscriva con un form MailChimp creato ad-hoc.

Il tutto usando PHP e cURL.

Do per scontato che abbiate già una API KEY, e che sappiate il vostro server e la lista.

class MailChimp {

    private $apiKey;
    private $urlRoot;
    private $list;

    public function __construct($list, $apiKey, $urlRoot) {
        $this->apiKey = $apiKey;
        $this->urlRoot = $urlRoot;
        $this->list = $list;
    }

    /**
     * @param $email
     * @return bool|string
     */
    public function delByEmail($email) {
        $memberHash = md5(strtolower($email));
        $url = $this->urlRoot . 'lists/' . $this->list . '/members/' . $memberHash;
        $ch = curl_init($url);

        curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $this->apiKey);
        curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

        $result = curl_exec($ch);
        curl_close($ch);

        return $result;
    }

}

Dove passare dei parametri al costruttore della classe, che sostanzialmente sono quelli per la connessione al vostro account / lista.

Al metodo, invece, basterà passare l'email.

Enjoy!


Condividi

Commentami!