如何更改woocommerce商店中“添加到购物车”按钮的重定向

时间:2016-02-20 03:58:25

标签: wordpress woocommerce storefront

首先让我说抱歉这个标题有些模糊。更具体地说,标题应该是:

如何选择woocommerce店面主题(可能还有其他主题)产品档案页面(又名购物页面)中“添加到购物车”按钮的行为,以便将项目添加到购物车然后保留在商店页面上,或重定向到购物车。

但这是一个很长的标题......

3 个答案:

答案 0 :(得分:2)

重定向到自定义网址

function my_custom_add_to_cart_redirect( $url ) {
    $url = get_permalink( 1 ); // URL to redirect to (1 is the page ID here)
    return $url;
}
add_filter( 'woocommerce_add_to_cart_redirect', 'my_custom_add_to_cart_redirect' );

重定向到结帐:

function my_custom_add_to_cart_redirect( $url ) {
    $url = WC()->cart->get_checkout_url();
    return $url;
}
add_filter( 'woocommerce_add_to_cart_redirect', 'my_custom_add_to_cart_redirect' );

某些类别的重定向

function my_custom_add_to_cart_redirect( $url ) {
    if ( ! isset( $_REQUEST['add-to-cart'] ) || ! is_numeric( $_REQUEST['add-to-cart'] ) ) {
        return $url;
    }
    $product_id = apply_filters( 'woocommerce_add_to_cart_product_id', absint( $_REQUEST['add-to-cart'] ) );
    // Only redirect products that have the 't-shirts' category
    if ( has_term( 't-shirts', 'product_cat', $product_id ) ) {
        $url = WC()->cart->get_checkout_url();
    }
    return $url;
}
add_filter( 'woocommerce_add_to_cart_redirect', 'my_custom_add_to_cart_redirect' );

答案 1 :(得分:1)

根据官方WooCommerce文档enter image description here

您可以在选项卡产品的“显示”部分找到符合您需要的复选框:[]在...后重定向到购物车页面 欢呼声。

答案 2 :(得分:0)

使用woocommerce钩子和过滤器可能有办法做到这一点,但是花了一些时间试图以这种方式解决这个问题后,我偶然发现了一个简单的解决方案,起初并不是很明显。

解决方案: 选中或取消选中 WooCommerce>下的“启用存档上的AJAX添加到购物车按钮”按钮产品>显示> WP管理区域的添加到购物车行为部分。

这显然正是这个按钮的用途,然而,在我看来,这个复选框的标题非常具有误导性,这也是我花了这么长时间才找到这个解决方案的原因。它可能应该改为更像:“从存档(商店)成功添加后重定向到购物车页面”。使用首字母缩略词AJAX是不必要的,并且非常误导了复选框的效果......