讓我先說抱歉,這個稱號有點模糊啓動。更具體的標題應該是:如何改變「加入購物車」按鈕,在woocommerce店重定向
如何選擇woocommerce店面主題(可能還有其他主題)的產品檔案頁面(又名商店頁面)中的「添加到購物車」按鈕的行爲,以便它添加物品放入購物車,然後停留在商店頁面上,或重定向到購物車。
但是,這是一個漫長的標題...
讓我先說抱歉,這個稱號有點模糊啓動。更具體的標題應該是:如何改變「加入購物車」按鈕,在woocommerce店重定向
如何選擇woocommerce店面主題(可能還有其他主題)的產品檔案頁面(又名商店頁面)中的「添加到購物車」按鈕的行爲,以便它添加物品放入購物車,然後停留在商店頁面上,或重定向到購物車。
但是,這是一個漫長的標題...
有可能是一種方式與woocommerce鉤子和過濾器來做到這一點,但花了一些時間去解決這個問題的方式之後,我遇到最簡單的辦法絆倒起初並不完全明顯。
解決方案: 選中或清除「啓用AJAX添加到購物車按鈕上的檔案」下WooCommerce>產品>顯示按鈕>添加到購物車行爲的WP管理區的部分。
這顯然正是這個按鈕是,但是,在我看來,這個複選框的標題是非常誤導的,這就是爲什麼我花了這麼長時間才找到這個解決方案。它可能應該更改爲更類似於:「成功添加歸檔(商店)後重定向到購物車頁面」。使用的縮寫AJAX是不必要的,並且非常誤導的複選框的效果......
重定向到自定義網址:
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');
不,這似乎並不適用於檔案頁面(商店),只能從單個產品頁面上運行。在我發佈這個問題之前,我確實嘗試了鉤入'woocommerce_add_to_cart_redirect' ... [這是一個鏈接](https://theeventscalendar.com/support/forums/topic/woocommerce-add_to_cart_redirect-filter-useless-with-wootickets/ )轉換爲別人的描述,這並不能完全解釋場景,但可能會提供一些線索,說明爲什麼上述功能無法正常工作。 –
「重定向到成功加入後,將車頁」複選框,並導致單品頁面重定向到在加入購物車,但它似乎並沒有對產品中的存檔(店鋪頁)工作。 ..我相信,這是第二個檢查按鈕的用途:檔案中的產品。 –
你說得對,這兩個複選框在功能上都非常清晰明確。 – Anfelipe
我不同意第二種描述的清晰度;對於不知道AJAX是什麼的人來說,「啓用AJAX」可能意味着什麼......此外,缺少標點符號使得您不清楚您是啓用「AJAX」(影響添加到購物車按鈕),還是啓用「 AJAX添加到購物車按鈕「。這是兩個非常不同的含義,第二個可能意味着如果該框未被選中,則可能不會顯示「添加到購物車」按鈕本身;但的確如此。如果你把它作爲第一個含義,那麼它仍然沒有涉及重定向。 –