2012-08-14 18:05:45 +00:00
< ? php
/**
2015-11-03 13:53:50 +00:00
* Display single product reviews ( comments )
2012-08-14 18:05:45 +00:00
*
2015-11-03 13:31:20 +00:00
* This template can be overridden by copying it to yourtheme / woocommerce / single - product - reviews . php .
*
2016-02-12 11:28:41 +00:00
* HOWEVER , on occasion WooCommerce will need to update template files and you
* ( the theme developer ) will need to copy the new files to your theme to
* maintain compatibility . We try to do this as little as possible , but it does
* happen . When this occurs the version of the template file will be bumped and
* the readme will list any important changes .
2015-10-01 14:07:20 +00:00
*
2018-11-14 19:20:19 +00:00
* @ see https :// docs . woocommerce . com / document / template - structure /
* @ package WooCommerce / Templates
2019-01-17 06:04:57 +00:00
* @ version 3.5 . 4
2012-08-14 18:05:45 +00:00
*/
2018-11-14 19:20:19 +00:00
2014-09-22 16:31:03 +00:00
if ( ! defined ( 'ABSPATH' ) ) {
2018-11-14 19:20:19 +00:00
exit ; // Exit if accessed directly.
2014-09-22 16:31:03 +00:00
}
2012-10-15 10:57:58 +00:00
2016-07-09 02:57:45 +00:00
global $product ;
2014-09-22 16:31:03 +00:00
if ( ! comments_open () ) {
2013-10-31 17:37:36 +00:00
return ;
2014-09-22 16:31:03 +00:00
}
2012-08-14 18:05:45 +00:00
?>
2016-04-05 20:41:13 +00:00
< div id = " reviews " class = " woocommerce-Reviews " >
2013-10-31 17:37:36 +00:00
< div id = " comments " >
2018-11-14 19:20:19 +00:00
< h2 class = " woocommerce-Reviews-title " >
2018-12-13 18:14:01 +00:00
< ? php
$count = $product -> get_review_count ();
2019-01-17 06:04:57 +00:00
if ( $count && wc_review_ratings_enabled () ) {
2018-12-13 18:14:01 +00:00
/* translators: 1: reviews count 2: product name */
$reviews_title = sprintf ( esc_html ( _n ( '%1$s review for %2$s' , '%1$s reviews for %2$s' , $count , 'woocommerce' ) ), esc_html ( $count ), '<span>' . get_the_title () . '</span>' );
echo apply_filters ( 'woocommerce_reviews_title' , $reviews_title , $count , $product ); // WPCS: XSS ok.
} else {
esc_html_e ( 'Reviews' , 'woocommerce' );
}
?>
2018-11-14 19:20:19 +00:00
</ h2 >
2018-12-13 18:14:01 +00:00
< ? php if ( have_comments () ) : ?>
< ol class = " commentlist " >
< ? php wp_list_comments ( apply_filters ( 'woocommerce_product_review_list_args' , array ( 'callback' => 'woocommerce_comments' ) ) ); ?>
</ ol >
< ? php
if ( get_comment_pages_count () > 1 && get_option ( 'page_comments' ) ) :
echo '<nav class="woocommerce-pagination">' ;
paginate_comments_links (
apply_filters (
'woocommerce_comment_pagination_args' ,
array (
'prev_text' => '←' ,
'next_text' => '→' ,
'type' => 'list' ,
)
)
);
echo '</nav>' ;
endif ;
?>
< ? php else : ?>
< p class = " woocommerce-noreviews " >< ? php esc_html_e ( 'There are no reviews yet.' , 'woocommerce' ); ?> </p>
< ? php endif ; ?>
2013-10-31 17:37:36 +00:00
</ div >
2018-12-13 18:14:01 +00:00
< ? php if ( get_option ( 'woocommerce_review_rating_verification_required' ) === 'no' || wc_customer_bought_product ( '' , get_current_user_id (), $product -> get_id () ) ) : ?>
< div id = " review_form_wrapper " >
< div id = " review_form " >
< ? php
$commenter = wp_get_current_commenter ();
$comment_form = array (
/* translators: %s is product title */
'title_reply' => have_comments () ? __ ( 'Add a review' , 'woocommerce' ) : sprintf ( __ ( 'Be the first to review “%s”' , 'woocommerce' ), get_the_title () ),
/* translators: %s is product title */
'title_reply_to' => __ ( 'Leave a Reply to %s' , 'woocommerce' ),
'title_reply_before' => '<span id="reply-title" class="comment-reply-title">' ,
'title_reply_after' => '</span>' ,
'comment_notes_after' => '' ,
'fields' => array (
'author' => '<p class="comment-form-author"><label for="author">' . esc_html__ ( 'Name' , 'woocommerce' ) . ' <span class="required">*</span></label> ' .
'<input id="author" name="author" type="text" value="' . esc_attr ( $commenter [ 'comment_author' ] ) . '" size="30" required /></p>' ,
'email' => '<p class="comment-form-email"><label for="email">' . esc_html__ ( 'Email' , 'woocommerce' ) . ' <span class="required">*</span></label> ' .
'<input id="email" name="email" type="email" value="' . esc_attr ( $commenter [ 'comment_author_email' ] ) . '" size="30" required /></p>' ,
),
'label_submit' => __ ( 'Submit' , 'woocommerce' ),
'logged_in_as' => '' ,
'comment_field' => '' ,
);
$account_page_url = wc_get_page_permalink ( 'myaccount' );
if ( $account_page_url ) {
/* translators: %s opening and closing link tags respectively */
$comment_form [ 'must_log_in' ] = '<p class="must-log-in">' . sprintf ( esc_html__ ( 'You must be %slogged in%S to post a review.' , 'woocommerce' ), '<a href="' . esc_url ( $account_page_url ) . '">' , '</a>' ) . '</p>' ;
}
2019-01-17 06:04:57 +00:00
if ( wc_review_ratings_enabled () ) {
2018-12-13 18:14:01 +00:00
$comment_form [ 'comment_field' ] = '<div class="comment-form-rating"><label for="rating">' . esc_html__ ( 'Your rating' , 'woocommerce' ) . ' </ label >< select name = " rating " id = " rating " required >
< option value = " " > ' . esc_html__( ' Rate & hellip ; ', ' woocommerce ' ) . ' </ option >
< option value = " 5 " > ' . esc_html__( ' Perfect ', ' woocommerce ' ) . ' </ option >
< option value = " 4 " > ' . esc_html__( ' Good ', ' woocommerce ' ) . ' </ option >
< option value = " 3 " > ' . esc_html__( ' Average ', ' woocommerce ' ) . ' </ option >
< option value = " 2 " > ' . esc_html__( ' Not that bad ', ' woocommerce ' ) . ' </ option >
< option value = " 1 " > ' . esc_html__( ' Very poor ', ' woocommerce ' ) . ' </ option >
</ select ></ div > ' ;
}
$comment_form [ 'comment_field' ] .= '<p class="comment-form-comment"><label for="comment">' . esc_html__ ( 'Your review' , 'woocommerce' ) . ' <span class="required">*</span></label><textarea id="comment" name="comment" cols="45" rows="8" required></textarea></p>' ;
comment_form ( apply_filters ( 'woocommerce_product_review_comment_form_args' , $comment_form ) );
?>
</ div >
2013-10-31 17:37:36 +00:00
</ div >
2018-12-13 18:14:01 +00:00
< ? php else : ?>
< p class = " woocommerce-verification-required " >< ? php esc_html_e ( 'Only logged in customers who have purchased this product may leave a review.' , 'woocommerce' ); ?> </p>
< ? php endif ; ?>
2012-08-14 18:05:45 +00:00
2013-10-31 17:37:36 +00:00
< div class = " clear " ></ div >
2014-09-22 16:31:03 +00:00
</ div >