2017-09-07 70 views
0

如果購物車不是空的,我想在用戶登錄後將用戶重定向到購物車頁面。我想這如果購物車不爲空,Wocommerce登錄重定向

function woocommerce_custom_redirects() { 


    if(!WC()->cart->is_empty()) 
    wp_redirect("https://edkasa.com/checkout"); 
} 
add_action('wp_login', 'woocommerce_custom_redirects'); 

但是這是行不通的,我使用BuddyPress的插件,任何想法,我要去哪裏錯了。提前致謝。

回答

1

使用wp_redirect()函數,建議在明確調用exit後跟上該函數。欲瞭解更多信息,請參閱Documentation

你可以這樣嘗試添加到您的代碼...喜歡的東西:

function woocommerce_custom_redirects() { 
    ob_start();  // COULD BE A GOOD IDEA 
    if (WC()->cart->get_cart_contents_count() !== 0 || !WC()->cart->is_empty()) { 
     wp_redirect("https://edkasa.com/checkout"); 
     exit;  // VERY VITAL HERE TO EXPLICITLY CALL exit... 
    } 

} 
add_action('wp_login', 'woocommerce_custom_redirects'); 
+0

試過這個,但沒有工作:( –

0

只是刪除以前的答案的靜態鏈接。

function woocommerce_custom_redirects() { 
ob_start();  // COULD BE A GOOD IDEA 
if (WC()->cart->get_cart_contents_count() !== 0 || !WC()->cart->is_empty()) { 
    global $woocommerce; 
    $checkout_url = $woocommerce->cart->get_checkout_url(); 

    wp_redirect($checkout_url); 
    exit;  // VERY VITAL HERE TO EXPLICITLY CALL exit... 
} 
} 
add_action('wp_login', 'woocommerce_custom_redirects'); 
0

你應該嘗試WooCommerce專用過濾鉤子woocommerce_login_redirect這樣:

add_filter('woocommerce_login_redirect', 'woocommerce_custom_redirects', 10, 1); 
function wc_login_redirect($redirect_to) { 

    if(! WC()->cart->is_empty()) 
     $redirect_to = wc_get_checkout_url(); 

    return $redirect_to; 
} 

代碼放在您的活動子主題(或主題)的function.php文件或也以任何插件文件。

相關問題