php - todos - ¿Cómo mostrar el precio del producto de Woocommerce por ID con las Comas correctas?
woocommerce producto agotado (2)
LO TRABAJÓ AHORA.
CÓDIGO:
function so_30165014_price_shortcode_callback( $atts ) {
$atts = shortcode_atts( array(
''id'' => null,
), $atts, ''bartag'' );
$html = '''';
if( intval( $atts[''id''] ) > 0 && function_exists( ''wc_get_product'' ) ){
$_product = wc_get_product( $atts[''id''] );
$number = number_format($_product->get_price(), 2, ''.'', '','');
$html = "$" . $number;
}
return $html;
}
add_shortcode( ''woocommerce_price'', ''so_30165014_price_shortcode_callback'' );
CÓDIGO CORTO:
[woocommerce_price id="99"]
Estaba tratando de mostrar el precio de un producto en una página personalizada a través de un código corto.
Encontré este hilo: ¿Cómo mostrar el precio del producto WooCommerce por número de identificación en una página personalizada?
Con este CÓDIGO:
function so_30165014_price_shortcode_callback( $atts ) {
$atts = shortcode_atts( array(
''id'' => null,
), $atts, ''bartag'' );
$html = '''';
if( intval( $atts[''id''] ) > 0 && function_exists( ''wc_get_product'' ) ){
$_product = wc_get_product( $atts[''id''] );
$html = "price = " . $_product->get_price();
}
return $html;
}
add_shortcode( ''woocommerce_price'', ''so_30165014_price_shortcode_callback'' );
[woocommerce_price id="99"]
: [woocommerce_price id="99"]
Implementé el código y lo puse en funcionamiento. Lo único que ocurre ahora es que el precio no se muestra correctamente, no registra las comas.
Por ejemplo, tengo un precio que se muestra como $13564.34
Cuando debería mostrarse como $13,564.34
También está haciendo lo mismo por $1371.43
Cuando debería mostrarse como $1,371.43
La función number_format () puede ayudar. Por ejemplo:
1578.47 cambiaría a: 1,578.47 después
number_format(1578.47, 2, ''.'', '','');