重定向用户登录的正确方法

时间:2013-06-06 作者:Josh Levinson

流行的成员插件“s2Member”使用wp\\u登录操作挂钩将登录用户重定向到s2认为合适的位置。这会导致与其他插件发生冲突,因为其他插件可能依赖于从WP\\u登录功能返回的WP\\u用户对象,如果用户被WP\\u登录挂钩重定向,则不会发生这种情况。

What is the correct way to redirect a newly logged in user? I would assume the filter login_redirect, no?

问题是s2Member在同一个过滤器上使用remove\\u all\\u过滤器。。。

请记住,虽然这看起来像是一个插件特定的问题,但我真正的问题是粗体的,并且通常适用于WP。

1 个回复
SO网友:s_ha_dum

我不确定这个问题是否有一个规范的答案,但有一个login_redirect 从Codex来看,hook明确表示“在登录后更改重定向到的位置”

但我对此持谨慎态度。

我不知道s2Member 插件正在执行或为什么执行wp_signon 胡克,根据你的描述(我没看过)。这可能是插件需要做什么的唯一方法。

当然,这会干扰其他插件。有时插件只是冲突。这可能是不可避免的。

我可以想象在什么情况下你会想要杀死一切——访问/安全相关的情况——但正如我所说的,在不知道插件到底在做什么的情况下,我无法评论(我认为)它是否“做得对”。

looking into the wp_login hook, 我注意到这是一种行为。动作是用来做这类事情的钩子。如果钩子是一个过滤器,那么“做错了”的情况会更多,应该合理地预期它会返回数据。行动只是“做事”。它们是插入、重组的一种方式。

结束

相关推荐

Redirect on successful login

我正在使用以下代码段控制成功登录后的重定向。。。。add_action( \'wp_login\', \'redirect_on_login\' ); // hook failed login function redirect_on_login() { $referrer = $_SERVER[\'HTTP_REFERER\']; $homepage = get_option(\'siteurl\');