I am trying to edit the price value for a single product.
In single-product/price.php
there is a template call to $product->get_price_html
. How can I edit that function/method to change the way the HTML is presented?
At the moment even if I delete all the contents of the function located in class-wc-product
it still miraculously displays? Anyone know why?
Core and plugin files should never be edited directly, as any updates could overwrite your changes. If you look in WooCommerce source at the get_price_html
method, there are a number of filters available to modify the output of the function.
See add_filter
in Codex for more info on adding filters to apply_filters
calls.
From get_price_html
in class-wc-product
:
return apply_filters('woocommerce_get_price_html', $price, $this);
So to add your own filter:
add_filter( 'woocommerce_get_price_html', 'wpa83367_price_html', 100, 2 );
function wpa83367_price_html( $price, $product ){
return 'Was:' . str_replace( '<ins>', ' Now:<ins>', $price );
}