主页/WordPress笔记/博客文章/综合文章/如何创建带有多个收件人的联系表单(四种方法)

如何创建带有多个收件人的联系表单(四种方法)

Bug编译狮

Bug编译狮

要为您的网站或WordPress博客创建一个带有多个收件人选项的联系表单,您可以采用以下四种不同方法来实现这一目标:

方法一:使用Google表单

  1. 登录Google账户: 打开浏览器并访问Google表单

  2. 填写表格信息: 在页面顶部选择“开始”按钮以继续。

  3. 添加收件人: 点击“添加收件人”按钮,然后输入您想要接收联系表单数据的电子邮件地址。

  4. 保存设置: 完成后,点击“保存设置”,系统会自动验证这些收件人是否可以接收邮件。

  5. 测试联系表单: 您可以在下方的“预览表单”区域看到预览版本的表单,这样就可以检查所有功能是否正常工作。

  6. 部署到WordPress: 将Google表单的内容复制到WordPress中的相应位置,例如通过插件如“Google Forms Importer”。

  7. 完成安装和配置: 使用WordPress后台管理工具导入Google表单的数据,并根据需要调整布局和样式。

示例代码

<!-- 复制此代码片段到您的WordPress帖子中 -->
<form action="https://formspree.io/your-email@example.com" method="POST">
    <div>
        <label for="name">姓名:</label>
        <input type="text" name="name" id="name" required>
    </div>
    <div>
        <label for="email">电子邮件:</label>
        <input type="email" name="_replyto" id="email" required>
    </div>
    <div>
        <label for="message">留言:</label>
        <textarea name="message" id="message" rows="5" cols="30" required></textarea>
    </div>
    <button type="submit">提交</button>
</form>

使用步骤及效果

  1. 登录到您的WordPress博客。
  2. 从编辑器中复制上述HTML代码。
  3. 插入代码到一个新创建的文本框或更新现有帖子中。
  4. 提交表单时,用户将在提供的电子邮件地址处接收一封回复邮件,其中包含了他们填写的信息。

这种方法简单易用,适合希望快速设置并集成第三方服务的用户。只需确保您的WordPress主机支持PHP脚本运行即可。

黑板前的Bug语法讲师

黑板前的Bug语法讲师

如何创建带有多个收件人的联系表单

在WordPress中,创建一个可以接收多人反馈或订阅的表单是一种非常实用的功能。这不仅可以帮助用户更方便地提交信息,还可以增加网站的专业性和用户体验。以下是使用不同方法创建具有多个人数限制的表单的步骤。

方法一:使用内置插件

  1. 安装并激活:首先,登录到您的WordPress管理后台。
  2. 点击左侧菜单中的“插件” > “启用/禁用插件”,然后找到并启用“WPForms”插件。
  3. 在“Form Builder”界面下,点击“New Form”按钮来新建一个新的表单。
  4. 选择“Contact Us”作为模板,这样会自动添加一些基本的字段,如姓名、电子邮件和消息文本。
  5. 设置表单的参数,例如“Max Participants”为20以允许最多20个参与者填写表单。
  6. 保存并测试表单,确保它可以正常工作。

方法二:自定义HTML代码

  1. 编辑主题文件
    • 登录到WordPress后,转到wp-content/themes/your-theme/目录下的.html文件。
    • 寻找包含表单元素的地方,如<form>标签或其他表单元素。
    • max_participants属性设置为需要的值,例如max_participants="20"
    • 使用CSS样式调整表单布局。

方法三:使用第三方工具

  1. 使用Google表格
    • 创建一个名为“contact_form”的Google表格。
    • 将每个参与者的数据输入到相应的单元格中。
    • 将此表格链接到您的WordPress网站上的某个页面上,以便其他人可以在那里提交他们的反馈。
    • 考虑使用Google表格的自动化功能,如批量导入数据或导出数据到Excel。

方法四:使用自定义模块

  1. 创建自定义模块
    • 在WordPress的functions.php文件中,创建一个自定义模块。
    • 定义该模块的行为,比如处理来自特定URL的请求。
    • 使用register_post_type()函数注册自定义模块。
    • 添加自定义模块的视图,包括用于显示表单的代码。
    • 使用自定义模块的ID在WordPress的表单中引用它。

示例代码:

  1. 使用内置插件
// 假设你有一个名为'YourForm'的自定义模块,你可以通过以下方式访问它:
$your_form_module = get_post( $your_form_id );

// 获取表单的字段和控件
$form_fields = wp_get_form_fields( $your_form_module->id );

// 使用自定义模块的视图
if ( function_exists('custom_module_view') ) {
    custom_module_view( $your_form_module, $form_fields );
}
  1. 自定义HTML代码
<form action="" method="post" max-participants="20">
    <input type="text" name="name" placeholder="Name" required>
    <input type="email" name="email" placeholder="Email" required>
    <textarea name="message" placeholder="Message"></textarea>
    <button type="submit">Submit</button>
</form>
  1. 使用第三方工具
function googleSheetToForm() {
    // 从Google Sheets导入数据
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'Name');
    data.addColumn('string', 'Email');
    data.addColumn('string', 'Message');

    var rows = [
        ['John Doe', 'john@example.com', 'Great feedback!'],
        ['Jane Smith', 'jane@example.com', 'Love the design!']
    ];

    data.addRows(rows);

    var form = document.createElement('form');
    form.setAttribute('action', 'https://example.com/form');
    form.setAttribute('method', 'post');

    for (var i = 0; i < rows.length; i++) {
        var row = rows[i];
        var inputElement = document.createElement('input');
        inputElement.type = 'hidden';
        inputElement.name = 'name';
        inputElement.value = row[0];
        form.appendChild(inputElement);

        inputElement = document.createElement('input');
        inputElement.type = 'hidden';
        inputElement.name = 'email';
        inputElement.value = row[1];
        form.appendChild(inputElement);

        inputElement = document.createElement('textarea');
        inputElement.type = 'hidden';
        inputElement.name = 'message';
        inputElement.value = row[2];
        form.appendChild(inputElement);

        form.appendChild(document.createElement('button'));
        form.appendChild(document.createElement('br'));
    }

    document.body.appendChild(form);
}
  1. 使用自定义模块
add_action('init', 'my_custom_form');
function my_custom_form() {
    register_post_type('custom_form', array(
        'labels' => array(
            'name' => __('Custom Form'),
            'singular_name' => __('Single Custom Form'),
            'add_new' => __('Add New'),
            'add_new_item' => __('Add New Custom Form'),
            'edit_item' => __('Edit Custom Form'),
            'new_item' => __('New Custom Form'),
            'view_item' => __('View Custom Form'),
            'search_items' => __('Search Custom Forms'),
            'not_found' => __('No Custom Forms found'),
            'not_found_in_trash' => __('No Custom Forms in Trash')
        ),
        'public' => true,
        'has_archive' => false,
        'rewrite' => array('slug' => 'custom-forms'),
        'menu_icon' => 'dashicons-admin-generic',
        'menu_position' => 999,
        'supports' => array('title', 'editor', 'thumbnail')
    ));

    add_meta_box('custom_form_info', __('Custom Form Information'), 'display_custom_form_info', 'custom_form', 'side', 'high');
}

function display_custom_form_info($post) {
    echo '<div class="wrap">';
    echo '<h2>' . __('Custom Form Information') . '</h2>';

    $custom_form_id = get_post_meta($post->ID, '_custom_form_id', true);
    if ($custom_form_id) {
        $custom_form_data = get_post_meta($custom_form_id, '_custom_form_data', true);
        echo '<p><strong>Name:</strong> ' . $custom_form_data['name'] . '</p>';
        echo '<p><strong>Email:</strong> ' . $custom_form_data['email'] . '</p>';
        echo '<p><strong>Message:</strong> ' . $custom_form_data['message'] . '</p>';
    } else {
        echo '<p>No custom form information available.</p>';
    }

    echo '</div>';
}

以上就是使用WordPress的不同方法创建带有多个收件人的联系表单的方法。每种方法都有其优缺点,具体选择哪种方法取决于您的需求和技术偏好。