Obține prețul unui produs WooCommerce după id

8 mar. 2018, 12:22:10
Vizualizări: 188K
Voturi: 19

Am creat un shortcode pentru a obține titlul, imaginea și prețul produsului. Primesc corect titlul, link-ul și imaginea, dar nu reușesc să obțin prețul. Problema este la

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); // Această funcție nu există
    $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); Bănuiesc că această funcție nu este corectă

Are cineva vreo idee cum să obțin prețul acum?

Mulțumesc

0
Toate răspunsurile la întrebare 1
4
49

Puteți crea un obiect de produs folosind următoarea funcție:

$product = wc_get_product( $post_id );

După aceea, veți putea accesa toate datele produsului. Toate metodele disponibile pot fi găsite aici, dar cele de care aveți nevoie sunt:

$product->get_regular_price();
$product->get_sale_price();
$product->get_price();
8 mar. 2018 12:40:00
Comentarii

mulțumesc pentru răspuns. am verificat deja asta. verific din nou. dar pentru asta trebuie să modific funcția mea de shortcode într-un mod diferit. am dreptate? există vreo modalitate de a face asta în interiorul shortcode-ului meu

Accore LTD Accore LTD
8 mar. 2018 12:52:30

Doar adaugă $product = wc_get_product( $post_id ); undeva deasupra variabilei $price și setează $price = $product->get_price().

Boris Kuzmanov Boris Kuzmanov
8 mar. 2018 14:07:36

Asta a blocat mediul meu local

Ashwani Shukla Ashwani Shukla
23 aug. 2018 15:33:02

Corecție link pentru clasa și metodele WC_Product:

https://woocommerce.github.io/code-reference/classes/WC-Product.html

stemon stemon
18 feb. 2022 19:51:39