Комментарии в DLE: практический пример настройки шаблона
Разберём на конкретном примере, как изменить вывод комментариев в DataLife Engine: вынести автора и дату, добавить рейтинг, скрыть служебные элементы и не сломать штатное редактирование.

В DLE внешний вид комментариев меняется не в одном месте: список обычно собирается через comments.tpl, форма добавления живёт в addcomments.tpl, а общие стили находятся в CSS-файлах шаблона. Ниже соберём практичный вариант для DLE 17.x: карточка комментария с аватаром, автором, датой, текстом, рейтингом и действиями модератора. Работа займёт около 30–60 минут, если у вас уже есть доступ к файлам шаблона и резервная копия.
Что именно будем менять
Цель примера — получить компактный комментарий без служебного шума. Имя автора и дата будут сверху, текст — в отдельном блоке, рейтинг и действия — снизу. Штатные возможности DLE при этом остаются на месте: пользователь сможет оценивать комментарий, а администратор или модератор — редактировать и удалять его, если эти права разрешены настройками группы.
Пример рассчитан на стандартные шаблоны DLE 17.x. В других ветках названия файлов и набор доступных тегов могут отличаться, поэтому перед заменой проверьте исходный comments.tpl своей версии.
В DLE безопаснее менять разметку вокруг штатных тегов, чем переписывать механизм комментариев с нуля.
Что понадобится до начала
- доступ к файлам сайта по SFTP, FTP или через панель хостинга;
- резервная копия каталога активного шаблона;
- название активного шаблона в настройках DLE;
- тестовая статья, на которой можно оставить комментарий от обычного пользователя;
- доступ администратора для проверки редактирования и удаления.
Сноска. Шаблонный тег — это специальная конструкция DLE в фигурных скобках, которую движок заменяет данными при формировании страницы. Например, {author} выводит имя автора комментария, а {comment} — его текст.
Какие файлы отвечают за комментарии
| Файл или область | Что меняет | Когда редактировать |
|---|---|---|
comments.tpl | Карточку уже опубликованного комментария | Нужно изменить порядок полей, кнопки и классы |
addcomments.tpl | Форму отправки нового комментария | Нужно изменить поля, подсказки и кнопку отправки |
| CSS активного шаблона | Цвета, отступы, сетку и адаптивность | HTML уже подходит, но выглядит неправильно |
| Настройки групп и комментариев | Кто может писать, редактировать и модерировать | Нужно ограничить права, а не только скрыть кнопку |
Путь зависит от структуры сайта, но файлы обычно находятся внутри каталога активного шаблона в templates/. Не правьте копию шаблона, который не выбран в настройках DLE: визуально ничего не изменится, хотя файл будет выглядеть исправленным.
Практический пример: новая карточка комментария
Сначала откройте резервную копию comments.tpl и исходный файл в редакторе с отображением кодировки UTF-8. Не удаляйте весь файл вслепую: в нём могут быть условные блоки и служебные теги, которых нет в коротком примере.
Шаг 1. Сохраните штатные теги
Перед изменением выпишите или скопируйте из исходного шаблона все конструкции, связанные с автором, текстом, рейтингом и действиями. В стандартном шаблоне DLE часто встречаются теги вроде {author}, {profile-link}, {date}, {comment}, {rating}, {rating-plus}, {rating-minus}, {edit-comment} и {del-comment}.
Проверка: в копии файла сохранился исходный вариант, к которому можно вернуться одним действием.
Шаг 2. Соберите разметку
Ниже — не отдельный плагин, а пример каркаса для тела комментария. Перенесите в него только те теги, которые есть в вашем штатном файле. Это важно: набор тегов зависит от версии DLE и настроек комментариев.
<article class="comment-card">
<header class="comment-card__header">
<div class="comment-card__author">
{profile-link}
</div>
<time class="comment-card__date">{date}</time>
</header>
<div class="comment-card__body">
{comment}
</div>
<footer class="comment-card__footer">
<div class="comment-card__rating">
{rating-plus}
<span>{rating}</span>
{rating-minus}
</div>
<div class="comment-card__actions">
{edit-comment}
{del-comment}
</div>
</footer>
</article>
Если в вашей версии {profile-link} выводит ссылку с именем пользователя, отдельный {author} рядом не нужен: иначе имя появится дважды. Если штатный шаблон использует другую конструкцию для профиля, оставьте её без переименования.
Проверка: откройте статью с комментариями. В исходном HTML должны появиться блоки с классами comment-card, а текст комментария не должен отображаться буквами {comment}.
Шаг 3. Добавьте стили
Стили положите в CSS-файл активного шаблона, а не в системные файлы DLE. Название файла зависит от темы, поэтому подключать конкретный путь вслепую не стоит.
.comment-card {
padding: 16px;
border: 1px solid #e2e5e9;
border-radius: 10px;
background: #fff;
}
.comment-card + .comment-card {
margin-top: 12px;
}
.comment-card__header,
.comment-card__footer {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}
.comment-card__date {
color: #747b84;
font-size: 13px;
}
.comment-card__body {
margin: 12px 0;
line-height: 1.55;
}
.comment-card__footer {
color: #5b6470;
font-size: 13px;
}
.comment-card__actions {
display: flex;
gap: 8px;
}
Проверка: карточки разделены отступом, длинная дата не выталкивает кнопки за пределы экрана, а на мобильном ширина комментария не вызывает горизонтальную прокрутку.
Шаг 4. Проверьте права, а не только внешний вид
Скрытая кнопка не отнимает право на действие. Если посетитель не должен редактировать или удалять комментарии, ограничьте это в настройках групп и комментариев DLE. В шаблоне оставьте штатные условные блоки, если они уже были в исходном файле.
Проверка: протестируйте страницу в трёх режимах — гость, обычный авторизованный пользователь и администратор. Для каждого режима отдельно проверьте форму, рейтинг, редактирование и удаление.
Форма нового комментария: что менять аккуратно
Файл addcomments.tpl отвечает не за уже опубликованный текст, а за форму отправки. Здесь можно изменить подписи, порядок элементов и классы полей, но нельзя произвольно переименовывать атрибуты формы или удалять скрытые поля из исходного шаблона.
Безопасный подход — оставить служебную часть формы DLE без изменений, а визуальную оболочку заменить:
- сохраните скрытые поля, которые присутствуют в исходном файле;
- не меняйте имена полей, если не проверили их назначение в документации вашей версии;
- кнопку отправки оформите CSS-классом, но не удаляйте её штатный тег или атрибут;
- после правки проверьте ошибочную отправку и повторное нажатие кнопки.
Если задача — разрешить комментарии только зарегистрированным пользователям, используйте штатные условия шаблона и настройки групп DLE. Не пытайтесь решить вопрос одним CSS: скрытая форма не является ограничением доступа.
Что обычно ломается
Теги показываются обычным текстом
Чаще всего файл отредактирован не в том каталоге или тег не поддерживается вашей версией DLE. Сравните активный шаблон в админ-панели с путём к файлу и верните неизвестную конструкцию из резервной копии.
Рейтинг исчез, но ошибок нет
Проверьте, не удалены ли из шаблона отдельные теги рейтинга и не скрывает ли их CSS. Также убедитесь, что оценки включены в настройках DLE и разрешены группе пользователя.
Кнопки редактирования видны всем
Визуальная проверка обманчива: кнопка может быть ссылкой, которая затем отклоняется сервером, а может действительно открыть действие. Проверьте права обычного пользователя и гостя, затем верните штатные условные блоки вокруг действий.
После обновления DLE оформление пропало
Обновление может заменить файлы шаблона или изменить доступный набор тегов. Храните изменённые шаблоны отдельно, сравнивайте их с новой штатной версией и переносите только собственную разметку, а не весь старый файл поверх нового.
Когда выбрать шаблон, плагин или отдельный модуль
| Подход | Подходит для | Цена решения |
|---|---|---|
Правка comments.tpl | Разметка, порядок полей, классы, базовое оформление | Быстро, но изменения нужно переносить после обновлений |
| Правка CSS | Цвета, отступы, адаптивность, состояния кнопок | Меньше риск сломать логику, но нельзя добавить новые данные |
| Плагин или модуль | Уведомления, подписки, сложная модерация, интеграции | Больше возможностей, но появляется зависимость от совместимости и обновлений |
Если вам нужно только изменить внешний вид стандартного комментария, начинайте с шаблона и CSS. Если требуются уведомления, ветки ответов или синхронизация с внешним сервисом, одной разметкой это не решить.
Что проверить перед публикацией
- Откройте статью с нулём, одним и несколькими комментариями.
- Проверьте длинный текст, ссылку, переносы строк и спецсимволы.
- Откройте страницу гостем и авторизованным пользователем.
- Проверьте рейтинг, редактирование и удаление с разными правами.
- Посмотрите мобильную версию и консоль браузера на ошибки.
- Очистите кеш DLE и кеш браузера, если старая разметка продолжает отображаться.
Что сделать дальше
После публикации поставьте в план проверку после следующего обновления DLE: сравните новый штатный comments.tpl со своей версией и отдельно протестируйте права групп. В продакшене следите не только за дизайном, но и за количеством спама, долей удалённых комментариев и ошибками отправки формы. Если нужен ответ на комментарий, уведомление по почте или древовидная дискуссия, оформите это как отдельную задачу: такие изменения затрагивают логику, а не только шаблон.
Важно: названия тегов и доступные условия могут различаться между версиями DLE и установленными дополнениями. Перед изменением рабочего сайта сверяйте их с документацией и исходными файлами именно вашей сборки.
Редактор изображений: Убрать лишнее, заменить фон, добавить объект, расширить кадр — на вашем изображении.
Спросить за 20 ₽Источники: Официальная документация DataLife Engine по шаблонам и тегам, Официальный сайт DataLife Engine
Частые вопросы
В какой версии DLE подходит этот пример?
Почему я изменил comments.tpl, но на сайте ничего не поменялось?
Можно ли скрыть комментарии для гостей только через CSS?
Почему после замены шаблона пропали кнопки редактирования и удаления?
Можно ли добавить аватар автора в комментарий?
Что делать, если после обновления DLE дизайн комментариев сломался?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.