statikbe/craft-campaign-monitor

将订阅者添加到Campaign Monitor列表

安装: 626

依赖: 0

建议: 0

安全: 0

星标: 0

关注者: 4

分支: 0

开放问题: 0

类型:craft-plugin

5.0.1 2024-06-24 09:42 UTC

This package is auto-updated.

Last update: 2024-08-27 13:58:16 UTC


README

Craft CMS的Campaign Monitor集成。通过表单订阅邮件列表。

要求

此插件需要Craft CMS 4.0.0或更高版本。

安装

要安装插件,请按照以下说明操作。

  1. 打开您的终端并转到您的Craft项目
   cd /path/to/project
  1. 然后告诉Composer加载插件
    composer require statikbe/craft-campaign-monitor
  1. 在控制面板中,转到设置 → 插件,并为Campaign Monitor点击“安装”按钮。

用法

要使用

安装并启用插件后,您需要在 设置 > Campaign Monitor 下输入您的Campaign Monitor账户的 API密钥客户端ID

默认情况下,Campaign Monitor中的联系人具有以下字段

  • 电子邮件(必填)
  • 姓名

基本订阅表单

您可以使用以下代码在模板中实现订阅表单。请注意,重新订阅 将设置为 true

<form method="post">
    {{ csrfInput() }}
    {{ actionInput('campaign-monitor/subscribe') }}
    {{ redirectInput('foo/bar') }}
    {{ hiddenInput('listId', 'ListID'|hash) }}

    {{ craft.app.session.getFlash('error') }}
      
    <label for="email">E-mail</label>
    <input type="email" name="email" required />
      
    {# Use firstname + lastname fields, or fullname (optional) #}
    <label for="firstname">First Name</label>
    <input type="text" name="firstname" />
    <label for="lastname">Last Name</label>
    <input type="text" name="lastname" />
    {# <label for="fullname">Full Name</label>
      <input type="text" name="fullname" /> #}
      
    <button type="submit">Subscribe</button>
</form>

带有自定义字段的订阅表单

Campaign Monitor自定义字段可以在 fields 命名空间中添加。例如 fields[city],其中 "city" 是Campaign Monitor中自定义字段的名称。

 <form method="post">
    {{ csrfInput() }}
    {{ actionInput('campaign-monitor/subscribe') }}
    {{ redirectInput('foo/bar') }}
    {{ hiddenInput('listId', 'ListID'|hash) }}

    {{ craft.app.session.getFlash('error') }}

    <label for="email">E-mail</label>
    <input type="email" name="email" required />

    <label for="CustomTextField">Custom Text Field</label>
    <input type="text" name="fields[CustomTextField]" id="CustomTextField" />

    <label for="CustomNumberField">Custom Number Field</label>
    <input type="number" name="fields[CustomNumberField]" id="CustomNumberField" />

    <label for="CustomDateField">Custom Date Field</label>
    <input type="date" name="fields[CustomDateField]" id="CustomDateField" />

    <button type="submit">Subscribe</button>
</form>

致谢

深受 clearbold/craft-campaignmonitor-serviceclearbold/craft-campaignmonitor-lists 的启发。