You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress中Contact Form 7伪提交按钮验证跳转需求咨询

实现Contact Form 7伪提交按钮(仅验证+跳转,不发送数据)

步骤1:替换表单默认提交按钮

在Contact Form 7的表单编辑器中,把默认的提交按钮替换为自定义按钮,避免触发插件自带的提交逻辑:

<button type="button" class="cf7-pseudo-submit">验证并跳转</button>

表单内的字段和原有验证规则(必填、邮箱格式等)保持不变,继续使用CF7自带的验证配置。

步骤2:添加自定义验证与跳转脚本

将以下代码添加到主题的functions.php文件,或者通过页面自定义HTML模块、代码插件插入到页面底部:

jQuery(document).ready(function($) {
    // 监听伪提交按钮点击事件
    $('.cf7-pseudo-submit').on('click', function() {
        var $form = $(this).closest('.wpcf7-form');
        var cf7Instance = window.wpcf7.init($form[0]);

        // 触发CF7内置验证逻辑
        cf7Instance.submit(function(e) {
            e.preventDefault(); // 强制阻止默认提交行为
        });
        cf7Instance.validate();

        // 延迟检查验证结果(给CF7渲染错误提示的时间)
        setTimeout(function() {
            var hasErrors = $form.find('.wpcf7-not-valid').length > 0 || $form.find('.wpcf7-validation-errors').length > 0;
            
            if (!hasErrors) {
                // 验证通过,跳转到目标地址
                window.location.href = 'https://你的目标URL地址'; // 替换为实际跳转链接
            }
            // 验证不通过时,CF7会自动显示错误提示,无需额外处理
        }, 200);
    });
});

步骤3:禁用CF7默认邮件发送(推荐)

在CF7表单的附加设置栏中添加以下配置,确保即使意外触发提交,也不会发送邮件:

skip_mail: on

额外说明

  • 脚本直接复用CF7内置的验证机制,错误提示样式完全沿用插件默认效果,无需额外调整
  • 若需根据表单字段值动态设置跳转URL,可通过$form.find('input[name="字段名称"]').val()获取字段值,拼接成目标链接

内容的提问来源于stack exchange,提问作者elle D

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 01:44:59