You've already forked wc-bootstrap
54 lines
1.8 KiB
Twig
54 lines
1.8 KiB
Twig
|
|
{#
|
||
|
|
# Simple Product Add to Cart (Bootstrap 5 Override)
|
||
|
|
#
|
||
|
|
# Add-to-cart form for simple products: quantity input + button.
|
||
|
|
#
|
||
|
|
# Expected context:
|
||
|
|
# product - WC_Product_Simple object
|
||
|
|
#
|
||
|
|
# WooCommerce PHP equivalent: single-product/add-to-cart/simple.php
|
||
|
|
#
|
||
|
|
# @package WcBootstrap
|
||
|
|
# @since 0.1.0
|
||
|
|
#}
|
||
|
|
|
||
|
|
{% if product.is_purchasable() and product.is_in_stock() %}
|
||
|
|
{{ do_action('woocommerce_before_add_to_cart_form') }}
|
||
|
|
|
||
|
|
<form class="cart" action="{{ product.get_permalink()|esc_url }}" method="post" enctype="multipart/form-data">
|
||
|
|
{{ do_action('woocommerce_before_add_to_cart_button') }}
|
||
|
|
|
||
|
|
<div class="d-flex align-items-end gap-3 mb-3">
|
||
|
|
{{ do_action('woocommerce_before_add_to_cart_quantity') }}
|
||
|
|
|
||
|
|
{% include 'global/quantity-input.html.twig' with {
|
||
|
|
input_id: 'quantity_' ~ product.get_id(),
|
||
|
|
input_name: 'quantity',
|
||
|
|
input_value: 1,
|
||
|
|
min_value: product.get_min_purchase_quantity()|default(1),
|
||
|
|
max_value: product.get_max_purchase_quantity()|default(0),
|
||
|
|
step: 1,
|
||
|
|
placeholder: '',
|
||
|
|
inputmode: 'numeric',
|
||
|
|
classes: 'qty',
|
||
|
|
readonly: false,
|
||
|
|
type: 'number',
|
||
|
|
args: { product_name: product.get_name() }
|
||
|
|
} %}
|
||
|
|
|
||
|
|
{{ do_action('woocommerce_after_add_to_cart_quantity') }}
|
||
|
|
|
||
|
|
<button type="submit"
|
||
|
|
name="add-to-cart"
|
||
|
|
value="{{ product.get_id() }}"
|
||
|
|
class="btn btn-primary btn-lg single_add_to_cart_button">
|
||
|
|
{{ product.single_add_to_cart_text() }}
|
||
|
|
</button>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
{{ do_action('woocommerce_after_add_to_cart_button') }}
|
||
|
|
</form>
|
||
|
|
|
||
|
|
{{ do_action('woocommerce_after_add_to_cart_form') }}
|
||
|
|
{% endif %}
|