Obține rating-ul produsului după ID-ul produsului

11 sept. 2017, 08:55:53
Vizualizări: 23.1K
Voturi: 6

Cum pot obține rating-ul unui produs folosind product_id fără buclă?

Am un product_id și vreau să obțin rating-ul produsului, cum pot face acest lucru și este fezabil? Mulțumesc

0
Toate răspunsurile la întrebare 3
0
15

Dat fiind un ID de produs, puteți obține ratingul mediu astfel:

$product = wc_get_product( $product_id );
$rating  = $product->get_average_rating();

Aceasta va returna numărul brut (4.00, 3.50 etc.).

Pentru a afișa HTML-ul ratingului pentru un produs dat, puteți folosi acest cod:

$product = wc_get_product( $product_id );
$rating  = $product->get_average_rating();
$count   = $product->get_rating_count();

echo wc_get_rating_html( $rating, $count );

Sau, dacă vă aflați în buclă, puteți folosi această funcție pentru a obține HTML-ul pentru produsul curent:

woocommerce_template_loop_rating() 
11 sept. 2017 09:23:47
0

Aceasta m-a ajutat foarte mult, creează funcția get_star_rating() și returnează codul tău HTML.

NOTĂ: Dacă se află într-o buclă

function get_star_rating() {

    global $woocommerce, $product;  

    $average      = $product->get_average_rating();
    $review_count = $product->get_review_count();

    return '<div class="star-rating">
                <span style="width:'.( ( $average / 5 ) * 100 ) . '%" title="'. 
                  $average.'">
                    <strong itemprop="ratingValue" class="rating">'.$average.'</strong> '.__( 'din 5', 'woocommerce' ).                              
                '</span>                    
            </div>'.'
            <a href="#reviews" class="woocommerce-review-link" rel="nofollow">( ' . $review_count .' )</a>';

}
18 nov. 2018 00:07:08
0

Puteți prelua un loop cu produsele cu cele mai bune evaluări

$args_top_rating1 = array(
    'post_type' => 'product', // Tipul postării - produs
    'meta_key' => '_wc_average_rating', // Cheia meta pentru ratingul mediu
    'orderby' => 'meta_value', // Ordonează după valoarea meta
    'posts_per_page' => 8, // Numărul de produse afișate
    'status'=>'publish', // Doar produse publicate
    'catalog_visibility'=>'visible', // Vizibile în catalog
    'stock_status'=>'instock' // Doar produse în stoc
);

$top_rating = new WP_Query( $args_top_rating1 );


 while ( $top_rating->have_posts() ) : $top_rating->the_post(); global $product; 

        $urltop_rating = get_permalink($top_rating->post->ID) ; // Obține URL-ul produsului

$rating_count = $product->get_rating_count(); // Numărul de evaluări

$average_rating = $product->get_average_rating(); // Ratingul mediu

echo wc_get_rating_html( $average_rating, $rating_count); // Afișează HTML-ul ratingului


endwhile;
9 sept. 2019 08:31:16