如何在WordPress的WP Webhooks插件中发送实际岗位发布数据?
解决WP Job Manager + WP Webhooks + Zapier 无法获取自定义字段的问题
问题分析
WP Webhooks默认触发WP Job Manager事件时,仅返回基础岗位数据,不会自动包含公司名称、官网、地点这类自定义元字段。直接在Webhook URL中添加{:company_name:}标签不属于正确的字段映射逻辑,因此无法生效。
解决方案
1. 通过WP Webhooks内置配置添加自定义字段
- 进入WordPress后台,打开WP Webhooks → Triggers
- 找到对应WP Job Manager的触发事件(比如「Job Created」),点击「Edit」
- 滚动到「Response Data」区域,启用「Custom Fields」选项
- 点击「Add Custom Field」,依次添加需要的字段:
- 字段名称:
company_name,对应WP Job Manager的元键_company_name - 字段名称:
company_website,对应元键_company_website - 字段名称:
job_location,对应元键_job_location
- 字段名称:
- 保存设置后,重新触发事件,Zapier即可接收到这些新增字段
2. 用WordPress钩子手动追加字段(内置配置失效时使用)
如果内置配置无法获取目标字段,可通过wpwhpro/trigger/custom_data钩子手动注入数据,将以下代码添加到主题的functions.php文件或自定义插件中:
add_filter( 'wpwhpro/trigger/custom_data', function( $custom_data, $trigger, $response_data ) { // 仅针对WP Job Manager的岗位创建事件调整 if ( $trigger === 'wp_job_manager_job_created' ) { $job_post_id = $response_data['job_id']; // 从岗位帖子中获取自定义元字段值 $custom_data['company_name'] = get_post_meta( $job_post_id, '_company_name', true ); $custom_data['company_website'] = get_post_meta( $job_post_id, '_company_website', true ); $custom_data['job_location'] = get_post_meta( $job_post_id, '_job_location', true ); } return $custom_data; }, 10, 3 );
注意:若你的WP Job Manager版本使用不同元键,可借助「Post Meta Inspector」插件查看岗位帖子的实际元键名称,替换代码中对应值。
3. Zapier端同步字段
完成上述配置后,在Zapier的触发步骤中点击「Test trigger」获取最新数据,刷新字段列表即可看到新增的公司名称、官网、地点字段,直接映射到后续步骤即可。
内容的提问来源于stack exchange,提问作者Zepticona
相关产品推荐
相关产品推荐

