Плагин Отзывов 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');
    }
     
  1. полный пример смотреть тут: 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

Смотрите также:

  1. Тема CleanCot для Cotonti
    Тема CleanCot для CMF Cotonti. Современная тема на Bootstrap 5.3.3 для Cotonti Siena 0.9.26 без устаревшего (legacy) режима. Только актуальные теги!

  2. Userarticles для CMF Cotonti
    Плагин для CMF Cotonti отображает список пользователей с количеством их статей и подробный список статей для каждого пользователя.

  3. Экспорт в Excel через PhpSpreadsheet для CMF Cotonti
    Экспорт статей в Excel из базы данных Cotonti с использованием PhpSpreadsheet. Для установки не требуется Composer.

  4. Импорт из Excel через PhpSpreadsheet для CMF Cotonti
    Плагин для импорта статей из Excel для всех сайтов на базе Cotonti. Для установки не требуется Composer.

  5. Плагин SeoArticle для Cotonti
    Плагин SeoArticle расширяет SEO-возможности модуля Pages в Cotonti CMF, добавляя мета-теги, Open Graph, Twitter Card, структурированные данные Schema.org, извлечение ключевых слов, оценку времени чтения и функционал связанных статей.

  6. Плагин PHPMailer для CMF Cotonti
    Плагин PHPMailer улучшает возможности отправки email в Cotonti Siena 0.9.26 за счёт интеграции библиотеки PHPMailer (версия 6.10.0). Заменяет стандартную функцию cot_mail на надёжное SMTP-решение, добавляя продвинутые функции, такие как изоляция плагина и предотвращение дублирования.

Комментарии (0)

Комментарии отсутствуют
Добавление комментариев доступно только зарегистрированным пользователям

Автор контента

webitproff

Оффлайн

webitproff

Последняя авторизация: 17.07.2025 13:20

  • Страница размещена: 09.05.2025 07:59
  • Последнее обновление: 09.05.2025 08:08

Похожие страницы

Анализ полезности плагина Page Reviews с точки зрения SEO
1 Плагин Page Reviews для Cotonti Siena предоставляет функционал пользовательских отзывов и рейтингов для статей, что
Плагин SeoArticle для Cotonti
2 Плагин "SeoArticle" расширяет SEO-возможности модуля Pages в Cotonti CMF, добавляя мета-теги, Open Graph,
Плагин PHPMailer для Cotonti Siena
3 Плагин PHPMailer улучшает функционал отправки email в Cotonti Siena, интегрируя библиотеку PHPMailer (версия 6.10.0).
Плагин "Connecting Libs" для сайтов на CMF Cotonti
4 Тестировалось на последнем релизе движка: Core v.0.9.25 beta/DB v.0.9.25/PHP v.7.4. Основное назначение
Cotonti Siena CMF • 10.05.2024 19:18 webitproff
Плагин Archive для Cotonti Siena
5 Плагин предназначен для формирования архива публикаций сайта по годам. Каждый год разбит на блоки – месяцы, в которых