Login_redirect挂钩无效

时间:2012-09-10 15:55:21

标签: php wordpress redirect login hook

我已经按照下面描述的相同方式使用了这个钩子,可能出现什么问题?

class my_plugin {

    function __construct()
    {
        parent::__construct();

        var_dump(__LINE__); // run 
        add_filter('login_redirect', array($this, 'login_redirect'));
    }

    function login_redirect()
    {
        var_dump(__LINE__); // not run
    }

}

编辑1

成功登录进程后运行此hook。正如我所说,我已经在另一个插件中使用了这个钩子。问题是什么可能导致这种故障?

1 个答案:

答案 0 :(得分:1)

好的,明白了。

记录:

可以肯定的是,它可以帮助别人。事实上很久以前我遇到了由同样的原因引发的问题:is_admin()错误使用:

我的初学者代码是:

if (is_admin())
{
    // block 1
    // 
    // run admin classes
    // including my_plugin class
    // that includes login_redirect hook // WRONG!
}
else
{
    // block 2
    // 
    // run frontend classes
}

login_redirect挂钩不在管理页面内运行(is_admin()条件)

解决方案:将login_redirect挂钩移至前端块