Очистка кода в редакторах Joomla

Логотип Joomla DocsВ админке Joomla можно без проблем вставить HTML или JavaScript-код в материал если отключить визуальный редактор TinyMCE (или аналог) и включить редактор «No — editor».
Но попытка создать (отредактировать) пост с JavaScript-кодом успехом не увенчалась — теги script были вырезаны после нажатия на кнопку «Сохранить».

Ответ находится на странице http://docs.joomla.org/Screen.content.15#Filtering_Options_.28HTML.29.

Краткое изложение:
Местонахождение настроек — Материалы::Менеджер материалов::Параметры.

1. Вырезание тегов при постинге материалов по умолчанию было реализовано в целях безопасности. Начиная с версии Joomla! 1.5.9 все юзеры кроме находящихся в группе «СуперАдминистраторы» находятся в группе фильтрации html «blacklist».
Filter Groups: Группа пользователей (ролей) для которых вы хотите установить правило фильтрации (используйте Ctrl+Click для множественного выбора)
Filter Type: Black List (Default), White List, No HTML.
Black list — разрешены все теги, кроме перечисленных.
White list — разрешены только перечисленные теги.
No HTML — вырезаются все html-теги без исключения.
Filter Tags: разрешнные (White list) или запрещенные теги (Black list).
Filter Attributes: аналог Filter Tags для атрибутов.

2. Фильтр по умолчанию.
Настройкой фильтрации по умолчанию является Black list. То есть при сохранении материала удаляются теги:
'applet', 'body', 'bgsound', 'base', 'basefont', 'embed', 'frame', 'frameset', 'head', 'html', 'id', 'iframe', 'ilayer', 'layer', 'link', 'meta', 'name', 'object', 'script', 'style', 'title', 'xml'
и атрибуты:
'action', 'background', 'codebase', 'dynsrc', 'lowsrc'.
Примечание: Даже если вы используете редактор WYSIWYG (например, TinyMCE), параметры фильтрации могут вырезать дополнительные теги и атрибуты перед сохранением информации в базе данных.

3. Примеры настройки фильтрации.
— Разрешаем группе «Авторы» публиковать материалы с простейшими тегами разметки.
Фильтр тегов 1
— Применим стандартную настройку фильтрации Black list для всех групп, кроме админов и суперадминов.
Фильтр тегов 2

Также в стандартной поставке Joomla входит визуальный редактор TinyMCE. В настройках его плагина Editor — TinyMCE 2.0 есть интересеные настройки очистки материалов от тегов но вот совместимость их с настройками фильтрации по группам кроме небольшого примечания не описаны.

Комментариев: 5

  • 19.01.2011 hacker-crakcer:

    alert('НЕТ ЗАЩИТЫ ОТ SCRYPT');

    • 19.01.2011 Кирилл:

      И в WordPress и в Joomla алерты и прочий javascript скорее всего вырезается по умолчанию из «входящих от пользователей данных».

  • 24.04.2011 inom:

    А я пошел дальше... Если в tynmce режуться теги applet их можно настроить в Менеджере плагинов — плагин Tynmce (запрещенные теги). Сейчас проверю прошло ли =)

    • 10.09.2011 Sergii:

      Вы правы! В настройках редактора выбираем никогда не очищать код и любой тег не режется. А вот с Virtuemartom как? нужно блеклист в класс.инпутфильтре кАрябать?

  • 28.05.2012 Дмитрий:

    Не получается вставить карту на сайт.

    Не могу найти, где задать права администратору, как в примере, в «параметрах», я этого не нашел.


Добавление комментария:

 css.php