madebyraygun / constant-contact
此包已被废弃且不再维护。未建议替代包。
Craft CMS的基本联系信息集成
0.1.3
2021-12-15 21:29 UTC
Requires
- craftcms/cms: ^3.7.20
- guzzlehttp/guzzle: ^6.5.5|^7.2.0
This package is auto-updated.
Last update: 2022-05-06 16:27:57 UTC
README
通过Constant Contact API进行基本集成,以便您可以将新联系人添加到Constant Contact列表中。
要求
此插件需要Craft CMS 3.7.20或更高版本。
安装
要安装插件,请按照以下说明操作。
-
打开您的终端并转到您的Craft项目
cd /path/to/project
-
然后让Composer加载插件
composer require madebyraygun/constant-contact
-
在控制面板中,转到设置→插件,然后点击Constant Contact的“安装”按钮。
配置Constant Contact
在Mashery注册Constant Contact API访问。从那里您可以生成API密钥并获取一个认证令牌。您还可以通过访问API测试器并对/lists
端点发起GET请求来获取您的列表ID。
通过在您的配置文件夹中创建一个新的名为constant-contact.php的配置文件来配置插件,并添加以下配置参数
示例配置文件
<?php
return [
'key' => 'xxxxxx',
'list' => 'xxxxxx',
'token' => 'xxxxxx',
];
注意:列表应为一个数值ID。
使用Constant Contact
在前端模板中创建一个新的表单,如下所示
<form action="" method="POST">
{{ csrfInput() }}
<input type="hidden" name="action" value="constant-contact/subscribe">
{{ redirectInput('thanks') }}
<label>Email:</label>
<input type="email" name="email" value=""/>
<input type="submit" name="" value="Subscribe"/>
</form>
您可以选择通过添加隐藏的listid输入覆盖默认列表
示例
<input type="hidden" name="listid" value="12345">
显示闪存消息
当提交联系人表单时,插件将在用户会话中设置通知或成功闪存消息。您可以在模板中这样显示它
{% if craft.app.session.hasFlash('notice') %}
<p class="message notice">{{ craft.app.session.getFlash('notice') }}</p>
{% elseif craft.app.session.hasFlash('error') %}
<p class="message error">{{ craft.app.session.getFlash('error') }}</p>
{% endif %}
Ajax提交
如果使用Ajax提交表单,插件将返回一个包含与上述模板对象相同键的JSON对象。
示例
$('form').on("submit", function(event) {
event.preventDefault();
$.ajax({url: '/', type: "POST", data: $(this).serialize(), dataType:"json", success: function (data) {
if (!data.success) {
//display error message
} else {
//hide form and display success message
}
}})
});