php - plugin - wordpress ajax popup
woocommerce custom ajax top cart (1)
Prueba esto:
Functions.php
add_filter(''add_to_cart_fragments'', ''woocommerce_header_add_to_cart_fragment'');
function woocommerce_header_add_to_cart_fragment( $fragments )
{
global $woocommerce;
ob_start(); ?>
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e(''View your shopping cart'', ''woothemes''); ?>"><?php echo sprintf(_n(''%d item'', ''%d items'', $woocommerce->cart->cart_contents_count, ''woothemes''), $woocommerce->cart->cart_contents_count);?> <?php echo $woocommerce->cart->get_cart_total(); ?></a>
<?php
$fragments[''a.cart-contents''] = ob_get_clean();
return $fragments;
}
Código de carro:
<div class="header_cart">
<h5><a href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e(''View your shopping cart'', ''woothemes''); ?>"><?php _e(''Shopping Cart'', ''home-shopper''); ?></a></h5>
<div class="cart_contents">
<a class="cart-contents" href="<?php echo $woocommerce->cart->get_cart_url(); ?>" title="<?php _e(''View your shopping cart'', ''woothemes''); ?>"><?php echo sprintf(_n(''%d item'', ''%d items'', $woocommerce->cart->cart_contents_count, ''woothemes''), $woocommerce->cart->cart_contents_count);?> <?php echo $woocommerce->cart->get_cart_total(); ?></a>
</div>
</div>
Hola, estoy tratando de conseguir que el carrito superior en woocommerce actualice automáticamente la cantidad y el precio.
Tengo que funcionar hasta cierto punto al usar esto como una plantilla:
http://www.amberweinberg.com/developing-custom-woocommerce-themes/
El problema es que necesito usar ajax para alterar 2 elementos, no solo uno,
aquí está el html que estoy usando en los temas del archivo fuctions.php
<div class="cartWrapper">
<a href="#" title="Checkout">
<div id="cartsummary"><p>
<span class="cart-bubble cart-contents"><a class="cart-bubble cart-contents"><?php echo sprintf(_n(''%d'', ''%d'', $woocommerce->cart->cart_contents_count, ''woothemes''), $woocommerce->cart->cart_contents_count);?></a>
<?php if($woocommerce->cart->get_cart_url() != ''''){ $cart=$woocommerce->cart->get_cart_url();}
else {$cart = home_url().''/cart/'';};
?></span>
</div>
</a>
<div id="carttotal">
<div id="cartprice">
<p>
<a class="cart-total"><?php echo $woocommerce->cart->get_cart_total() ?></a>
</p>
</div>
<a class="button" href="#" title="Checkout" type="button">View Basket</a>
</div>
</div>
y el código para actualizar automáticamente el carrito sin actualizar:
// Ensure cart contents update when products are added to the cart via AJAX (place the following in functions.php)
add_filter(''add_to_cart_fragments'', ''woocommerce_header_add_to_cart_fragment'');
function woocommerce_header_add_to_cart_fragment( $fragments ) {
global $woocommerce;
ob_start();
?>
<a class="cart-bubble cart-contents"><?php echo sprintf(_n(''%d'', ''%d'', $woocommerce->cart->cart_contents_count, ''woothemes''), $woocommerce->cart->cart_contents_count);?></a>
<a class="cart-total"><?php echo $woocommerce->cart->get_cart_total() ?></a>
<?php
$fragments[''a.cart-contents a.cart-total''] = ob_get_clean();
return $fragments;
}
El problema es que mientras esto funciona, produce una larga lista de totales de carritos y artículos en el carro que tengo que esconder usando el sobre flujo del estilo css: oculto en el elemento relevante. Presumiblemente esto se debe a que he codificado incorrectamente el elemento ajax, ¿alguien puede señalarme en la dirección correcta?
Gracias