将登录用户从特定页面重定向到Woocommerce我的帐户页面

时间:2018-08-16 22:23:06

标签: php wordpress templates woocommerce logged

在Woocommerce中,我试图找到一种解决方案来检查用户是否在自定义页面上登录,如果是,则将用户重定向到“我的帐户”页面。

对此有任何帮助。

3 个答案:

答案 0 :(得分:0)

您应该使用$ _SESSION。 这可以帮助您验证用户是否在页面上登录。

if(isset($_SESSION['UserID'])){
    header('Location: [url]');
}

答案 1 :(得分:0)

使用Wordpress:

    $current_user = wp_get_current_user();
    if ( 0 != $current_user->ID ) {
        $template = get_page_template_slug($post->ID);
        if($template == "your_custom_template_name"){
             wp_redirect( wp_login_url() )    
        }   
    }

答案 2 :(得分:0)

请尝试以下操作,在其中您将用真实的页面ID,内容或名称替换 'some-page' 。该代码会将登录用户的已定义特定页面重定向到“我的帐户”页面:

add_action('template_redirect', 'specific_logged_in_redirect');
function specific_logged_in_redirect() {
    if ( is_page('some-page') && is_user_logged_in() ) {
        wp_redirect( get_permalink( get_option('woocommerce_myaccount_page_id') ) );
        exit();
    }
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试,可以正常工作。


对于2页,您将使用:is_page( array( 'some-page', 'some-other' ) )