Hide Content для Cotonti CMF
Версия: 1.0.1 | Совместимость: Cotonti CMF 1.0+, PHP 8.0+, MySQL 8.0+ | Лицензия: BSD
О плагине
Hide Content — это расширение для Cotonti CMF, которое позволяет скрывать часть содержимого страниц, постов форума и любых других материалов от обычных посетителей и показывать его только заранее выбранным пользователям.
В отличие от плагинов «полного скрытия», которые прячут весь материал за формой авторизации, Hide Content работает точечно. Вы сами решаете, какая именно часть текста должна быть видна не всем: абзац, врезка, служебная заметка, ссылка на скачивание, промокод, внутренний комментарий. Достаточно обернуть этот фрагмент в специальный тег и указать список ID пользователей, которым он предназначен.
Остальные посетители вместо скрытого текста увидят аккуратное информационное сообщение в стиле вашей темы — например, «Этот блок скрыт для обычных посетителей. Для получения доступа напишите администратору». Сообщение полностью настраивается и локализуется: на русском интерфейсе оно будет на русском, на английском — на английском.
Плагин работает на уровне парсера контента Cotonti — это значит, что скрытый текст не попадает в HTML-код страницы вообще. Его невозможно увидеть ни через инструменты разработчика в браузере, ни через «Просмотр исходного кода», ни через сохранение страницы. Для непосвящённого посетителя скрытого фрагмента физически не существует.
Зачем это нужно владельцу сайта
Многие проекты на Cotonti сталкиваются с одной и той же задачей: в рамках одного материала нужно разное содержимое для разных людей. Раньше такие задачи решались либо грубо, либо не решались вовсе:
- создавать отдельные закрытые разделы — сложно и неудобно;
- вести переписку с каждым пользователем в личных сообщениях — долго;
- публиковать материал полностью и надеяться, что «свои поймут» — не работает;
- использовать сторонние скрипты и костыли — небезопасно и ненадёжно.
Hide Content решает эту задачу элегантно. Автор материала в момент редактирования сам решает, какую часть текста показывать избирательно, и сам же указывает, кому. Никаких отдельных тем, никаких дополнительных согласований, никаких правок ядра.
Типичные сценарии использования
Материалы с персональными бонусами
Промокоды, скидочные купоны, ссылки на закрытые вебинары, пароли от Wi-Fi в кафе, доступы к тестовым сборкам — всё это удобно размещать прямо в материале, но показывать не всем. Hide Content позволяет указать конкретных пользователей, и только они увидят персональный бонус.
Внутренние заметки и инструкции
В больших проектах часто нужно оставить в тексте служебную пометку для редактора или модератора: «этот абзац переписать после согласования», «ссылка действительна до 31 числа», «проверить факт у юриста». Раньше такие заметки хранили отдельно от текста, теперь — прямо в тексте, но видны они только тем, кому адресованы.
Поэтапная публикация материалов
Вы можете подготовить материал целиком, но часть его показать сначала только узкому кругу — например, спонсорам, подписчикам или участникам закрытого клуба. Через неделю тег можно убрать — и материал станет доступен всем без повторной верстки.
Работа с персональными предложениями
В интернет-магазине или на бирже услуг удобно делать персональные предложения: «для вас скидка 15% по этому коду». Код размещается прямо в карточке товара или в статье и виден только адресату.
Закрытый контент в форумах
В обсуждениях часто нужно оставить сообщение, предназначенное не всем участникам: ответ модератору, техническая деталь для конкретного пользователя, координация по закрытой задаче. Hide Content позволяет это делать без создания отдельных приватных тем.
Пошаговые инструкции и обучение
В обучающих материалах полезно показывать разные шаги разным группам: новичкам — базовые, опытным — продвинутые. Один материал, разные уровни погружения — без дублирования страниц и без создания отдельных курсов.
Как это работает
Автор материала оборачивает нужный фрагмент текста в специальный тег и указывает через запятую ID пользователей, которым этот фрагмент предназначен. Всё остальное плагин делает сам:
- Распознаёт тег в тексте материала при его отображении на сайте.
- Сравнивает ID текущего посетителя со списком ID в теге.
- Показывает скрытый фрагмент, если ID есть в списке.
- Подменяет фрагмент на информационный алерт, если ID нет в списке.
Весь механизм работает на стороне сервера. Это значит, что скрытый текст не отправляется браузеру вместе со страницей — его нельзя найти ни в исходном коде, ни в сетевых запросах. Для посторонних посетителей фрагмента не существует.
Плагин поддерживает два независимых типа скрытых блоков — это позволяет в одном материале использовать две разные формы сообщений: например, одну «информационную», а другую «предупреждающую». По умолчанию они оформлены как стандартные Bootstrap-алерты с разными цветами — синий и жёлтый.
Настраиваемое оформление сообщений
Сообщение, которое видят посетители без доступа, полностью настраивается прямо в админке. Администратор может задать любой HTML-шаблон для каждого из двух типов скрытых блоков:
- использовать разные цвета и стили Bootstrap;
- добавлять свои классы, иконки и вложения;
- размещать рядом с текстом дополнительные подсказки и ссылки;
- менять текст сообщения под тон вашего сайта.
Если администратор оставит поле пустым, плагин автоматически использует локализованный шаблон из языкового файла — русский для русского интерфейса, английский для английского. Благодаря этому на мультиязычных сайтах сообщения будут корректно отображаться для каждой языковой версии без дублирования настроек.
Все стандартные сообщения используют Bootstrap 5 — это значит, что в любой современной теме Cotonti они сразу выглядят уместно и аккуратно, без дополнительной вёрстки.
Безопасность
Плагин уделяет безопасности первостепенное внимание:
- Скрытый текст не попадает в браузер. Он не виден ни в HTML-коде, ни в инструментах разработчика, ни в инспекторе элементов.
- Список ID проверяется на сервере — пользователь не может подделать свой ID через браузер.
- Все входные данные валидируются — плагин устойчив к нестандартному вводу и не создаёт уязвимостей.
- Никаких изменений ядра. Плагин работает через штатные механизмы расширений Cotonti и не требует правок системы.
Совместимость
Плагин полностью совместим с другими расширениями Cotonti:
- работает с любыми темами — от стандартных до кастомных;
- не конфликтует с плагинами парсеров, редакторов, комментариев;
- корректно функционирует в модулях «Страницы», «Форумы», «Комментарии»;
- поддерживает работу с дополнительными полями и их содержимым;
- не требует Composer и сторонних библиотек.
Простота использования
Весь рабочий процесс состоит из трёх шагов:
- Установить плагин через админку Cotonti — как любое другое расширение.
- Обернуть нужный фрагмент текста в тег с указанием ID пользователей. Это делается прямо в редакторе материала, при наборе текста.
- Сохранить материал — плагин сам разберётся, кому что показывать.
Никаких отдельных страниц управления, никаких дополнительных кнопок, никаких новых пунктов меню. Всё находится там, где вы и так работаете с текстом — в редакторе статьи или поста.
Настройка
Плагин имеет минимум настроек и не требует сложной конфигурации. Через панель администратора можно:
- задать HTML-шаблон для сообщения первого типа;
- задать HTML-шаблон для сообщения второго типа;
- оставить поля пустыми — тогда будут использоваться локализованные шаблоны из языковых файлов.
Дефолтные шаблоны уже настроены на стандартный внешний вид Bootstrap 5 и не требуют обязательной правки. Установили плагин — сразу работает и выглядит красиво.
Кому подойдёт плагин
- Интернет-магазины — персональные промокоды и скидки для отдельных покупателей прямо в карточках товаров.
- Фриланс-биржи — внутренние договорённости с конкретными исполнителями без создания закрытых разделов.
- Новостные порталы — поэтапная публикация материалов для разных категорий читателей.
- Образовательные проекты — дифференцированные материалы для разных уровней подготовки.
- Тематические сообщества — закрытые разделы в открытых обсуждениях без создания отдельных подфорумов.
- Корпоративные сайты — служебные заметки для сотрудников прямо в публичных материалах.
Преимущества
- Простая установка — как любое расширение Cotonti, через панель администратора.
- Простой синтаксис — обернуть фрагмент в тег, указать ID — этого достаточно.
- Безопасность на уровне сервера — скрытый текст физически не попадает в браузер.
- Настраиваемое оформление — сообщения полностью под ваш стиль.
- Локализация — русская и английская версии сообщений.
- Bootstrap 5 — аккуратный внешний вид из коробки.
- Совместимость — работает с любыми темами и расширениями.
- Открытый исходный код — можно изучить, изменить, доработать.
- Без зависимостей — Composer и сторонние библиотеки не нужны.
Технические детали
Для разработчиков, которым нужны детали реализации, примеры интеграции с шаблонами Cotonti и PHP-функциями, полная техническая документация доступна в отдельной статье:
Полная техническая документация плагина Hide Content
В статье разобраны:
- архитектура плагина и назначение каждого файла;
- работа хуков;
- пошаговая настройка HTML-шаблонов через панель администратора;
- разбор регулярных выражений и алгоритма обработки тегов;
- интеграция с другими плагинами Cotonti;
- отладка и устранение неполадок.
Установка
- Скопируйте папку
hidecontentв каталогplugins/вашего сайта. - В админке Cotonti перейдите в раздел «Расширения».
- Найдите плагин в списке и нажмите «Установить».
- При необходимости настройте HTML-шаблоны сообщений.
- Используйте скрытые блоки в материалах сайта.
Никаких правок ядра, никаких дополнительных действий, никаких зависимостей.
Итог
Hide Content — это точный и аккуратный инструмент для тех случаев, когда в одном материале нужно разное содержимое для разных людей. Он убирает необходимость создавать закрытые разделы, дублировать страницы и вести отдельную переписку.
Одна страница. Одна статья. Один пост. И при этом — точное управление доступом к любой части текста для любого пользователя.
Плагин работает на уровне сервера, не оставляет следов в HTML-коде и не требует JavaScript у посетителя. А настраиваемое оформление сообщений и локализация делают его одинаково уместным на любом сайте — от небольшого блога до крупного интернет-магазина.
Для проектов, где важны персонализация, безопасность и простота использования, — это лучший выбор.
Купить HideContent - плагин для Cotonti CMF по низким ценам. Интернет-магазин предлагает заказать HideContent - плагин для Cotonti CMF, просмотреть полное описание, детальные характеристики, фото товара и актуальные цены со скидками