Bypass WooCommerce我的帐户登录自定义登录

问题描述:

我正在创建批发会员只woocommerce网站。我至今成功地锁定所有woocommerce下来通过创建一个重定向到我的账户页面非登录使用这段代码的用户,我发现在这里堆上市Bypass WooCommerce我的帐户登录自定义登录

add_action('template_redirect', 'wc_redirect_non_logged_to_login_access'); 
function wc_redirect_non_logged_to_login_access() { 

    if (!is_user_logged_in() && (is_woocommerce() || is_shop() || 
is_cart() || is_checkout())) { 
     wp_redirect(get_permalink( 
get_option('woocommerce_myaccount_page_id'))); 
     exit(); 
    } 
} 

它完美,但我想使用我创建的自定义登录页面。 www.example.com/customlogin - 在哪里/如何将此插入到上面的代码中?我试过,但得到了一个语法错误,并花了半天锁定我的网站哈哈。

接下来我需要将自定义登录页面绑定到woocommerce my-account页面,以便我可以绕过woocommerce隐藏在代码中的默认登录。所以基本上如果一个“未登录的用户”点击“我的帐户”链接,他们将被带到自定义登录页面。通过这种方式,我可以分别编辑登录页面和我的帐户页面,这些页面当我们在同一页面上时,我无法真正做到,而且我的所有编辑效果都是同时进行的。

谢谢。

你应该试试下面的代码将解决您的两个要求:

add_action('template_redirect', 'wc_redirect_non_logged_to_login_access'); 
function wc_redirect_non_logged_to_login_access() { 

    if (! is_user_logged_in() && (is_woocommerce() || is_shop() || 
is_cart() || is_checkout() || is_account_page())) { 
     wp_redirect(home_url('/customlogin')); 
     exit(); 
    } 
} 

代码放在您的活动子主题(或主题)的function.php文件或也以任何插件文件。

延长条件,我的帐户页,我用的是有条件的WC标签:is_account_page()
对于重定向到您的自定义窗体使用:wp_redirect(home_url('/customlogin'));

该代码进行测试和作品

+0

完美地工作,感谢一百万!一直试图弄清楚和/或在网上找到代码来做这个几周!你太棒了! – Vash