我有一个cookie,里面有我用来填充重力表单的数据。但是,在表单成功提交后,我想取消设置(或者更准确地说,过期)该cookie。
起初,我认为gform_after_submission
钩子会起作用的。我尝试简单地指向一个函数,该函数执行以下操作:
public static function clearItems() {
setcookie(\'items\', \'\', time() - 86400, \'/\');
}
问题是这个钩子是在头之后执行的,因此没有设置更新的值和过期时间。
问题
有没有办法做到这一点(也许我错过了一个更好的钩子)?
我考虑过的另一种可能性是重定向到页面并在那里处理它,但我不希望这样处理。
最合适的回答,由SO网友:Dave from Gravity Wiz 整理而成
我运行此代码试图在gform_after_submission
钩子,它按预期工作。
add_action( \'gform_after_submission\', function() {
setcookie( \'boom\', \'boom\', time() + 3600, \'/\' );
} );
当
gform_after_submission
操作已触发。如果您收到有关此的警告,则可能有其他内容在过程的早期将某些内容输出到页面。