2

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

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

不过这个标题好长……

4

3 回答 3

4

重定向到自定义 URL:

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' );
于 2016-02-20T08:54:34.820 回答
2

根据官方 WooCommerce 文档在此处输入图像描述

您将在“产品”选项卡的“显示”部分中找到满足您需要的复选框:[ ] 之后重定向到购物车页面... 干杯。

于 2016-02-20T04:40:01.577 回答
0

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

解决方案:选中或取消选中WP 管理区域的WooCommerce > Products > Display > Add to Cart Behavior部分下的“ Enable AJAX add to cart buttons on archives ”按钮。

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

于 2016-02-20T03:58:25.137 回答