...
✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

57

MailChimp to jedna z popularnych usług e-mail marketingu, które zarządzają subskrybentami Twojej witryny. Korzystając z MailChimp, możesz wysyłać newsletter do swoich subskrybentów. W newsletterze możesz pisać o swoich świeżych treściach, ofertach lub ogłoszeniach na swojej stronie internetowej. Biuletyny są przydatne, aby sprowadzić odbiorców z powrotem na stronę internetową.

Inni popularni dostawcy usług e-mail marketingu to:

Większość serwisów umieszcza formularze subskrypcji, w których gromadzone są e-maile użytkownika. Ten e-mail trafi bezpośrednio do MailChimp jako subskrybent.

W tym artykule dowiemy się, jak przeprowadzić integrację MailChimp za pomocą ich API i cURL PHP. Dodamy wiadomość e-mail do MailChimp. Innymi słowy, zobaczymy, jak dodać subskrybentów do MailChimp za pomocą ich API.

Zanim przejdziesz dalej, upewnij się, że masz włączony cURL na serwerze. Wchodzimy w interakcję z zewnętrznym adresem URL, który jest niczym innym jak punktami końcowymi MailChimp. Wymaga cURL do wysyłania żądań i odbierania odpowiedzi.

Powiedziawszy to, zobaczmy, jak można dodać subskrybenta do swoich list MailChimp za pomocą API.

Możesz zintegrować tę integrację MailChimp z dowolnymi witrynami internetowymi opartymi na PHP. Na przykład w witrynach zbudowanych przy użyciu WordPress, Laravel itp.

Uzyskaj klucz API MailChimp i identyfikator odbiorców

Aby wchodzić w interakcję z API MailChimp, musisz pobrać klucz API i identyfikator publiczności. Wykonaj poniższe kroki i zdobądź to.

Zaloguj się na swoje konto MailChimp. Pod ikoną użytkownika wybierz Konto.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

Kliknij Extra->Klucze API.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

W sekcji Twoje klucze API kliknij Utwórz klucz. Skopiuj swój klucz API, którego potrzebujemy za chwilę.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

Następnie zdobądź identyfikator odbiorców, do którego musisz dodać swoich subskrybentów. W tym celu kliknij menu Odbiorcy, a następnie wybierz opcję Ustawienia z menu rozwijanego Zarządzaj odbiorcami.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

W Ustawieniach kliknij „Nazwa odbiorców i wartości domyślne".

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

Na następnej stronie znajdziesz swój identyfikator odbiorców.

Integracja MailChimp na stronie internetowej za pomocą MailChimp API i PHP

Dodaj subskrybenta do listy MailChimp

Na tym etapie jesteś gotowy z kluczem API i identyfikatorem odbiorców. Teraz wystarczy wysłać żądanie HTTP do API MailChimp wraz z wymaganymi parametrami.

Listę wszystkich wywołań API można znaleźć w ich oficjalnej dokumentacji. W naszym samouczku potrzebujemy wywołania API Add a new list member API.

To wywołanie API wymaga klucza API z adresem e-mail i stanem. W przypadku statusu możemy przekazać wartość „subskrybowany” lub „oczekujący”. Jeśli wartość to „subscribed”, adres e-mail zostanie dodany bezpośrednio do listy MailChimp. A jeśli wartość jest „oczekująca”, do użytkownika zostanie wysłany e-mail z potwierdzeniem. Po potwierdzeniu użytkownik staje się subskrybentem.

Aby zintegrować to API, umieść poniższy kod w swoim pliku PHP. Pamiętaj, aby zastąpić symbole zastępcze rzeczywistymi wartościami.

<?php
$email = 'EMAIL_ADDRESS';
$list_id = 'LIST_ID';
$api_key = 'API_KEY';
 
$data_center = substr($api_key,strpos($api_key,'-')+1);
 
$url = 'https://'. $data_center .'.api.mailchimp.com/3.0/lists/'. $list_id .'/members';
 
$json = json_encode([
    'email_address' => $email,
    'status'        => 'subscribed', //pass 'subscribed' or 'pending'
]);
 
try {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERPWD, 'user:'. $api_key);
    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_POST, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
    $result = curl_exec($ch);
    $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
 
    if (200 == $status_code) {
        echo "The user added successfully to the MailChimp.";
    }
} catch(Exception $e) {
    echo $e->getMessage();
}

W powyższym kodzie, po pomyślnym wykonaniu otrzymasz 200 jako kod odpowiedzi. Poradziliśmy sobie również z błędem, jeśli z jakiegoś powodu zostanie wyrzucony.

Mailchimp udostępnia również pola odbiorców, które przechowują dodatkowe informacje o użytkownikach bezpośrednio na pulpicie nawigacyjnym MailChimp. Na wszelki wypadek, jeśli chcesz dodać pola odbiorców, możesz to zrobić, dodając jeszcze jeden element tablicy w powyższym żądaniu POST. Tutaj dodaję wartości dla domyślnych pól odbiorców FNAME i LNAME.

<?php
...
...
$json = json_encode([
    'email_address' => $email,
    'status'        => 'subscribed', //pass 'subscribed' or 'pending'
    'merge_fields'  => [
        'FNAME' => 'ENTER_FIRST_NAME',
        'LNAME' => 'ENTER_LAST_NAME'
    ]
]);

Dodaj tagi do subskrybenta

Możesz uporządkować kontakty MailChimp za pomocą tagów. Aby przypisać tagi do subskrybenta, musisz wysłać żądanie POST do API MailChimp. Zapoznaj się z poniższym kodem, który przypisuje tagi Blogger i YouTuber do subskrybenta.

<?php
$email = 'EMAIL_ADDRESS';
$list_id = 'LIST_ID';
$api_key = 'API_KEY';
 
$data_center = substr($api_key,strpos($api_key,'-')+1);
$subscriber_hash = md5(strtolower($email));
 
$url = 'https://'. $data_center .'.api.mailchimp.com/3.0/lists/'. $list_id .'/members/'. $subscriber_hash .'/tags';
 
$json = json_encode([
    'tags' => [
                ['name' => 'Blogger', 'status' => 'active'],
                ['name' => 'YouTuber', 'status' => 'active'],
            ]
]);
 
try {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERPWD, 'user:'. $api_key);
    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_POST, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
    $result = curl_exec($ch);
    $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
 
    if (204 == $status_code) {
        echo "The tags added successfully to the User.";
    }
} catch(Exception $e) {
    echo $e->getMessage();
}

Użytkownik może usunąć tagi, podając wartość „nieaktywny” dla klucza stanu.

Usuń subskrybenta z listy MailChimp

MailChimp API udostępnia wywołanie API w celu usunięcia adresu e-mail z listy. Zgodnie z dokumentacją, aby usunąć subskrybenta, musimy wysłać żądanie DELETE do API. Tym razem musisz przekazać hash md5 adresu e-mail do punktu końcowego API.

<?php
$email = 'EMAIL_ADDRESS';
$list_id = 'LIST_ID';
$api_key = 'API_KEY';
 
$data_center = substr($api_key,strpos($api_key,'-')+1);
 
$url = 'https://'. $data_center .'.api.mailchimp.com/3.0/lists/'. $list_id .'/members/'. md5(strtolower($email));
 
try {
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERPWD, 'user:'. $api_key);
    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);
    $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);
} catch(Exception $e) {
    echo $e->getMessage();
}

Mam nadzieję, że rozumiesz integrację MailChimp API na stronie internetowej przy użyciu PHP. Podziel się swoimi przemyśleniami i sugestiami w poniższym komentarzu.

Powiązane artykuły

Źródło nagrywania: artisansweb.net

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów