我正在使用Woocommerce并且我已经自定义了我的网站以在表格中显示产品标题,当点击时,产品通过ajax放置在Woocommerce迷你购物车小部件中而不刷新页面。
当我更新到'Woocommerce 2.5.2'时,Ajax添加到购物车不再有效,页面刷新。
我用来添加产品的当前链接是:
$html = $html . '<div class="numlist_thumb"><a data-product_id="' . $id1 . '" data-product_sku="' . $number1 . '" class="numbertabanchor add_to_cart_button dp-button product_type_simple" rel="nofollow" href="/?add-to-cart=' . $id1 . '">' . $number1 . '</a></div>';
我非常感谢有关如何在没有页面刷新的情况下通过ajax添加产品的任何建议。
答案 0 :(得分:0)
这是与woocommerce的主题冲突。我也遇到了这个问题。因此,每当woocommerce推出任何重大更新时,主题也会根据最新的woocommerce进行更新。所以你必须根据woocommerce更新你的主题。
答案 1 :(得分:0)
添加&#34; ajax_add_to_cart&#34;您的<a>
代码
作为参考,看一下我的单品/ add-to-cart / simple.php的代码
<button type="submit" class="single_add_to_cart_button add_to_cart_button button ajax_add_to_cart button--itzel button--text-thick" data-quantity="1" data-product_id="<?php echo $product->id; ?>"><i class="button__icon icon icon-cart"></i><span><?php echo esc_html( $product->single_add_to_cart_text() ); ?></span></button>
答案 2 :(得分:0)
您可以通过[wp_ajax][1]
操作轻松创建添加到购物车功能,在回调功能中,您只需添加以下代码
add_action( "wp_ajax_custom_add_to_cart", "custom_add_to_cart_callback" );
add_action( "wp_ajax_nopriv_custom_add_to_cart", "custom_add_to_cart_callback" );
function custom_add_to_cart_callback(){
global $woocommerce;
$woocommerce->cart->add_to_cart( $_POST[ 'prod_id' ] );
wp_die();
}
在此之后,您可以轻松地对服务器进行ajax调用,然后将产品ID发布为变量prod_id
,并添加另一个名为action的变量custom_add_to_cart