基于元数据登录后自定义重定向用户

时间:2017-02-15 作者:Pavanello

我有一个问题,需要一些帮助:

场景:

表:wp\\U usermeta

enter image description here

根据上表(wp usermeta),在登录被重定向到网站后,我可以为所有有特殊计划的用户使用哪个功能。com/特殊页面,超级计划用户被重定向到网站。com/super页面和Vip计划的用户被重定向到网站。com/vip页面?

2 个回复
最合适的回答,由SO网友:smartcat 整理而成

这应该可以奏效。将此筛选器添加到插件函数文件/类。这将在每次有人登录时自动运行,如果他们是具有“Vip”计划的用户,他们将被重定向到/vip/ 页否则,它们将重定向到默认值。

add_filter( \'login_redirect\', function( $redirect_to, $request, $user ) {

    if( ! is_wp_error( $user ) && \'Vip\' == get_user_meta( $user->ID, \'plan\', true ) ) {
        return home_url( \'vip\' );
    } else {
        return $redirect_to;
    }

}, 10, 3 );

SO网友:Pavanello

很好,根据上面的提示,我重新定向到其他计划,效果非常好。

add_filter( \'login_redirect\', function( $redirect_to, $request, $user ) {

if( ! is_wp_error( $user ) && \'Vip\' == get_user_meta( $user->ID, \'plan\', true ) ) {
    return home_url( \'vip\' );
} else if( ! is_wp_error( $user ) && \'Special\' == get_user_meta( $user->ID, \'plan\', true ) ) {
    return home_url( \'special\' );
} else if( ! is_wp_error( $user ) && \'Super\' == get_user_meta( $user->ID, \'plan\', true ) ) {
    return home_url( \'super\' );
} else {
    return $redirect_to;
}

}, 10, 3 );
谢谢Howdy\\u McGee和smartcat

相关推荐

WP_REDIRECT导致无限循环

Goal: 我修改了permalink,以显示特定类别的类别名称:grill rezepte。默认情况下,永久链接为:https://website.com/post-title 现在只有烧烤餐厅:https://website.com/grill-rezepte/post-title因此,我想在所有grill Recipes上设置301重定向,以便它们移动到新的URL。我有下面的代码(见下文),它会导致一个无限循环。Code:add_action(\'template_redirect\', \'pos