Ecommerce Product Reviews

Добавляет отзывы и агрегированные оценки к товарам интернет-магазина на Payload: с проверкой покупок и премодерацией перед публикацией.

Сообщество 1 2/нед MIT v1.0.1

Установка

pnpm add payload-reviews

Описание

Плагин добавляет коллекцию `reviews` и два агрегирующих поля в коллекцию `products` из `@payloadcms/plugin-ecommerce`. Он расширяет ecommerce-плагин, а не заменяет его: у товаров появляются поля `ratingAverage` и `ratingCount`, а новая коллекция `reviews` хранит записи, на основе которых они вычисляются. Отзыв ссылается на товар через relationship, содержит оценку от 1 до настраиваемого максимума, заголовок, текст, имя автора и email, а также флаг `verifiedPurchase` и статус: pending, approved или rejected. Флаг `verifiedPurchase` вычисляется автоматически, а не выставляется самим автором. При каждой операции записи плагин выполняет один запрос к коллекции заказов и ищет оплаченный заказ: статус входит в список `purchaseStatuses` (по умолчанию `['processing','completed']`), в строках заказа есть данный товар, а заказ принадлежит автору отзыва через связь `customer` или по полю `customerEmail`. Заказы со статусами `cancelled` и `refunded` не учитываются. Агрегированная оценка не инкрементируется и не декрементируется. При каждом создании, изменении или удалении отзыва оценка товара пересчитывается заново по одобренным отзывам в хуках `afterChange` и `afterDelete` в рамках той же транзакции, что и триггер. Эндпоинт rebuild пересчитывает оценки для всех товаров разом и принимает `Authorization: Bearer <secret>` для автоматического запуска или авторизованного пользователя. Чтение отзывов публичное, но ограниченное: пользователи, не прошедшие проверку админ-доступа, видят только одобренные отзывы через REST, GraphQL и local API. Создание отзывов открыто по умолчанию, а обновление и удаление доступны только админу. Автор не может одобрить собственный отзыв или самостоятельно выставить флаг проверки покупки. В настройках задаются правила доступа, слаги полей и коллекций, максимальные длины полей, шкала оценок, запрет на повторный отзыв того же пользователя на тот же товар и флаг `disabled`, который отключает логику плагина, оставляя схему данных нетронутой. Плагин экспортирует хелперы `purchaseQuery`, `verifyPurchase`, `productRating`, `writeProductRating`, `rebuildProductRatings` и `reviewIdentity` для использования в собственном коде. Плагин не имеет runtime-зависимостей и не содержит admin React-компонентов. Требуется Payload версии 3.50 или выше. Плагин нужно регистрировать после `ecommercePlugin`, чтобы поля товаров уже существовали на момент инициализации.

О пакете

Имя пакета
payload-reviews
Последняя версия
1.0.1
Размер
39 кБ
Лицензия
MIT
Загрузок в неделю
2
Последняя публикация
21 авг. 2026 г.

Ещё от Poseidonas

Профиль автора

Barcodes

Добавляет штрихкоды Code 128, EAN-13 и QR в коллекции товаров Payload с печатью этикеток и опциональными кнопками в админке.

AI Manager

Плагин Payload для автогенерации товарных описаний, заголовков, атрибутов и переводов через Claude, ChatGPT, Gemini или Kimi с пропуском уже сгенерированного контента.

EU VAT

Рассчитывает НДС ЕС для магазинов на Payload и записывает разбивку по каждому заказу: ставки, реверсивный заряд, проверку VIES и отчёт OSS.

Stock Reservation

Проверяет наличие варианта и цену до оплаты, резервирует остатки до подтверждения и закрывает пробелы чекаута в официальном плагине Payload ecommerce.

Stock Alerts

Отправляет письмо при падении остатков товара или варианта ниже порога, с поддержкой бэкордера и публичным полем статуса.

Shipping Rates

Добавляет зоны доставки, расчет стоимости и endpoint для quoted в магазинах на @payloadcms/plugin-ecommerce.