Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
WooCommerce: Display Product Reviews Shortcode
/**
* Use a shortcode to display product reviews.
* Format: [product_reviews id="123"]
* id = the product ID - you can get this from Products > All Products and hovering over the product title
*
* If there are no reviews for a product, nothing is returned to the browser.
*
* @author Wil Brown zeropointdevelopment.com
* @param $atts
*
* @return string
*/
function zpd_product_reviews_shortcode( $atts ) {
if ( empty( $atts ) ) return '';
if ( ! isset( $atts['id'] ) ) return '';
$comments = get_comments( 'post_id=' . $atts['id'] );
if ( ! $comments ) return '';
$html = '';
$html .= '<div class="woocommerce-tabs"><div id="reviews"><ol class="commentlist">';
foreach ( $comments as $comment ) {
$rating = intval( get_comment_meta( $comment->comment_ID, 'rating', true ) );
$html .= '<li class="review">';
$html .= get_avatar( $comment, '60' );
$html .= '<div class="comment-text">';
if ( $rating ) $html .= wc_get_rating_html( $rating );
$html .= '<p class="meta"><strong class="woocommerce-review__author">';
$html .= get_comment_author( $comment );
$html .= '</strong></p>';
$html .= '<div class="description">';
$html .= $comment->comment_content;
$html .= '</div></div>';
$html .= '</li>';
}
$html .= '</ol></div></div>';
return $html;
}
add_shortcode( 'product_reviews', 'zpd_product_reviews_shortcode' );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment