madebyraygun/constant-contact

此包已被废弃且不再维护。未建议替代包。

Craft CMS的基本联系信息集成

0.1.3 2021-12-15 21:29 UTC

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或更高版本。

安装

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

  1. 打开您的终端并转到您的Craft项目

     cd /path/to/project
    
  2. 然后让Composer加载插件

     composer require madebyraygun/constant-contact
    
  3. 在控制面板中,转到设置→插件,然后点击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
        }
    }})
});