woocommerce_variable_add_to_cart()
Output the variable product add to cart area.
Hooks from the function
Returns
null. Nothing (null).
Usage
woocommerce_variable_add_to_cart();
woocommerce_variable_add_to_cart() woocommerce variable add to cart code WC 10.9.4
function woocommerce_variable_add_to_cart() {
global $product;
static $attached_gallery_defaults = array();
if ( ! ( $product instanceof WC_Product ) ) {
return;
}
// Enqueue variation scripts.
wp_enqueue_script( 'wc-add-to-cart-variation' );
// Attach a reset snapshot only when variation-gallery swaps are enabled.
if (
\Automattic\WooCommerce\Internal\VariationGallery\Package::is_enabled() &&
! isset( $attached_gallery_defaults[ $product->get_id() ] )
) {
wp_add_inline_script(
'wc-add-to-cart-variation',
sprintf(
'(window.wc_variation_gallery_defaults = window.wc_variation_gallery_defaults || {})[%d] = %s;',
$product->get_id(),
wp_json_encode( wc_get_product_gallery_html( $product ) )
),
'before'
);
$attached_gallery_defaults[ $product->get_id() ] = true;
}
// Get Available variations?
$get_variations = count( $product->get_children() ) <= apply_filters( 'woocommerce_ajax_variation_threshold', 30, $product );
// Load the template.
wc_get_template(
'single-product/add-to-cart/variable.php',
array(
'available_variations' => $get_variations ? $product->get_available_variations() : false,
'attributes' => $product->get_variation_attributes(),
'selected_attributes' => $product->get_default_attributes(),
)
);
}