PHPackages                             hounddd/wn-reviews-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. hounddd/wn-reviews-plugin

ActiveWinter-plugin[Utility &amp; Helpers](/categories/utility)

hounddd/wn-reviews-plugin
=========================

Reviews and testimonials plugin for Winter CMS

v1.0.3(2y ago)2191[1 issues](https://github.com/Hounddd/wn-reviews-plugin/issues)MITPHPPHP &gt;=7.0

Since Jul 12Pushed 2y ago1 watchersCompare

[ Source](https://github.com/Hounddd/wn-reviews-plugin)[ Packagist](https://packagist.org/packages/hounddd/wn-reviews-plugin)[ Docs](https://github.com/hounddd/wn-reviews-plugin)[ RSS](/packages/hounddd-wn-reviews-plugin/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (1)Versions (5)Used By (0)

Review plugin for WinterCMS
===========================

[](#review-plugin-for-wintercms)

[![Blocks Plugin](https://github.com/hounddd/wn-reviews-plugin/raw/main/.github/Review-plugin.png?raw=true)](https://github.com/hounddd/wn-reviews-plugin/blob/main/.github/Review-plugin.png?raw=true)

Show reviews, ratings or testimonials of your customers. No other plugin dependency.

Features
--------

[](#features)

- Manage reviews from backend
- Frontend components to display reviews

Installation
------------

[](#installation)

*Let assume you're in the root of your wintercms installation*

### Using composer

[](#using-composer)

Just run this command

```
composer require hounddd/wn-reviews-plugin
```

### Clone

[](#clone)

Clone this repo into your winter plugins folder.

```
cd plugins
mkdir hounddd && cd hounddd
git clone https://github.com/Hounddd/wn-reviews-plugin reviews
```

> **Note**: In both cases, run `php artisan winter:up` command to run plugin's migrations

Components
----------

[](#components)

This plugin offer 2 components also availables as page snippets for Winter.Page plugin.

- **`reviews`** display a paginated list of reviews
- **`reviewsSlider`** display reviews in a slider

### Show reviews with `reviews` component

[](#show-reviews-with-reviews-component)

```
title = "Our customers reviews"
url = "/reviews/:page?"
layout = "default"
is_hidden = 0

[reviews]
pageNumber = "{{ :page }}"
categoryFilter = "{{ :category }}"
reviewsPerPage = 10
noReviewsMessage = "No reviews found"
sortOrder = "rating desc"
==
What our customers say about us?
{% component 'reviews' %}
```

#### **`reviews` component properties**

[](#reviews-component--properties)

PropertyTypeDescription`pageNumber`StringPage parameter for pagination.
Default: `'{{ :page }}'``reviewsPerPage`StringNumbre of reviews per page.
Default: `'10'``categoryFilter`StringEither a category slug or the page parameter to use for filtering categories.
Default: `''``noReviewsMessage`StringDefault: the `lang.components.general.no_reviews_default` key for translation file in use`sortOrder`StringThe sorting order to use.
Possibles values: - title asc
- title desc
- created\_at asc
- created\_at desc
- updated\_at asc
- updated\_at desc
- rating asc
- rating desc
- random

Default: `'created_at desc'``ratingDisplay`StringRating display type
Possibles values: - none: rating is not displayed
- stars: use stars
- text: use text
- both: use both stars and text

Default:`'both'`### Show reviews with `reviewsSlider` component

[](#show-reviews-with-reviewsslider-component)

By default, the component lets you choose between different types of slider:

- Using **[Tiny Slider 2](https://github.com/ganlanyuan/tiny-slider)**
- Using **Tailwind CSS &amp; Alpine JS**.

```
[reviewsSlider]
sliderType = "tailwind_alpine"
noReviewsMessage = "No reviews found"
sortOrder = "rating desc"
==
What our customers say about us?
{% component 'reviewsSlider' %}
```

#### **`reviewsSlider` component properties**

[](#reviewsslider-component--properties)

PropertyTypeDescription`sliderType`StringThe slider type to render.
Possibles values
Possibles values:- tailwind\_alpine
- tiny\_slider

Default: `'tiny_slider'``categoryFilter`StringEither a category slug or the page parameter to use for filtering categories.
Default: `''``noReviewsMessage`StringDefault: the `lang.components.general.no_reviews_default` key for translation file in use`sortOrder`StringThe sorting order to use.
Possibles values: - title asc
- title desc
- created\_at asc
- created\_at desc
- updated\_at asc
- updated\_at desc
- rating asc
- rating desc
- random

Default: `'created_at desc'``ratingDisplay`StringRating display type
Possibles values: - none: rating is not displayed
- stars: use stars
- text: use text
- both: use both stars and text

Default:`'both'``showDots`BooleanShow dots navigation in review slider
Default: `0``showControls`BooleanShow control buttons in review slider
Default: `0``showCounter`BooleanShow a reviews counter
Default: `0``autoPlay`StringThe delay in seconds before the slider must show the next review.
Default: `'0'` (disabled)`loadScripts`BooleanThe required scripts must be loaded by the component.
Default: `1`Sliders make use of javascript to control the slides, the needed scripts will be loaded automatically if you set the `loadScripts` component property to `true`.

> **Note**: ⚠ As Tailwind is an utility CSS framework, it will not be loaded by the component. If you're using Tailwind CSS and Alpine JS slider, you may need to add the component's path to the `content` property of your theme's `tailwind.config.js` file.
>
> ```
> module.exports = {
> content: [
>         // ...
>         './../../plugins/hounddd/reviews/components/**/*.htm',
>     ],
>     // ...
> }
> ```

🏆 Credits
---------

[](#-credits)

Inspired by [Mja.Testimonials](https://github.com/MatissJanis/oc-testimonials) [VojtaSvoboda.Reviews plugin](https://github.com/vojtasvoboda/oc-reviews-plugin)

---

Make awesome sites with ❄ [WinterCMS](https://wintercms.com)!

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~88 days

Total

4

Last Release

766d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0b94bfda4c51f6f158b55a6726e01443fc9bbf1e5676f672f281a9e6e875e8be?d=identicon)[damsfx](/maintainers/damsfx)

---

Top Contributors

[![damsfx](https://avatars.githubusercontent.com/u/282242?v=4)](https://github.com/damsfx "damsfx (13 commits)")

---

Tags

pluginreviewswintercmspluginreviewswinterwinter cmstestomonials

### Embed Badge

![Health badge](/badges/hounddd-wn-reviews-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/hounddd-wn-reviews-plugin/health.svg)](https://phpackages.com/packages/hounddd-wn-reviews-plugin)
```

###  Alternatives

[winter/wn-blog-plugin

Blog plugin for Winter CMS

2042.1k3](/packages/winter-wn-blog-plugin)[winter/wn-sitemap-plugin

Sitemap plugin for Winter CMS

1042.6k1](/packages/winter-wn-sitemap-plugin)[winter/wn-pages-plugin

Pages plugin for Winter CMS

1353.0k3](/packages/winter-wn-pages-plugin)[winter/wn-user-plugin

User plugin for Winter CMS

1233.5k13](/packages/winter-wn-user-plugin)[martin/wn-forms-plugin

Create easy (and almost magic) AJAX forms

212.3k](/packages/martin-wn-forms-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
