在单个产品页面/ Wordpress / Woocommerce中禁用ajax以添加到购物车按钮

时间:2017-04-15 01:57:36

标签: php ajax wordpress woocommerce e-commerce

我正在使用wordpress,cartify主题,woocommerce 3.0.3开发电子商务网站。

我想在点击立即购买产品后重定向到购物车或结帐。

Here you can see the page

**Add to cart behaviour**

✔︎ Redirect to the cart page after successful addition
(Unchecked) Enable AJAX add to cart buttons on archives

我在添加到购物车点击后激活重定向到购物车并在woo商业选项中离开,但似乎仍然使用ajax。

**WooCommerce System status**

MySQL version: 5.5.51 - We recommend a minimum MySQL version of 5.6.
(THE HOST PROVIDER DOESN'T ALLOW ME TO UPGRADE)

WC pages
My account:      Page does not contain the shortcode.

cartify/woocommerce/single-product/product-image.php version 2.6.3 is out of date. The core version is 3.0.2, 
cartify/woocommerce/single-product/product-thumbnails.php version 2.6.3 is out of date. The core version is 3.0.2,
This two really mess my site when I update them.

有什么建议吗?

提前感谢您的帮助

2 个答案:

答案 0 :(得分:0)

所以我在这里解释三个步骤

第1步如果您希望客户在添加到购物车结帐后重定向,请将以下代码添加到functions.php

function my_custom_add_to_cart_redirect( $url ) {

  $url = WC()->cart->get_checkout_url();
  // $url = wc_get_checkout_url(); // since WC 2.5.0

  return $url;

  }
  add_filter( 'woocommerce_add_to_cart_redirect', 'my_custom_add_to_cart_redirect' );

第2步如果您希望客户在添加到购物车后重定向到购物车页面,则显示以下图片链接,显示您可以从管理员端执行此操作

http://prntscr.com/ewo99j

第3步如果来自管理员端,则不会将客户重定向到购物车页面,然后将以下代码添加到您的函数中.PHP

 function custom_add_to_cart_redirect() { 
  return 'http://localhost:8080/wordpress2/cart/'; 
  }
  add_filter( 'woocommerce_add_to_cart_redirect', 'custom_add_to_cart_redirect' );

将此网址http://localhost:8080/wordpress2/cart/替换为购物车页面网址 希望它对你有用

由于

答案 1 :(得分:0)

您可以在主题中使用此jquery。

 $(document).ready(function() {
     $(".add_to_cart_button").removeClass("ajax_add_to_cart")
 });

然后您可以在functions.php中使用此代码重定向到结帐页面:

add_filter('woocommerce_add_to_cart_redirect','themeprefix_add_to_cart_redirect');
function themeprefix_add_to_cart_redirect() {
     global $woocommerce;
     $checkout_url = $woocommerce->cart->get_checkout_url();
     return $checkout_url;
}