【问题标题】:Hide pipe | in Gravity Forms Entry Output隐藏管道 |在重力形式输入输出
【发布时间】:2020-11-21 20:01:56
【问题描述】:

我需要帮助从我所有 Gravity 表单上显示的条目中删除或隐藏一个值

我想从输出中删除“|330”...只剩下“1GB”了

【问题讨论】:

  • 你在哪里输出这个(即通知、确认、API)?以及如何(即合并标签,PHP)?
  • API... 我需要将此数据发送到外部 WebHook,发现它失败的原因是因为“|330”
  • 数据是如何发送到 webhook 的?您使用的是 Gravity Forms Webhooks Add-On、gform_after_submission 等钩子还是其他方法?
  • 是的,我使用了 Gravity Forms Webhook 插件,但它没有提交 - 它一直在队列中添加任务。我使用了 zapier,甚至使用了automate.io 来自动执行任务,但不幸的是它并没有成功。我发现错误是因为我在应该提交的值上附加了“|330”

标签: wordpress hook customization gravity-forms-plugin gravityforms


【解决方案1】:

您可以使用主题functions.php文件中的gform_webhooks_request_data过滤器或自定义函数插件在重力表单Webhooks附加组件将数据发送到指定端点之前对其进行修改。

此示例适用于表单 ID 1。

add_filter( 'gform_webhooks_request_data_1', function ( $request_data ) {
    gf_webhooks()->log_debug( 'gform_webhooks_request_data: before => ' . print_r( $request_data, true ) );
    if ( ! empty( $request_data['4'] ) ) {
        list( $value, $price ) = explode( '|', $request_data['4'] );
        $request_data['4'] = $value;
        gf_webhooks()->log_debug( 'gform_webhooks_request_data: after => ' . print_r( $request_data, true ) );
    }

    return $request_data;
} );

【讨论】:

  • 非常感谢 Richard... 如何更改表单 ID 并希望这适用于任何领域?
  • 更改过滤器名称末尾的 1 以匹配您的表单 ID,例如如果您的表单 ID 为 20,gform_webhooks_request_data_1 可以更改为 gform_webhooks_request_data_20。此示例中使用的方法适用于大多数基于选择的定价字段。
  • 我已经尝试了Richard提供的上述sn-p,它没有工作......或者,如果使用GF Rest API调用,值会有所不同吗?
  • gform_webhooks_request_data 过滤器仅适用于 Gravity Forms Webhooks 插件处理的提要,它不会修改您可以通过 REST API 检索的条目数据。我已经使用日志记录更新了示例,当为附加组件启用所有消息的记录时,这些语句将写入附加日志:docs.gravityforms.com/logging-and-debugging
  • 基于该日志,提要请求正文设置为“选择字段”,因此您不需要代码,而是在字段映射下拉菜单中选择“添加自定义值”选项,然后在出现的文本输入输入带有值修饰符的字段合并标签,例如{label:4:value}
猜你喜欢
  • 1970-01-01
  • 2016-03-25
  • 2012-06-25
  • 1970-01-01
  • 1970-01-01
  • 2021-01-10
  • 1970-01-01
  • 2013-11-17
  • 1970-01-01
相关资源
最近更新 更多