Woocommerce con 3 Decimales y más

Un caso particular, que me pidió un cliente fué el uso de 3 decimales en los precios de sus productos, y me dije listo es facil. LLegué accedí al sitio web, luego fui a woocommerce opcion ajustes. Cual fue la sorpresa? que el  selector que viene por defecto al incrementarlo y guardar solo me dejaba 2 decimales.

Empezó mi busqueda en la web de que solución podia darle a ello.

Despues de mucho bla bla bla en internet conseguí un codigo que me sirvió y logré avanzar solo en la tienda ya que en el carrito me hacia el redondeo y vaya que si estaba loco por solucionar ese conflicto. Luego de entrar al codigo de woocommerce me di cuenta que el precio me lo mostraba con 3 decimales tal como lo habia guardado enla opcion producto. Pero al mostrarlo redondeado por el formato de numero que trae predeterminado.

Quizás también te interese:

Como insertar una imagen a una plantilla WordPress

Hasta que consegui este codigo,  el cual comparto y espero le sirva a muchos:

add_filter( ‘wc_get_price_decimals’ , ‘custom_price_decimals’, 20, 1 );
function custom_price_decimals( $decimals ) {
if( is_product() || is_shop() || is_product_category() || is_product_tag() )
$decimals = 3;

return $decimals;
}

La cosa no termina allí prueba y veras.

Una vez analizado el codigo despues de indagar e indagar, logré darme cuenta que el mismo woocommerce con la experiencia en ello me permite invocar o validar en que archivos voy a utilizarlo o llamarlo según sea el caso, y es alli cuando empecé a ver el codigo que ya les puse y veo esta linea:

if( is_product() || is_shop() || is_product_category() || is_product_tag() )

donde le digo en que paginas va a utilizarse 3 decimales  y en donde realmente me funciona sin tantos problemas y es alli donde entra el protagonismo de estos personales:

is_checkout

is_cart

Las paginas de woocommerce y donde al incruirlas en el codigo quedaria de la forma:

add_filter( ‘wc_get_price_decimals’ , ‘custom_price_decimals’, 20, 1 );
function custom_price_decimals( $decimals ) {
if( is_product() || is_shop() || is_product_category() || is_product_tag() || is_checkout || is_cart )
$decimals = 3;

return $decimals;
}

y he alli donde por arte de magia sin tanto codigo loco se logra tener esos 3 decimales que nos dan estrasnochos.

Cabe recordar que para usuarios avanzados este codigo debe ir en el archivo functions de tu tema wordpress para que lo veas andar

Espero les sirva de mucho a muchos,  y seguir apoyando el crecimiento de este maravilloso mundo del desarrollo web.

No olvides dejarnos tu comentario y compartir el enlace para que otros usuarios de este mundo de wordpress puedan también pasar un buen dia sin complicaciones.

Recuerda seguirnos por nuestras redes sociales instagram y con nuestro valioso equipo de desarrolladores y profesionales en marketing digital y  diseño gráfico:

luis jose

DesarrolloWeb1106

Edgar Rodriguez

Rosbel Balza

Paginas Web Venezuela – Diseño y Desarrollo de Paginas Web

Comenta esta Publicación: