Почему Joomla удаляет HTML-теги <iframe> и <script> и как их правильно вставить?

Почему Joomla удаляет теги?

Дело в том, что по умолчанию теги <iframe> и <scriptn> находится в списке запрещенных HTML-тегов для использования в визуальном редакторе Joomla. Это касается редакторов по умолчанию TinyMCE или продвинутого редактора JCE. Выбрать редактор можно здесь:

Панель управления → Общие настройки → вкладка Сайт → Редактор по умолчанию

Также можно использовать модуль Switch Editor.

Далее необходимо снять запрет на применение нужных HTML-тегов: 
  1. в применяемом редакторе Joomla,
  2. в общих настройках Joomla (для пользователей всех групп, кроме superuser).

Как разрешить теги в TinyMCE?

Чтобы разрешить теги <iframe> и <script> в редакторе TinyMCE:

  1. Переходим к списку плагинов Joomla: Панель управления → Плагины, либо Система Плагины.
  2. Находим плагин Редактор - TinyMCE и переходим к его настройкам.
  3. В нужном наборе (наборы редактора TinyMCE для разных групп пользователей) находим опцию Запрещенные элементы.
  4. Удаляем из списка iframe, script или все сразу.
  5. Добавляем нужный тег или теги для опции Расширенные валидные элементы.
  6. Для Joomla 5: находим опцию Sandbox Iframes и отключаем (эта опция может препятствовать отображению содержимого iframe'а).
  7. Сохраняем.

После этого тег <iframe> больше не должен пропадать из визуального редактора TinyMCE для всех пользователей группы, соответствующей набору редактора, но для групп пользователей, которым предназначен другой набор, HTML-тег <iframe> по прежнему будет запрещен.

Как разрешить теги в JCE?

Предыдущие инструкции не касаются визуального редактора JCE.

Как вставить тег <iframe>?

  1. Переходим к списку профилей редактора.
  2. Выбираем профиль группы пользователей, для которой необходимо разрешить вставку тегов.
  3. Переходим на вкладку Editor Parameters → вкладка Advanced.
  4. Опция Extended Elements → вписываем iframe.
  5. Вкладка Plugin Parameters → вкладка Media Support  → Allow IFrames → выбираем подходящее значение.
  6. Ниже в той же вкладке есть настройка Sandbox Iframes → можем отключить, либо настроить исключение через следующую настройку Sandbox URL Exclusions.
  7. Сохраняем.

Как вставить тег <script>?

  1. Переходим к списку профилей редактора.
  2. Выбираем профиль группы пользователей, для которой необходимо разрешить вставку тегов.
  3. Переходим на вкладку Editor Parameters → вкладка Advanced.
  4. Опция Extended Elements → вписываем script.
  5. Опция  Allow Javascript → выбираем Да.
  6. Вкладка Plugin Parameters → вкладка Clipboard  → опция Keep tags → вписываем script.
  7. Сохраняем.

Как убрать запрет в общих настройках Joomla?

По умолчанию для всех групп пользователей, кроме superuser, установлены фильтры текста, которые редактируются в Общих настройках. Например, если необходимо дать возможность пользователям группы Manager вставлять теги <iframe> через визуальный редактор во внешнем интерфейсе сайта на Joomla, то:

  1. переходим в Панель управления → Общие настройки,
  2. вкладка Фильтры текста,
  3. находим нужную группу пользователей Manager,
  4. корректируем так, как необходимо (например, можно заменить Черный список на Нет фильтрации).