Hi there,
The Google structured data testing tool at https://search.google.com/structured-data/testing-tool returns errors for reviews on one of my products.
The product in question is this one:
https://boggom.co.za/product/andre-van-wyngaardt-die-engele-haal-asem-cd/
I’ve already added the following proposed solution with no effect to my X – Child Theme: Theme Functions (functions.php) file:
if ( ! function_exists( 'x_renew_comment' ) ) :
function x_renew_comment( $comment, $args, $depth ) {
$GLOBALS['comment'] = $comment;
switch ( $comment->comment_type ) :
case 'pingback' : // 1
case 'trackback' : // 1
?>
<li <?php comment_class(); ?> id="comment-<?php comment_ID(); ?>">
<p><?php _e( 'Pingback:', '__x__' ); ?> <?php comment_author_link(); ?> <?php edit_comment_link( __( '(Edit)', '__x__' ), '<span class="edit-link">', '</span>' ); ?></p>
<?php
break;
default : // 2
GLOBAL $post;
if ( X_WOOCOMMERCE_IS_ACTIVE ) :
$rating = esc_attr( get_comment_meta( $GLOBALS['comment']->comment_ID, 'rating', true ) );
endif;
if ( x_is_product() ) {
$comment_avatar = get_avatar( $comment, 240 );
} else {
$comment_avatar = get_avatar( $comment, 120 );
}
?>
<li id="li-comment-<?php comment_ID(); ?>" <?php comment_class(); ?>>
<article id="comment-<?php comment_ID(); ?>" class="comment">
<?php
printf( '<div class="x-comment-img">%s</div>',
'<span class="avatar-wrap cf">' . $comment_avatar . '</span>'
);
?>
<?php if ( ! x_is_product() ) : ?>
<div class="x-reply">
<?php comment_reply_link( array_merge( $args, array( 'reply_text' => __( 'Reply <span class="comment-reply-link-after"><i class="x-icon-reply" data-x-icon=""></i></span>', '__x__' ), 'depth' => $depth, 'max_depth' => $args['max_depth'] ) ) ); ?>
</div>
<?php endif; ?>
<div class="x-comment-wrap">
<header class="x-comment-header">
<?php
printf( '<cite class="x-comment-author" itemprop="author">%1$s</cite>',
get_comment_author_link()
);
if ( x_is_product() && get_option('woocommerce_enable_review_rating') == 'yes' ) : ?>
<div class="star-rating-container">
<div itemprop="reviewRating" itemscope itemtype="http://schema.org/Rating" class="star-rating" title="<?php echo sprintf( __( 'Rated %d out of 5', '__x__' ), $rating ) ?>">
<span style="width:<?php echo ( intval( get_comment_meta( $GLOBALS['comment']->comment_ID, 'rating', true ) ) / 5 ) * 100; ?>%"><strong itemprop="ratingValue"><?php echo intval( get_comment_meta( $GLOBALS['comment']->comment_ID, 'rating', true ) ); ?></strong> <?php _e( 'out of 5', '__x__' ); ?></span>
</div>
</div>
<?php endif;
printf( '<div><a href="%1$s" class="x-comment-time"><time itemprop="datePublished" datetime="%2$s">%3$s</time></a></div>',
esc_url( get_comment_link( $comment->comment_ID ) ),
get_comment_time( 'c' ),
sprintf( __( '%1$s at %2$s', '__x__' ),
get_comment_date( 'm.d.Y' ),
get_comment_time()
)
);
edit_comment_link( __( '<i class="x-icon-edit" data-x-icon=""></i> Edit', '__x__' ) );
?>
</header>
<?php if ( '0' == $comment->comment_approved ) : ?>
<p class="x-comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', '__x__' ); ?></p>
<?php endif; ?>
<section class="x-comment-content" itemprop="description">
<?php comment_text(); ?>
</section>
</div>
</article>
<?php
break;
endswitch;
}
endif;
Please advise? Thank you in advance.