I’m trying to add the price to the add to cart button in the loop.
[100$ Add to cart] instead of [Add to cart]
add_to_cart.php template:
echo apply_filters( 'woocommerce_loop_add_to_cart_link',
sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="tiny button %s product_type_%s">%s</a>',
esc_url( $product->add_to_cart_url() ),
esc_attr( $product->id ),
esc_attr( $product->get_sku() ),
$product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
esc_attr( $product->product_type ),
esc_html( $product->add_to_cart_text() )
),
$product );
price.php template:
<?php if ( $price_html = $product->get_price_html() ) : ?>
<span class="price"><?php echo $price_html; ?></span>
<?php endif; ?>
How do I combine these two? Couldn’t find anything on the web.
This should work: modify the add_to_cart.php file to
and the price will display in front of the “Add to cart” text.
EDIT: You should note that updating the woocommerce plugin will undo that and any other modification you have made to any of the files.
WooCommerce 3.1.0 updated the Functions for Add to Cart Button
If you want to be (somewhat) safe from a future Woocommerce upgrade, follow the official safe way to do it (thank you Felix).
Copy
add-to-cart.php
into a directory within your theme named/woocommerce
keeping the same file structure but removing the/templates/
subdirectory.Example: To override the admin order notification, copy:
wp-content/plugins/woocommerce/templates/emails/admin-new-order.php
towp-content/themes/yourtheme/woocommerce/emails/admin-new-order.php
Here is the file updated for Woocommerce 3.3.0 :
Of course, styling the button or modificating its content is entirely up to you and isn’t limited to show the product price.