Jak wyłączyć filtry w joomla 1.5
Jak zdjąć filrty w joomli - wpisać na białą listę
Joomla ma wbudowaną czarną listę tagów które nie mogą być wykorzystywane w artykułach jest to zabezpieczenie przeciw nieautoryzowanemu wpisaniu złośliwego kodu do treści dokumentów lub w polu formularzy. Zabezpieczenie to pozwala na filtrowanie oraz usuwanie automatyczne usuwanie tagów z artykułów w momencie zapisywania. Wprowadzono je w wersji joomla 1.5.2. Filtrowanie jest włączone domyślnie więc jeżeli nic nie uczynisz Twoja witryna jest zabezpieczona.
Tagi typu <object>, <embed>, <iframe> są to znaczniki domyślnie wpisane na czarną listę jednak mogą być wykorzystywane do integracji z google maps lub youtube.
Jednym z rozwiązań jest wybranie odpowiedniej grupy użytkowników i wyłączenie filtrowania poprzez włączenie białej listy filtrów. Rozwiązanie to nie zawsze działa pozatym trzeba pamiętać, że dodatkowo należy wyłączyć moduł filtrowania w edytorze tekstu. Na przykład w TINY MCE trzeba wejść do ustawień pluginu i sprawdzić ustawienia Cleanup on Startup, Cleanup on save.
W joomli 1.5 nie ma możliwości z menu administracyjnego wyłączenia filtrów.
Można rozwiązać to od strony kodu PHP. Wchodzimy na nasz serwer do folderu:
Ścieżka: libraries\joomla\filter\filterinput.php
$tagBlacklist
=
array
(
'applet'
,
'body'
,
'bgsound'
,
'base'
,
'basefont'
,
'embed'
,
'frame'
,
'frameset'
,
'head'
,
'html'
,
'id'
,
'iframe'
,
'ilayer'
,
'layer'
,
'link'
,
'meta'
,
'name'
,
'object'
,
'script'
,
'style'
,
'title'
,
'xml'
);
Teraz w prosty sposób można usunąć na stałe przeszkadzające nam filtry.
Przykładowe filtry nakładane na artykuł.
Przykładowe filtry
Przykładowo, aby umożliwić autorom umieszczanie artykułów z podstawowymi znacznikami HTML, zastosuj następujące ustawienia:
- Dla parametru Filtr grup zaznacz opcje Zastrzeżony i Autor.
- Zaznacz Białą listę jako typ filtra
- Umieść w polu Filtr znaczników następujące: p, br, a, ul, ol, li
- Umieść w polu Filtr atrybutów następujące: href, target
- Filtr grup [Filter Groups]: ustal, dla których grup zastosować filtry. W pozostałych grupach żaden filtr nie będzie stosowany. Standardowo filtr stosowany jest w stosunku do użytkowników ze wszystkich grup, aby chronić witryny przed atakami z zewnątrz.
- Typ filtra [Filter Type]: zaznacz, czy i który z filtrów zastosować:
- Czarna lista [Black list]: dopuszcza stosowanie wszystkich znaczników i atrybutów, z wyjątkiem wymienionych na czarnej liście.
- Biała lista [White list]: dopuszcza stosowanie tylko znaczników i atrybutów wyszczególnionych w polach Filtr znaczników i Filtr atrybutów.
- Bez HTML [No HTML]: usuwa z artykułu przed jego zapisaniem wszystkie znaczniki.
- Filtr znaczników [Filter Tags]: lista dodatkowych znaczników; oddziel każdy znacznik spacją lub przecinkiem.
- Filtr atrybutów [Filter Attributes]: lista dodatkowych atrybutów; każdą nazwę atrybutu oddziel spacją lub przecinkiem.
Domyślne filtry w joomla 1.5
Domyślną metodą filtrowania w Joomla jest “Czarna lista”. Standardowo na czarnej liście umieszczone są następujące znaczniki:
'applet', 'body', 'bgsound', 'base', 'basefont', 'embed', 'frame', 'frameset', 'head', 'html', 'id', 'iframe', 'ilayer',
'layer', 'link', 'meta', 'name', 'object', 'script', 'style', 'title', 'xml'
Standardowo na Czarnej liście umieszczone są następujące atrybuty:
'action', 'background', 'codebase', 'dynsrc', 'lowsrc'
Możesz uzupełnić czarną listę dodatkowymi znacznikami i atrybutami, umieszczając je w polach filtra znaczników i filtra atrybutów, oddzielając każdy znacznik i każdą nazwę atrybutu odstępem bądź przecinkiem.
Ustawione domyślnie filtry działają bez względu na używany edytor.
Podczas zapisu wszystkie filtrowane znaczniki i dokonane pomiędzy nimi wpisy zostaną usunięte.