wp_star_rating()
Виводить HTML рейтинг (зірочки) для вказаного рейтингу.
Виводить HTML розмітку із зірками від 0 до … Розуміє половини на кшталт 4.5 зірки…
![]()
За промовчанням працює тільки в адмін панелі.
(дуже швидко) | 50000 разів – 1.30 сек
(швидко) |
PHP 7.0.2, WP 4.4.2
Хуків немає.
Повертає
Строку. HTML-код.
Використання
wp_star_rating ($ args);
- $args
(масив) Масив аргументів для виведення зірок.
rating (int)
Рейтинг, який потрібно вивести.Якщо в
type = rating, то число буде вважатися рейтингом і буде виведено кількість зірок, зазначених у цьому параметрі.Якщо в
type = percent, то число буде вважатися відсотком і буде показано 5 зірок заповнених відповідно до зазначеного числа.
За замовчуванням: 0type (string)
Формат, в якому вказано параметр $rating . Можливо:ratingабоpercent.
За замовчуванням: ‘rating’number (int)
Число на основі скільки голосів показаний результат, додати в title атрибут тега. Відставте 0, щоб не показувати.
За замовчуванням: 0- echo (bool)
Виводити чи повертати результат?
Типово: true
Приклади
#1 Висновок рейтингу (зірок)
Приклади
wp_star_rating(['rating'=>7.5, 'type'=>'rating', 'number'=>0]); /* Виведе: <div class="star-rating" title="Рейтинг 7,5"><span class="screen-reader-text">Рейтинг 7,5</span> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-half"></div> </div> */
![]()
wp_star_rating(['rating'=>85, 'type'=>'percent', 'number'=>654])); /* Виведе: <div class="star-rating" title="Рейтинг 4,5 на основі 654 голосів"><span class="screen-reader-text">Рейтинг 4,5 на основі 654 голосів</span> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-full"></div> <div class="star star-half"></div> </div> */
Виглядає так:
![]()
#2 Виведення у фронт-енді (зовнішньої частини)
У фронт-енді функція не працює і краще зробити свою подібну функцію. Але якщо у вас підключаються шрифти ‘dashicons’, тобто є сенс використовувати цю функцію, для цього потрібно підключити потрібний файл і css стилі:
// для фронту
require_once ABSPATH .'wp-admin/includes/template.php';
// Підключимо іконки
add_action('wp_enqueue_scripts', function(){ wp_enqueue_style('dashicons'); });
// Виводимо HTML
wp_star_rating( array( 'rating'=>4.5, 'type'=>'rating', 'number'=>521, ) );
echo '
<style>
.screen-reader-text{ position: absolute; margin: -1px; padding: 0; height: 1px; width: 1px; overflow: hidden; clip: rect(0 0 0 0); border: 0; word-wrap: normal!important; }
.star-rating .star-full:before { content: "f155"; }
.star-rating .star-half:before { content: "f459"; }
.star-rating .star-empty:before { content: "f154"; }
.star-rating .star {
color: #0074A2;
display: inline-block;
font-family: dashicons;
font-size: 20px;
font-style: normal;
font-weight: 400;
height: 20px;
line-height: 1;
text-align: center;
text-decoration: inherit;
vertical-align: top;
width: 20px;
}
</style>';
/* Отримаємо:
<div class="star-rating" data-title="4,5 rating based on 521 ratings">
<span class="screen-reader-text">4,5 Rating based on 521 ratings</span>
<div class="star star-full"></div>
<div class="star star-full"></div>
<div class="star star-full"></div>
<div class="star star-full"></div>
<div class="star star-half"></div>
</div>
*/
список змін
| З версії 3.8.0 | Введено. |
| З версії 4.4.0 | Встановлено параметр echo . |