Wp_logout()WordPress 5.1.1中的更改

时间:2019-04-02 作者:jkvgo

我们最近刚刚将WordPress网站升级到5.1.1

升级后,我们在执行wp_logout() WordPress的功能。不知怎的,我们得到了302 响应,但未显示错误/警告。

我把它缩小到wp_logout() 并确定wp_destroy_current_session();wp_clear_auth_cookie(); 工作正常!

这意味着错误发生在wp_logout() 被称为:

do_action( \'wp_logout\' );
我的问题是:

外部插件是否可能以某种方式损坏wp_logout 具有可以中断流程并提供302 或者里面有什么5.1.1 受影响的wp_logout 以某种方式

1 个回复
SO网友:MikeNGarrett

5.1/5.1.1中发生了很多变化,但我在WordPress core中看到的变化不会单独导致302个重定向。

1。wp_logout 可插拔

wp_logout 是一个pluggable function. 这意味着任何人都可以重写该函数并使其执行不同的操作,因为该函数包装在一个条件中,用于检查具有相同名称的其他函数。以下是wp_logout:

if ( ! function_exists( \'wp_logout\' ) ) :
    wp_destroy_current_session();
    wp_clear_auth_cookie();

    /**
     * Fires after a user is logged-out.
     *
     * @since 1.5.0
     */
    do_action( \'wp_logout\' );
endif;

2。wp_logout 调用ado_action 钩子函数的最后一部分是调用do_action 任何人都可以使用它添加到函数中,包括重定向。

3。wp_logout 调用其他函数

wp_logout 呼叫wp_destroy_current_sessionwp_clear_auth_cookie. 这两种情况都可能使事情复杂化。wp_destroy_current_session 可以通过修改来使用其他系统,如Redis storage或其他方法session_token_manager 滤器wp_clear_auth_cookie 是一个可插拔功能,并且还具有do_action

所以,要回答你的问题

WordPress 5.1.1没有更改任何可能导致调用的内容wp_logout() 抛出302重定向,但其他插件或主题有很多机会导致这种情况发生。

相关推荐

wp_logout action not working

我正在尝试删除一些cookie,这些cookie设置用于在用户特别想要注销网站时控制持久登录。我以为这很简单:function remove_user_cookie() { unset($_COOKIE[\'woai\']); unset($_COOKIE[\'woak\']); } add_action(\'wp_logout\', \'remove_user_cookie\'); 我也尝试过:function remove_