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

如何获取Contact Form 7提交的远程IP并在CF7 to API中正常传递

问题根源

[wpcf7.remote_ip] 是Contact Form 7核心为邮件模板上下文单独开发的特殊预留短代码,仅在CF7生成邮件内容的逻辑中会自动解析取值。CF7 to API插件默认仅会读取用户提交的表单字段、以及常规的公开提交元数据,没有内置对这类邮件专属短代码的解析逻辑,因此直接在API配置中填写该标签不会被正确渲染,最终取值为空。

解决方案

有两种可直接落地的修复方案,按需选择即可:

方案1:无代码配置(更推荐新手使用)

直接在Contact Form 7表单编辑页中,新增一个隐藏字段,填写短代码为 [hidden remote_ip default:user_ip],保存表单后,在CF7 to API的配置中,需要填写IP的位置直接使用[remote_ip]标签即可正常推送IP值。

方案2:代码注入(灵活度更高)

如果需要直接使用原生的IP元数据,不想修改表单结构,可以在站点当前使用的主题functions.php文件,或者自定义功能插件中添加如下钩子代码:

// 为CF7 to API注入提交者远程IP到推送 payload
add_filter('cf7_to_api_before_send_request', function($payload, $contact_form, $submission) {
    // 可自行修改数组键名remote_ip为你需要的参数名
    $payload['remote_ip'] = $submission->get_meta('remote_ip');
    return $payload;
}, 10, 3);

添加后无需修改CF7 to API的原有配置,推送时会自动带上remote_ip参数和对应IP值。

内容的提问来源于stack exchange,提问作者Adamo Romano

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 14:36:03