Вставляем iframe-код на свой сайт DLE

Вставка стороннего контента (видео с YouTube, карт, виджетов или таблиц) через тег <iframe> — стандартная задача для вебмастера. Однако пользователи CMS DataLife Engine (DLE) часто сталкиваются с проблемой: при сохранении новости движок просто вырезает или преобразует этот тег.
В этой статье мы без воды и сложных терминов разберем, почему это происходит и как правильно вставить iframe-код на сайт DLE.
Почему DLE удаляет тег iframe?
По умолчанию в DataLife Engine встроена строгая система безопасности. Движок фильтрует весь входящий HTML-код, чтобы защитить сайт от XSS-атак (внедрения вредоносного кода). Тег <iframe> входит в список потенциально опасных, поэтому система очищает его при публикации новости, если у пользователя нет соответствующих прав.
Чтобы решить эту проблему, нужно дать разрешение на публикацию исходного HTML-кода или использовать безопасные методы интеграции.
Способ 1: Настройка прав для групп пользователей (Самый простой)
Если вы публикуете контент от лица Администратора или Главного редактора, вам нужно просто разрешить своей группе использовать чистый HTML-код.
Пошаговая инструкция:
-
Зайдите в Админпанель DLE.
-
Перейдите в раздел «Настройка групп пользователей».
-
Выберите группу «Администраторы» (или ту, от имени которой вы публикуете статьи).
-
Откройте вкладку «Новости».
-
Найдите пункт «Разрешить использование HTML тегов в новостях» и включите его (переведите в положение «Да»).
-
Сохраните изменения.
Как вставить код после настройки: При добавлении новости в визуальном редакторе (Froala, TinyMCE или Floara) обязательно нажмите кнопку «Исходный код» (обычно иконка < >). Вставьте ваш код <iframe> и сохраните новость.
Способ 2: Использование дополнительных полей (Самый безопасный и правильный для SEO)
Если вам нужно вставлять iframe (например, плеер с видео) регулярно, лучше не отключать фильтрацию HTML, а создать для этого отдельное «Дополнительное поле». Это сохранит безопасность сайта и позволит красиво выводить код в шаблоне.
Шаг 1: Создание поля
-
В Админпанели перейдите в «Дополнительные поля новостей».
-
Нажмите «Добавить поле».
-
Заполните данные:
-
Название поля:
video_iframe(только латиница). -
Описание поля: Код iframe (видео).
-
Тип поля:
Несколько строк. -
Безопасное поле: Выберите «Нет» (это критически важно, иначе DLE снова вырежет код).
-
-
Сохраните поле.
Шаг 2: Вывод в шаблоне
-
Откройте файл шаблона полной новости:
fullstory.tpl(через FTP или раздел «Шаблоны» в админке). -
Вставьте тег
[xfvalue_video_iframe]в то место, где должен отображаться iframe. -
Сохраните шаблон.
Как использовать: Теперь при добавлении новости у вас появится новое поле «Код iframe (видео)». Просто вставьте туда скопированный код, и он корректно отобразится на странице без риска для безопасности системы.
Способ 3: Отключение фильтрации iframe в настройках безопасности (Для старых версий)
В некоторых старых или модифицированных версиях DLE может потребоваться прямое разрешение тега iframe в настройках системы.
-
Перейдите в «Настройки системы» -> вкладка «Безопасность».
-
Найдите поле «Разрешенные HTML теги».
-
Добавьте в список
iframe(через запятую, если там уже есть другие теги). -
Сохраните изменения и очистите кэш.
Примечание: Этот способ снижает безопасность сайта, поэтому применять его стоит только если первые два метода не сработали.
Краткий чек-лист при ошибках
Если вы всё сделали по инструкции, но iframe всё равно не отображается:
-
Проверьте протокол: Убедитесь, что ссылка внутри
src="..."в вашем iframe начинается сhttps://. Браузеры блокируют загрузкуhttp://контента на защищенных сайтах. -
Очистите кэш: Нажмите кнопку «Очистить кэш» на главной странице админпанели DLE.
-
Проверьте редактор: Всегда вставляйте iframe-код только в режиме просмотра исходного кода (
< >), а не в визуальный интерфейс редактора.

