使用 PHP 在 Mailchimp api 3.0 中禁用双向确认

Disable double opt-in in Mailchimp api 3.0 using PHP

我在这里和其他几个网站上阅读了多个线程。他们都说要禁用双向确认,我需要将用户注册为 "subscribed"。那没有用。 这是我的代码:

 $data = [
 'email'     => $_GET['email'],
 'status'    => 'subscribed'
 ];
 syncMailchimp($data);
static function syncMailchimp($data) {
        $apiKey = 'XXXXXXXXXXX-us3';
        $listId = 'XXXXXXXXXX';

        $memberId = md5(strtolower($data['email']));
        $dataCenter = substr($apiKey,strpos($apiKey,'-')+1);
        $url = 'https://' . $dataCenter . '.api.mailchimp.com/3.0/lists/' . $listId . '/members/' . $memberId;

        $json = json_encode([
                'email_address' => $data['email'],
                'status'        => $data['status'], // "subscribed","unsubscribed","cleaned","pending"
        ]);

        $ch = curl_init($url);

        curl_setopt($ch, CURLOPT_USERPWD, 'user:' . $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, 'PUT');
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
        $result = curl_exec($ch);
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        curl_close($ch);
        return $httpCode;


}

当我尝试从帐户中禁用双向确认时,它显示为灰色并且不允许我取消选中它:

如果您有任何想法,我很想听听。 谢谢!

听起来 MailChimp 帐户可能处于合规状态。有时这可能要求列表是双重选择加入模式。我会登录该帐户并在右上角查找任何表明情况如此的通知。

希望这对您有所帮助!