我需要以某种方式将重力表单提交的条目id插入重定向确认。我的问题是,当试图通过管理界面创建确认时,我可以将条目id插入到隐藏字段中,但它不存在,直到所有操作都触发后,我的查询字符串变为空白(尽管其他操作仍然有效)。我在想gform_confirmation
, 我可以通过在确认发生之前抓取它并动态更改它来访问,但这似乎也不起作用。以下是我目前在functions.php:
add_action("gform_confirmation", "custom_confirm", 10, 4);
function custom_confirm($confirmation, $form, $lead, $is_ajax){
$url = $confirmation . "&rma" . $lead[\'id\'];
$confirmation = array(\'redirect\' => $url);
}
正如你所看到的,我只是想加上“&;rma=[/em>条目id]”,尽管我不确定
$lead[\'id\']
甚至是我需要访问的正确变量。也不确定最后一次分配是否以正确的方式更改URL。
TL;DR:我需要更改确认重定向以包含条目ID,我想知道这是否可能。
最合适的回答,由SO网友:Dylan Hildenbrand 整理而成
我想出来了。我的代码中确实有一些语法错误。应该是add_filter
而不是add_action.
而且$confirmation
是一个数组,从未返回。我想我的大脑因为看了这么久而感到疲惫。不管怎么说,我是这么做的。
add_filter("gform_confirmation", "confirm_change", 10, 4);
function confirm_change($confirmation, $form, $lead, $ajax){
$url = get_bloginfo(\'url\') ."/thank-you/?page=". $lead[\'1\']. "&rma=" . ($lead[\'id\']);
$confirmation = array(\'redirect\' => $url);
return $confirmation;
}