Last active
November 22, 2022 13:34
-
-
Save DanielSantoro/948c5000850c4695f30db8542f8bc966 to your computer and use it in GitHub Desktop.
AJAX Update Cart thats added to Template File Manually (
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Ensure cart contents update when products are added to the cart via AJAX (place the following in functions.php). | |
// Used in conjunction with https://gist.github.com/DanielSantoro/1d0dc206e242239624eb71b2636ab148 | |
// Compatible with WooCommerce 3.0+. Thanks to Alex for assisting with an update! | |
function woocommerce_header_add_to_cart_fragment( $fragments ) { | |
global $woocommerce; | |
ob_start(); | |
?> | |
<a class="cart-customlocation" href="<?php echo esc_url(wc_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-customlocation'] = ob_get_clean(); | |
return $fragments; | |
} |
Hi, the function alone will not do anything, in my case, I also had to add the proper filter, so that function will be used:
add_filter( 'woocommerce_add_to_cart_fragments', 'woocommerce_header_add_to_cart_fragment', 10, 1 );
function woocommerce_header_add_to_cart_fragment( $fragments ) {
global $woocommerce;
ob_start(); ?>
<a class="cart-customlocation et-cart-info" href="<?php echo wc_get_cart_url(); ?>" title="<?php _e( 'View your shopping cart' ); ?>"><span><?php echo sprintf ( _n( '%d item', '%d items', WC()->cart->get_cart_contents_count() ), WC()->cart->get_cart_contents_count() ); ?> - <?php echo WC()->cart->get_cart_total(); ?><span></a>
<?php $fragments['a.cart-customlocation'] = ob_get_clean();
return $fragments;
}
Thanks alexio, your code worked for me!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks for that, alexio! Updating the snippet now. 👍