web-dev-qa-db-fra.com

Obtenir le prix du produit woocommerce par identifiant

je fais un shortcode pour obtenir le titre, l'image et le prix du produit. Je reçois tous les titres, liens et images correctement, mais je n’obtiens pas de prix mais le problème est

add_shortcode('product_data','custom_product_function');
function custom_product_function($atts)
{
    $post_id = $atts['id'];
    $title = get_the_title($post_id);
    $link = get_the_permalink($post_id);
    $price = get_the_price($post_id);
    $image = get_the_post_thumbnail($post_id, 'thumbnail');
    $data ='<div class="releated-products wow fadeInUp"><a href="'.$link.'">'.$image.'<h5>'.$title.'</h5><h6>'.$price.'</h6></a></div>';
    return $data;
}

$price = get_the_price($post_id); Je suppose que cette fonction n'est pas correcte

aucune idée de comment obtenir le prix maintenant.

Merci

3
Accore LTD

Vous pouvez créer un objet produit à l'aide de la fonction suivante:

$product = wc_get_product( $post_id );

Et après cela, vous pourrez accéder à toutes les données du produit. Toutes les méthodes disponibles peuvent être trouvées ici , mais celles dont vous avez besoin sont:

$product->get_regular_price();
$product->get_sale_price();
$product->get_price();
3
Boris Kuzmanov