成功提交重力表单时取消设置Cookie

时间:2016-08-13 作者:Phil Birnie

我有一个cookie,里面有我用来填充重力表单的数据。但是,在表单成功提交后,我想取消设置(或者更准确地说,过期)该cookie。

起初,我认为gform_after_submission 钩子会起作用的。我尝试简单地指向一个函数,该函数执行以下操作:

public static function clearItems() {
    setcookie(\'items\', \'\', time() - 86400, \'/\');
}
问题是这个钩子是在头之后执行的,因此没有设置更新的值和过期时间。

问题

有没有办法做到这一点(也许我错过了一个更好的钩子)?

我考虑过的另一种可能性是重定向到页面并在那里处理它,但我不希望这样处理。

1 个回复
最合适的回答,由SO网友:Dave from Gravity Wiz 整理而成

我运行此代码试图在gform_after_submission 钩子,它按预期工作。

add_action( \'gform_after_submission\', function() {
    setcookie( \'boom\', \'boom\', time() + 3600, \'/\' );
} );
gform_after_submission 操作已触发。如果您收到有关此的警告,则可能有其他内容在过程的早期将某些内容输出到页面。

相关推荐

Cookies in template

我需要根据cookies只显示一次页面的某些部分。主要问题是我只能在插件中设置cookie,挂起init操作。我已经读了20页的谷歌,这个网站,问了2个论坛,但我仍然有这个问题。任何帮助都将不胜感激!