admin管理员组

文章数量:1426040

I have created one page on my WordPress that I want to set only woocommerce user can view it. That mean they must logged in first to be able to view it. For unregistered user if they try to access to that page, we will redirect them to my-account page.

I found this similar solution but this only work for woocommerce pages but how to insert to code for wordpress pages. This is the code:

function wpse_131562_redirect() {
    if (
        ! is_user_logged_in()
        && (is_woocommerce() || is_cart() || is_checkout())
    ) {
        // feel free to customize the following line to suit your needs
        wp_redirect(site_url('my-account/'));
        exit;
    }
}

add_action('template_redirect', 'wpse_131562_redirect');

Let say my page is mydomainname/wordpress-pages

How to be able to restrict that pages? looking forward your help.

I have created one page on my WordPress that I want to set only woocommerce user can view it. That mean they must logged in first to be able to view it. For unregistered user if they try to access to that page, we will redirect them to my-account page.

I found this similar solution but this only work for woocommerce pages but how to insert to code for wordpress pages. This is the code:

function wpse_131562_redirect() {
    if (
        ! is_user_logged_in()
        && (is_woocommerce() || is_cart() || is_checkout())
    ) {
        // feel free to customize the following line to suit your needs
        wp_redirect(site_url('my-account/'));
        exit;
    }
}

add_action('template_redirect', 'wpse_131562_redirect');

Let say my page is mydomainname/wordpress-pages

How to be able to restrict that pages? looking forward your help.

Share Improve this question edited Feb 17, 2016 at 4:38 Adam 16.5k1 gold badge45 silver badges62 bronze badges asked Feb 17, 2016 at 4:29 kunatokunato 32 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 0

Add your page slug in if condition too.

function wpse_131562_redirect() {
    if (! is_user_logged_in()
        && (is_woocommerce() || is_cart() || is_checkout() || is_page('wordpress-pages'))
    ) {
        // feel free to customize the following line to suit your needs
        wp_redirect(site_url('my-account/'));
        exit;
    }
}

add_action('template_redirect', 'wpse_131562_redirect');

本文标签: Make wordpress pages accessible for Woocommerce logged in users only