hampel / mailchimp-subscribe
使用Guzzle对MailChimp API v3的列表订阅和管理方法进行封装
Requires
- php: >=5.5.0
- guzzlehttp/guzzle: ~6.0
- hampel/json: ~2.0
Requires (Dev)
- mockery/mockery: ^0.9
- phpunit/phpunit: ~4.0
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'));
清理的地址是已多次退回或现在被认为无效的地址。