/**
* Rounds the prices of products and variations to the closest 50 cents.
*
* DISCLAIMER
* Aelia and any member of its staff are not responsible for any data loss or damage incurred
* when using the code, which you can use at your own risk.
*
* GPL DISCLAIMER
* Because this code program is free of charge, there is no warranty for it, to the extent permitted by applicable law.
* Except when otherwise stated in writing the copyright holders and/or other parties provide the program "as is"
* without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of
* merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program
* is with you. should the program prove defective, you assume the cost of all necessary servicing, repair or correction.
*
* Need a consultation, or assistance to customise this code? Find us on Codeable: https://aelia.co/hire_us
*/
function custom_round_product_price($price, $product) {
// The price may be not numeric, or an empty string. In such
// case, it should be left as it is (an empty string means "no price"),
// not "zero"
if(!is_numeric($price) || ($price === '')) {
return $price;
}
// Round the price to the closest 50 cents
return round($price * 2, 0) / 2;
}
add_filter('woocommerce_product_get_price', 'custom_round_product_price', 10, 2);
add_filter('woocommerce_product_variation_get_price', 'custom_round_product_price', 10, 2);
Comments