web-dev-qa-db-ja.com

mailchimp api 2.0はphpを介してサブスクライブしますか?

メールアドレスをmailchimpニュースレターに登録する方法の例が必要です。

ここで新しいAPIリンクを確認してください: https://bitbucket.org/mailchimp/mailchimp-api-php

これは新しいmalichimpapiであり、使用方法がわかりません。 :(

MailChimp 2.0 APIの場合、1.3ではありません。

誰かがユーザーをmailchimpにサブスクライブする方法の例を提供してください。

ありがとうございました。

編集1:すでに次のコードを試しましたが、機能しません:

$merge_vars = array('MM1'=>$mm1);
$MailChimp = new Mailchimp($apikey);
$result = $MailChimp->call('lists/subscribe', array(
            'id'                => $listid,
            'email'             => array('email'=>$email),
            'merge_vars'        => $merge_vars,
            'double_optin'      => false,
            'update_existing'   => true,
            'replace_interests' => false,
            'send_welcome'      => false,
        ));
    print_r($result);

しかし、機能していません。次のエラーをスローします:致命的なエラー:22行目のsubscribe.phpの非オブジェクトに対するメンバー関数call()の呼び出し

10
TheGodWings

ドキュメントを参照すると、これは次のようになります。

$merge_vars = array('MM1'=>$mm1);
$listid = 'YOURLISTID';
$MailChimp = new Mailchimp($apikey);
$result = $MailChimp->lists->subscribe($listid,
                                        array('email'=>"[email protected]"),
                                        $merge_vars,
                                        false,
                                        true,
                                        false,
                                        false
                                       );
    print_r($result);

テストされ、動作しています。

14
Anis Marrouchi

これは、phpを使用した単純なmailchimpサブスクライバーAPIコードサンプルに役立つ場合があります

PHPでのmailchimpサブスクライバーAPIコード例

9
saba

これがTry&Catchの場合です(重複メールの場合の例)

_header('Content-Type: application/json');
include_once 'Mailchimp.php';

$api_key = '';
$list_id = '';


$email = '[email protected]';
$merge_vars = array();

$Mailchimp = new Mailchimp($api_key);
$Mailchimp_Lists = new Mailchimp_Lists($Mailchimp);

try{
    $subscriber = $Mailchimp_Lists->subscribe(
        $list_id,
        array('email'=>htmlentities($email)),
        $merge_vars,
        false,
        false,
        false,
        false
    );
    echo json_encode(array('status' => !empty($subscriber['leid'])?'submitted':'error'));
} catch(Mailchimp_Error $e){
    echo json_encode(array(
            'status' => 'error',
            'message' => $e->getMessage()
        ));
}
_

subscribe()についてもっと読む: https://apidocs.mailchimp.com/api/2.0/lists/subscribe.php

4
l2aelba

Curlを使用してphpでサブスクライブします。

$apikey     = 'xxxxxxxxxx'; //your apikey
$listId     = 'xxxxxxxxxx';  // your list id
$endpoint   = "http://yourdatacenter.api.mailchimp.com/3.0/lists/";      // find your datacenter in your apikey( xxxxxxxxxxxxxxxxxxxxxxxx-us13 <= this is your datacenter)
$auth       = base64_encode( 'user:'. $apikey );
$data       = array(
                    'apikey'        => $apikey,
                    'email_address' => 'yourvalid_email_address',
                    'status'        => 'subscribed',
                    'merge_fields'  => array());

$json_data = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $endpoint.$listId.'/members/');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json',
                                            'Authorization: Basic '.$auth));
curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/2.0');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
$result = curl_exec($ch);

echo "<pre>";  // Response form mailchimp
print_r(json_decode($result,true));
3
Raju Dudhrejiya

ここに例があります。

mailchimpサブスクライバーAPIの例

0
Khandad Niazi