我有一个联系人表单7,它向API发送信息。我想在前端显示API响应。
解决这类问题有两种方法,
1-使用CF7插件的消息响应挂钩,
add_filter(\'wpcf7_display_message\', \'my_response_msg\',10,2);
function my_response_msg($message, $status){
if(\'mail_sent_ok\'==$status){
$form = wpcf7_get_current_contact_form(); //in case you need the cf7 form object to validate....
$message = \'Api response is: \'. $api;
}
return $message;
}
但是,请记住,您只能在此消息中使用文本,由于报告的CF7插件的限制,HTML标记将无法工作
here 和
here, 正如您所了解的,该功能确实存在,但插件作者倾向于在此类问题上束手无策。
2-如果您需要更丰富的界面,那么您可以将表单提交过程重定向到另一个页面,在该页面上显示您的API响应,方法是使用与此类似的逻辑将其存储在瞬态中answer...
或者,您可以在CF7成功提交时触发的表单页面上加载自定义JavaScriptwpcf7mailsent
event 然后使用AJAX请求获取存储在服务器上作为瞬态的API请求。