hampel/mailchimp-subscribe

使用Guzzle对MailChimp API v3的列表订阅和管理方法进行封装

1.0.0 2015-11-19 07:20 UTC

This package is auto-updated.

Last update: 2024-09-19 10:03:14 UTC


README

使用Guzzle v6实现的MailChimp API v3的简单列表订阅接口的MailChimp API封装器。

Simon Hampel提供。

安装

建议通过Composer安装MailChimp Subscribe。

:::json
{
    "require": {
        "hampel/mailchimp-subscribe": "~1.0"
    }
}

配置

要使用MailChimp订阅者,您需要使用MailChimp管理界面生成一个API密钥。

登录MailChimp,然后点击顶部的用户名/头像,选择菜单中的“帐户”以访问“帐户”。

接下来,转到“额外”区域并点击“API密钥”。

点击“创建密钥”按钮,并为您的新的密钥提供一个有意义的标签,以便您知道它是哪个。

您还需要找到您想要订阅的人的邮件列表ID。

点击顶部的“列表”,然后点击您的列表名称。

点击“设置”子菜单并选择“列表名称和活动默认值”选项。

在右侧将显示您的列表ID - 请记下此信息。

使用方法

初始化

首先,您需要创建一个MailChimp对象,该对象负责实际的通信。

快速方法是使用工厂

:::php
<?php
    use MailChimp\MailChimp;
    
    $apikey = 'YOUR API KEY HERE';
    
    $mc = MailChimp::make($apikey);

或者,如果您需要更多控制,您可以使用长方法

:::php
<?php
    use GuzzleHttp\Client;
    use MailChimp\MailChimp;
    
    $apikey = 'YOU API KEY HERE';
    
    $config = MailChimp::getConfig($apikey);
    $guzzle = new Client($config);
    $mc = new MailChimp($guzzle, $apikey);

您还想要创建一个邮件列表对象,以便然后使用该列表

:::php
<?php
    use MailChimp\MailingList;
    
    $listid = 'YOU LIST ID HERE';
    
    $list = new MailingList($mc, $listid);

我们现在可以开始处理我们的列表了。

获取成员

您可以通过调用MailingList类的getMember方法来检索成员的详细信息

:::php
<?php
    var_dump($list->getMember('user@example.com'));

如果电子邮件地址在列表中未找到,则getMember函数返回false。

获取成员状态

通过调用getMemberStatus方法检索列表成员的当前状态

:::php
<?php
    var_dump($list->getMemberStatus('user@example.com'));

可能的返回值有:已订阅、未订阅、已清理、待定 - 或者如果成员未找到,则返回false。

检查成员是否存在

您可以使用isMember方法检查用户是否是列表的成员,该方法返回一个布尔结果

:::php
<?php
    if ($list->isMember('user@example.com'))
    {
    	echo "user is a member of our list";
    }
    else
    {
    	echo "user is not yet a member of our list";
    }

订阅成员

使用subscribe方法将新的电子邮件地址订阅到您的列表

:::php
<?php
    var_dump($list->subscribe('user@example.com'));

要使MailChimp在将用户添加到列表之前向用户发送确认(双重选择),请将第二个参数设置为true:$list->subscribe('user@example.com', true)

您还可以发送一个关联数组(键值对)作为第三个参数

:::php
<?php
    var_dump($list->subscribe('user@example.com', false, ['FNAME' => 'Joe', 'LNAME' => 'Bloggs']));

将返回已订阅用户的详细信息。

取消订阅成员

要从不邮寄列表中删除用户,请使用unsubscribe方法

:::php
<?php
    var_dump($list->unsubscribe('user@example.com'));

清理成员

要清理邮件列表中的地址,请使用clean方法

:::php
<?php
    var_dump($list->clean('user@example.com'));

清理的地址是已多次退回或现在被认为无效的地址。