Как вывести счетчик отзывов о товаре с разных языков Polylang?

Ссылка скопирована
0 ответов

Добрый день, товарищи специалисты

Захотелось мне видеть на странице архивов товара кол-во отзывов.
Пришаманил в woocommerce > templates > loop > rating.php следующий код:

<?php /**  * Loop Rating  *  * This template can be overridden by copying it to yourtheme/woocommerce/loop/rating.php.  *  * 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.  *  * @see https://woo.com/document/template-structure/  * @package WooCommerceTemplates  * @version 3.6.0   if ( ! defined( 'ABSPATH' ) ) { 	exit; }  global $product;  if ( ! wc_review_ratings_enabled() ) { 	return; }  echo wc_get_rating_html( $product->get_average_rating() ); // WordPress.XSS.EscapeOutput.OutputNotEscaped.  */   if ( ! defined( 'ABSPATH' ) ) { 	exit; }  global $product;  if ( ! wc_review_ratings_enabled() ) { 	return; }  $count_answered = 0; if( class_exists( 'CR_Qna' ) ) { 	$count_answered = CR_Qna::get_count_answered( $product->get_id() ); }  $rating_count = $product->get_rating_count(); $review_count = $product->get_review_count(); $average      = $product->get_average_rating();  	echo '<span class="review-rating">'; echo wc_get_rating_html( $average, $rating_count ); // WordPress.XSS.EscapeOutput.OutputNotEscaped.  			if( 0 < $rating_count ) { 				printf( _n( '%s review', '%s reviews', $review_count, 'customer-reviews-woocommerce' ), '<span class="count1">' . esc_html( $review_count ) . '</span>' ); 				 			} echo '</span>';

<?php /** * Loop Rating * * This template can be overridden by copying it to yourtheme/woocommerce/loop/rating.php. * * 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. * * @see https://woo.com/document/template-structure/ * @package WooCommerceTemplates * @version 3.6.0 if ( ! defined( 'ABSPATH' ) ) { exit; } global $product; if ( ! wc_review_ratings_enabled() ) { return; } echo wc_get_rating_html( $product->get_average_rating() ); // WordPress.XSS.EscapeOutput.OutputNotEscaped. */ if ( ! defined( 'ABSPATH' ) ) { exit; } global $product; if ( ! wc_review_ratings_enabled() ) { return; } $count_answered = 0; if( class_exists( 'CR_Qna' ) ) { $count_answered = CR_Qna::get_count_answered( $product->get_id() ); } $rating_count = $product->get_rating_count(); $review_count = $product->get_review_count(); $average = $product->get_average_rating(); echo '<span class="review-rating">'; echo wc_get_rating_html( $average, $rating_count ); // WordPress.XSS.EscapeOutput.OutputNotEscaped. if( 0 < $rating_count ) { printf( _n( '%s review', '%s reviews', $review_count, 'customer-reviews-woocommerce' ), '<span class="count1">' . esc_html( $review_count ) . '</span>' ); } echo '</span>';

В результате счетчик то я получил, только выводит он количество отзывов о товаре на активном языке сайта. Хотелось бы что бы он выводил сумму отзывов о товаре всех языковых версий.

Буду рад любым подсказкам

Дополнительно:

можно попробовать с помощью id из $product и pll_get_post_translations($post_id) получить список всех версий страницы. Если сработает, то потом их в цикле перебрать и с помощью какой-нибудь из функций wc создавать объект product из этих id страниц. Потом дублировать $product->get_rating_count() и тд, только сохранять общую сумма где-то вне цикла, чтобы потом уже с общими числами работать при выводе

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно