2017-05-27 3 views
0

Ich möchte, dass der Benutzer zu einer bestimmten URL weitergeleitet wird, wenn er auf die Schaltfläche "In den Warenkorb" klickt. Im Moment habe ich dies:Benutzerdefinierte URL zum Warenkorb für spezifische Produkte in Woocommerce?

/** 
* Set a custom add to cart URL to redirect to 
* @return string 
*/ 
    function custom_add_to_cart_redirect() { 
return 'http://www.yourdomain.com/your-page/'; 
} 
add_filter('woocommerce_add_to_cart_redirect', 
'custom_add_to_cart_redirect'); 

Doch diese Umleitungen alle den Warenkorb Schaltflächen hinzufügen, wie kann ich die URL spezifisch für das Produkt zu machen? Danke

Antwort

2
add_filter('woocommerce_add_to_cart_redirect', 'productbase_redirect_on_add_to_cart'); 
function productbase_redirect_on_add_to_cart() { 

    //Get product ID 
    if (isset($_POST['add-to-cart'])) { 
     $product_id = (int) $_POST['add-to-cart'] ;    
    } 
    // set redirect with product id here 

} 
0

Sie müssen eine bedingte Logik verwenden, um die zurückgegebene URL zu ändern, wenn diese bestimmten Bedingungen erfüllt sind. Im Folgenden wird die URL geändert, wenn das Produkt, das zum Einkaufswagen hinzugefügt wird, die ID 999 hat.

add_filter('woocommerce_add_to_cart_redirect', 'custom_add_to_cart_redirect'); 

function custom_add_to_cart_redirect($url) { 

    // The product ID you want a specific redirect for 
    $matched_id = 999; 

    // If product ID matches, modify redirect 
    if (isset($_POST['add-to-cart'])) && $matched_id = (int) $_POST['add-to-cart']) {    
     $url = 'http://www.yourdomain.com/your-page/'; 
    } 
    // always return a value 
    return $url; 

} 
Verwandte Themen