如何在Contact Form7提交后跳转感谢页并传递姓名URL参数
解决Contact Form7提交后跳转感谢页并携带姓名参数的问题
你可以通过以下方式修改现有代码,实现将用户填写的姓名作为URL参数附加到感谢页链接中:
步骤说明
- 先确认你的Contact Form7表单中,姓名字段的
name属性值(默认是your-name,如果自定义过需要替换成实际值) - 在
wpcf7mailsent事件回调中,从事件对象里提取表单提交的姓名数据 - 将姓名值编码后拼接到感谢页URL后,再执行跳转
修改后的完整代码
add_action( 'wp_footer', 'mycustom_wp_footer' ); function mycustom_wp_footer() { ?> <script> document.addEventListener( 'wpcf7mailsent', function( event ) { // 从表单数据中找到姓名字段的值,这里假设字段name是your-name,可根据实际修改 const nameField = event.detail.contactFormData.find(item => item.name === 'your-name'); const userName = nameField ? encodeURIComponent(nameField.value) : ''; // 拼接带参数的感谢页URL const thankYouUrl = `https://www.brainiuminfotech.com/thank-you/?name=${userName}`; location = thankYouUrl; }, false ); </script> <?php }
注意事项
- 如果你的姓名字段
name不是your-name,请将代码中的'your-name'替换为表单实际的字段名称(比如CF7表单里写的是[text* your-full-name],那对应的name就是your-full-name) - 使用
encodeURIComponent对姓名值进行编码,避免空格、中文等特殊字符导致的URL格式问题
内容的提问来源于stack exchange,提问作者Aman Gupta
相关产品推荐
相关产品推荐

