重定向/成员/到/成员/用户

时间:2018-09-16 作者:Garrosh

如果用户is loggued 重定向/member//member/user ? (User是display\\u名称)

如果是,我怎么做?谢谢!:)

多亏了杰克,我才尝试在谷歌上搜索“Wp redirect”。我写道:

function my_page_template_redirect()
{  $user = wp_get_current_user();
    if( is_page( \'membre\' ) && is_user_logged_in() )
    {
        wp_redirect( home_url( \'/member/\'.$user->display_name.\'\' ) );
        die;

    }
}
add_action( \'template_redirect\', \'my_page_template_redirect\' );


function my_page_template_redirect2()
{  $user = wp_get_current_user();
    if( is_page( \'member\' ) && !is_user_logged_in() )
    {
        wp_redirect( home_url( \'/\' ) );
        die;

    }
}
add_action( \'template_redirect\', \'my_page_template_redirect2\' );
我在管理部分创建了一个“空白”成员页面。

这是一个“良好的重定向”(性能、安全性、谷歌搜索引擎优化…)还是我需要改变一切:D?对不起,英语不是我的母语。

1 个回复
SO网友:Johansson

你可以template_redirect 操作挂钩并重定向用户。我假设您想重定向当前登录的用户。

add_action( \'template_redirect\', \'wpse314345_redirect_users\' );
function wpse314345_redirect_users( $template ){
    // Check if the user is logged in
    if( is_user_logged_in() ) { 
        // Get the current user
        $user = wp_get_current_user();
        // Redirect the user
        wp_safe_redirect( esc_url( site_url( \'member/\' . $user->display_name) ) );
        exit();
    }

    return $template;
}
您也可以使用其他操作挂钩,但请确保操作不会太早(查询尚未设置)或太迟(标头已发送)。

但是,这会将每个请求重定向到该特定URL。您可能还需要根据需要进行其他检查。

结束

相关推荐

为什么我的wp_Safe_REDIRECT输出ERR_TOO_MANY_REDIRECTS错误?

我已经构建了一个演示页面,现在每当用户登录并且没有设置主题时,我想重定向到该页面,我的代码是:function add_admin_page() { if ( empty( $_GET[\'page\'] ) || $_GET[\'page\'] !== \'theme_setup\' ) { return; } if ( ob_get_length() ) { ob_end_clean();