- str_repeat: documentation ( source)
- implode: documentation ( source)
- explode: documentation ( source)
- ceil: documentation ( source)
- sprintf: documentation ( source)
<?php
function show_star_rating_review($rating): string
{
//global $post;
//$rating = get_field('rating', $post);
[$whole, $decimal] = explode('.', $rating);
$css = <<<CSS
<style>
.awb-stars-rating-1 .awb-stars-rating-filled-icon{
margin-right:2px;
color:#ffd041;
}
.awb-stars-rating-1 .awb-stars-rating-empty-icon,
.awb-stars-rating-1 .awb-stars-rating-partial-icon-wrapper{
margin-right:2px;
}
.awb-stars-rating-1 .awb-stars-rating-partial-icon{
color:#ffd041;
}
.awb-stars-rating-1 .awb-stars-rating-icons-wrapper{
color:#dbdbdb;
font-size:23px;
}
</style>
CSS;
$stars['whole'] = str_repeat("<i class=\"fa-star fas awb-stars-rating-filled-icon\"></i>\n ", $whole);
if ($decimal) {
$stars['piece'] = sprintf(
"<i class=\"fa-star fas awb-stars-rating-partial-icon-wrapper\">
<i class=\"fa-star fas awb-stars-rating-partial-icon\" style=\"width:%d0%%;\"></i>
</i>\n ",
$decimal
);
}
$stars['empty'] = str_repeat("<i class=\"fa-star fas awb-stars-rating-empty-icon\"></i>\n ", 5 - ceil($rating));
return sprintf(
'%s
<div class="awb-stars-rating awb-stars-rating-1 awb-stars-rating-no-text" aria-label="Rating: %s out of 5">
<div class="awb-stars-rating-icons-wrapper">
%s
</div>
</div>',
$css,
$rating,
implode($stars)
);
}
$ratings = ['1.0', '1.5', '2.0', '2.7', '3.0', '3.6', '4.0', '4.9', '5.0'];
foreach ($ratings as $rating) {
echo show_star_rating_review($rating);
echo "\n---\n";
}
This script was stopped while abusing our resources