Last active
January 27, 2022 16:42
-
-
Save helgatheviking/e9e8c9aebccaf62a259061cd4b0256b7 to your computer and use it in GitHub Desktop.
Simple add to cart template - adds ajax add to cart support to simple products
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
<?php | |
/** | |
* Simple product add to cart with core ajax add to cart support | |
* | |
* This template should be saved to yourtheme/woocommerce/single-product/add-to-cart/simple.php. | |
* | |
* HOWEVER, on occasion WooCommerce will need to update template files and you | |
* (the theme developer) will need to copy the new files to your theme to | |
* maintain compatibility. We try to do this as little as possible, but it does | |
* happen. When this occurs the version of the template file will be bumped and | |
* the readme will list any important changes. | |
* | |
* @see https://docs.woocommerce.com/document/template-structure/ | |
* @package WooCommerce/Templates | |
* @version 3.4.0 | |
*/ | |
defined( 'ABSPATH' ) || exit; | |
global $product; | |
if ( ! $product->is_purchasable() ) { | |
return; | |
} | |
echo wc_get_stock_html( $product ); // WPCS: XSS ok. | |
if ( $product->is_in_stock() ) : ?> | |
<?php do_action( 'woocommerce_before_add_to_cart_form' ); ?> | |
<form class="cart" action="<?php echo esc_url( apply_filters( 'woocommerce_add_to_cart_form_action', $product->get_permalink() ) ); ?>" method="post" enctype='multipart/form-data'> | |
<?php do_action( 'woocommerce_before_add_to_cart_button' ); ?> | |
<?php | |
do_action( 'woocommerce_before_add_to_cart_quantity' ); | |
woocommerce_quantity_input( | |
array( | |
'min_value' => apply_filters( 'woocommerce_quantity_input_min', $product->get_min_purchase_quantity(), $product ), | |
'max_value' => apply_filters( 'woocommerce_quantity_input_max', $product->get_max_purchase_quantity(), $product ), | |
'input_value' => isset( $_POST['quantity'] ) ? wc_stock_amount( wp_unslash( $_POST['quantity'] ) ) : $product->get_min_purchase_quantity(), // WPCS: CSRF ok, input var ok. | |
) | |
); | |
do_action( 'woocommerce_after_add_to_cart_quantity' ); | |
?> | |
<button type="submit" name="add-to-cart" value="<?php echo esc_attr( $product->get_id() ); ?>" data-product_id="<?php echo esc_attr( $product->get_id() ); ?>" class="add_to_cart_button ajax_add_to_cart button alt"><?php echo esc_html( $product->single_add_to_cart_text() ); ?></button> | |
<?php do_action( 'woocommerce_after_add_to_cart_button' ); ?> | |
</form> | |
<?php do_action( 'woocommerce_after_add_to_cart_form' ); ?> | |
<?php endif; ?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment