将注册表单或联系表单订阅到Mailchimp

安装次数: 3,377

依赖项: 0

建议者: 0

安全: 0

星标: 19

关注者: 3

分支: 13

开放问题: 0

类型:statamic-addon

v5.2.1 2024-09-20 00:15 UTC

README

Latest Version

此包提供了一种简单的方法,将MailChimp与Statamic表单和用户注册集成。

要求

  • PHP 8.2+
  • Statamic v5

安装

您可以使用以下命令通过composer安装此包:

composer require statamic-rad-pack/mailchimp

包将自动注册自身。

配置

在您的 .env 文件中设置您的Mailchimp API密钥。您可以从:https://admin.mailchimp.com/account/api-key-popup/ 获取它并创建一个新的密钥。

MAILCHIMP_API_KEY=your-key-here

在控制面板中配置Mailchimp 控制面板 合并字段

用法

像往常一样创建您的Statamic 表单。当您编辑表单时,您会看到一个“Mailchimp集成”部分,您可以配置该表单是否以及如何与您的Mailchimp帐户集成。

别忘了在蓝图上添加同意字段。

您还可以通过控制面板中的专用设置视图管理是否将新用户添加到列表中。

兴趣

为了将它们添加到您的表单中,您需要知道兴趣的 id

<div class="form-group">
    <label>Interests</label>
    <input type="checkbox" name="interests[]" value="4e4b2bc6ae" class="form-control"/>
    <input type="checkbox" name="interests[]" value="3e1e51dbae" class="form-control"/>
    <input type="checkbox" name="interests[]" value="f79652f791" class="form-control"/>
</div>

要获取这些ID,首先运行 php artisan mailchimp:groups your_form_handle 以获取组ID。然后运行 php artisan mailchimp:interests your_form_handle the_group_id 以获取兴趣列表及其ID。在您的模板中使用这些ID(如上例所示)。

您的表单蓝图中的兴趣字段最终应看起来像这样(假设您使用默认的 interests 作为字段的处理程序)

-
  handle: interests
  field:
    options:
      e25a8f41d6: 'Interest group 1'
      cd1g2413a2: 'Interest group 2'
      1b1a842842: 'Interest group 3'
    type: checkboxes

营销权限

要使用Mailchimp的 营销权限,您需要做一些事情

  1. 运行 php artisan mailchimp:permissions {form-handle} 以获取每个在Mailchimp中表单的权限和ID。例如,我的看起来像这样
❯ php please mailchimp:permissions contact_us
+-------------------------------+------------+
| Marketing Permission          | ID         |
+-------------------------------+------------+
| Email                         | 2d904xxxxx |
| Customized Online Advertising | 3560exxxxx |
+-------------------------------+------------+
  1. 添加这些Mailchimp的配置
  2. 添加将具有这些权限的表单字段

permissions.

然后在您的表单中,有如下字段

<div class="form-group">
    <label>GDPR</label>
    <label for=""email>Email</label>
    <input type="checkbox" name="gdpr[email]" value="true" class="form-control"/>
    <label for=""email>Online</label>
    <input type="checkbox" name="gdpr[customized_online_advertising]" value="true" class="form-control"/>
</div>

别忘了在表单的蓝图上添加 gdpr 字段。

数据存储

任何与用户相关的设置默认存储在 resources/mailchimp.yaml

如果您想更改此设置或使用不同的数据存储,您可以在应用程序服务提供程序中绑定 \StatamicRadPack\Mailchimp\UserConfig::class。您应根据您的需求修改 getSavedSettingssaveexists 方法。

测试

使用以下命令运行测试:

vendor/bin/phpunit

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

贡献

请参阅 CONTRIBUTING 了解详细信息。

安全

请参阅 SECURITY 了解详细信息。