statikbe / craft-flexmail
Craft CMS 的 Flexmail 集成
3.0.0
2022-12-23 14:34 UTC
Requires
- craftcms/cms: ^4.0.0-beta.1
This package is auto-updated.
Last update: 2024-09-24 14:19:06 UTC
README
此插件将 Flexmail REST API 集成到 Craft CMS 中。第一个版本将专注于添加联系人以及分配偏好和兴趣。
安装
要安装此插件,请按照以下说明操作
cd /path/to/project composer require statikbe/craft-flexmail ./craft plugin/install flexmail
设置
插件有以下设置
- API 用户名 (
apiUsername
) - API 令牌 (
apiToken
) - 默认联系人来源 (
defaultSource
) (了解更多关于 Flexmail 来源的信息 这里)
默认联系人来源可以在设置中设置,或者您可以使用隐藏的 source
字段在模板中设置。
用法
默认情况下,Flexmail 中的联系人具有以下字段 (API 文档)
- 电子邮件(必需)
- 名字
- 姓氏
- 语言(必需)
基本订阅表单
<form method="post"> {{ actionInput('flexmail/contacts/add') }} {{ csrfInput() }} <div> <label for="email">E-mail</label> <input type="email" name="email" id="email"> </div> <div> <label for="firstName">First name</label> <input type="text" name="firstName" id="firstName"> </div> <div> <label for="lastName">Last name</label> <input type="text" name="lastName" id="lastName"> </div> <input type="submit" value="Subscribe"> </form>
带有自定义字段的订阅表单
可以在 fields
命名空间中添加 Flexmail 自定义字段。例如 fields[city]
,其中 "city" 是 Flexmail 中自定义字段的别名。
<form method="post"> {{ actionInput('flexmail/contacts/add') }} {{ csrfInput() }} <div> <label for="email">E-mail</label> <input type="email" name="email" id="email"> </div> <div> <label for="custom">Your organisation</label> <input type="text" name="fields[organisation]" id="custom"> </div> <input type="submit" value="Subscribe"> </form>
带有兴趣的订阅表单
Flexmail 有两种方式对联系人进行分段或添加元数据:兴趣。这些可以通过使用 labels[]
和 preferences[]
分别添加。
需要注意的是,这些值需要是 Flexmail 中该项的 ID。
<form method="post"> {{ actionInput('flexmail/contacts/add') }} {{ csrfInput() }} <div> <label for="email">E-mail</label> <input type="email" name="email" id="email"> </div> // Interests <input type="checkbox" name="interests[]" value="interestId"> <input type="submit" value="Subscribe"> </form>
可以通过 Utility 从 API 导入和刷新兴趣。
字段
插件包括 Flexmail 账户中定义的兴趣字段。
这里的想法是您可以为从特定页面/产品等订阅的联系人创建兴趣。
此字段将使用导入的兴趣。
辅助工具
Flexmail 使用 ID 进行大多数操作(来源、标签、偏好),但这些 ID 不会在网页中公开。
您可以使用以下控制台命令列出这些 ID,它们将返回所有项及其 ID 和标签
flexmail/debug/get-interest
flexmail/debug/get-sources