Плагин Отзывов Reviews для Cotonti 0.9.26
Плагин Reviews позволяет пользователям оставлять отзывы о других пользователях на сайте, работающем на Cotonti CMF
Плагин Reviews позволяет пользователям оставлять отзывы о других пользователях на сайте, работающем на Cotonti CMF (https://github.com/Cotonti/Cotonti). Поддерживает оценки в виде звёзд, редактирование и удаление отзывов, а также интеграцию с профилем пользователя. Отзывы можно привязывать к конкретным областям (например, users
), а также отображать на главной странице или в профиле.
Важно: Интеграция с модулем Projects (для привязки отзывов к проектам) реализована, но не тестировалась.
Основные возможности
- Добавление, редактирование и удаление отзывов.
- Оценка в виде звёзд (от 1 до 5). от крайне плохо до превосходительно
- Отображение последних отзывов на главной странице index.tpl через условие функции:
<!-- IF {PHP|cot_plugin_active('reviews')} -->
{PHP|cot_reviews_last(4)}
<!-- ENDIF -->
- Подсчёт количества отзывов и средней оценки для пользователя.
- Интеграция с профилем пользователя через вкладку отзывов (
users.details.tpl
). - Проверка прав доступа: только авторизованные пользователи могут оставлять отзывы, администраторы могут редактировать все отзывы.
- Поля при создании отзыва: заголовок (тема), текст отзыва и оценка
- Администратор имеет больше полей для правки, в том числе редактировать дату отзыва
- Уведомление администраторов сайта и пользователя, которому оставили отзывы сообщением по электронной почте
Требования
- Cotonti Siena 0.9.26 (актуальная версия на момент разработки).
- PHP 8.2.
- Bootstrap 5.3.3 (встроен в Cotonti, подключается через
Resources::addFile
в файле загрузки темы). - Font Awesome Free 6.7.2 (https://fontawesome.com/) для отображения иконок звёзд.
Установка
-
Скопируйте папку
reviews
в директорию/plugins/
вашего сайта. -
Перейдите в админ-панель Cotonti:
Администрирование → Расширения → Плагины
. -
Найдите плагин Reviews и нажмите
Установить
. -
Настройте параметры плагина в разделе
Администрирование → Расширения → Плагины → Reviews → Настройки
:checkprojects
: Включить проверку совместных проектов для отзывов (не тестировалось).userall
: Показывать все отзывы пользователя.
-
Добавьте тег
{PHP|cot_reviews_last(5)}
в шаблонindex.tpl
для отображения последних 5 отзывов на главной странице. -
Убедитесь, что в шаблоне
users.details.tpl
есть теги{USERS_DETAILS_REVIEWS_COUNT}
и{USERS_DETAILS_REVIEWS_URL}
для отображения отзывов в профиле. -
Подключите Font Awesome 6.7.2 в
header.tpl
, если он не встроен в вашу тему:<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css">
-
а лучше скачайте и подключите локально.
-
Убедитесь, что Bootstrap 5.3.3 подключен в файле загрузки темы (обычно в
themes/yourtheme/yourtheme.php
):Resources::addFile('lib/bootstrap/css/bootstrap.min.css'); if (Cot::$cfg['headrc_consolidate']) { Resources::addFile('lib/bootstrap/js/bootstrap.bundle.min.js'); } else { Resources::linkFileFooter('lib/bootstrap/js/bootstrap.bundle.min.js'); }
-
полный пример смотреть тут: https://github.com/webitproff/cot-CleanCot/blob/main/cleancot/cleancot.rc.php
Структура файлов
/plugins/reviews/
├── inc/
│ └── reviews.functions.php # Основные функции для обработки отзывов и генерации звёзд
├── lang/
│ ├── reviews.ru.lang.php # Переводы на русский
│ └── reviews.en.lang.php # Переводы на английский
├── настройка/
│ ├── reviews.install.sql # Настройка базы данных для таблицы cot_reviews
│ └── reviews.uninstall.sql # Очистка базы данных
├── tpl/
│ ├── reviews.tpl # Шаблон для отзывов о профиле пользователя
│ └── reviews.last.tpl # Шаблон для размещения последних отзывов на главной странице
├── reviews.global.php # Глобальный хук для локализации
├── reviews.input.php # Входной хук для инициализации
├── reviews.php # Основная логика плагина для добавления, обновления и удаления отзывов
├── reviews.setup.php # Конфигурация плагина
├── reviews.users.details.php # Интеграция со страницей профиля пользователя (хуки users.details.tags)
└── reviews.usertags.main.php # Ссылка для тегов пользователей (оценки звёздами и количество отзывов)
Использование
- Добавление отзыва: Пользователи могут оставить отзыв на странице профиля другого пользователя (вкладка
reviews
). - Редактирование/удаление: Автор отзыва или администратор может отредактировать или удалить отзыв.
- Отображение на главной: Используйте тег
{PHP|cot_reviews_last(N)}
вindex.tpl
, гдеN
— количество отзывов. - В профиле пользователя: Вкладка отзывов доступна по ссылке
{USERS_DETAILS_REVIEWS_URL}
и показывает количество отзывов{USERS_DETAILS_REVIEWS_COUNT}
.
Настройка шаблонов
- В
reviews.tpl
настройте отображение списка отзывов (поля{REVIEW_ROW_STARS}
,{REVIEW_ROW_TEXT}
,{REVIEW_ROW_OWNER_FULL_NAME}
и т.д.). - В
reviews.last.tpl
настройте отображение последних отзывов (например,{REVIEW_ROW_STARS}
,{REVIEW_ROW_TITLE}
). - В
users.details.tpl
добавьте:<a href="{USERS_DETAILS_REVIEWS_URL}">{PHP.L.reviews_reviews} ({USERS_DETAILS_REVIEWS_COUNT})</a>
- для отображения ссылки на вкладку отзывов с локализованным текстом.
Примечания
- Если пользователь, оставивший отзыв, удалён из базы, в шаблонах будет отображаться "Неизвестный" вместо имени.
- Интеграция с модулем Projects не тестировалась, используйте на свой риск.
Разработка
- Плагин поддерживает хуки для кастомизации:
reviews.list.tags
,reviews.edit.tags
,reviews.add.tags
,reviews.list.loop
.
Лицензия
Свободное распространение и модификация BSD License. Copyright (c) 2025 CMSWorks Team. Допилил "под себя" webitproff https://github.com/webitproff
Смотрите также:
-
Тема CleanCot для Cotonti
Тема CleanCot для CMF Cotonti. Современная тема на Bootstrap 5.3.3 для Cotonti Siena 0.9.26 без устаревшего (legacy) режима. Только актуальные теги! -
Userarticles для CMF Cotonti
Плагин для CMF Cotonti отображает список пользователей с количеством их статей и подробный список статей для каждого пользователя. -
Экспорт в Excel через PhpSpreadsheet для CMF Cotonti
Экспорт статей в Excel из базы данных Cotonti с использованием PhpSpreadsheet. Для установки не требуется Composer. -
Импорт из Excel через PhpSpreadsheet для CMF Cotonti
Плагин для импорта статей из Excel для всех сайтов на базе Cotonti. Для установки не требуется Composer. -
Плагин SeoArticle для Cotonti
Плагин SeoArticle расширяет SEO-возможности модуля Pages в Cotonti CMF, добавляя мета-теги, Open Graph, Twitter Card, структурированные данные Schema.org, извлечение ключевых слов, оценку времени чтения и функционал связанных статей. -
Плагин PHPMailer для CMF Cotonti
Плагин PHPMailer улучшает возможности отправки email в Cotonti Siena 0.9.26 за счёт интеграции библиотеки PHPMailer (версия 6.10.0). Заменяет стандартную функциюcot_mail
на надёжное SMTP-решение, добавляя продвинутые функции, такие как изоляция плагина и предотвращение дублирования.
Комментарии (0)
Автор контента

Оффлайн
webitproff
Последняя авторизация: 17.07.2025 13:20
- Страница размещена: 09.05.2025 07:59
- Последнее обновление: 09.05.2025 08:08