Фильтр содержания контента используя SiteKreator

#1 11 апреля 2017 в 14:47
Компонент SiteKreator пополнился на наш взгляд полезной функцией фильтрации содержание выводимого контента.

Фильтрации подвергаются поля в типах контента и профилях пользователей, комментарии, записи на стене.

С помощью данного функционала можно:
— произвести замену текста (например удалить мат на ***, или поменять везде слово "белый" на "черный")
— произвести замену используя регулярные выражения (можно на лету придумывать новые bbcode, ниже приведу пример массу регулярок для разных сервисов)
— произвести замену слов на ссылки. Т.е. можно указать какие либо слова и указать для них ссылки, и везде где встречаются данные слова — они будут преобразованы в заданные ссылки. Например можно сделать таким образом перелинковку на сайте и нужные слова сделать ссылками на нужные страницы.

Примеры регулярок для bbcode различных медийных сервисов:

в примерах показаны bbcode для вставки: музыки с SoundCloud, Яндекс.Музыка или ссылкой на mp3 файл, вставка виде с Coub, Vimeo, Rutube, Zoomby, 1tv.ru, Life.ru, MoeVideo, НТВ, вставка карты по указаних адреса (GoogleMaps).

Каждый bbcode — 1 строка

  1. \[soundcloud\](.*?)\[\/soundcloud\]|<iframe frameborder="0" src="https://w.soundcloud.com/player/?url=$1" style="width:100%;"></iframe>
  2. \[place\](.*?)\[\/place\]|<img src="https://maps.googleapis.com/maps/api/staticmap?center=$1&zoom=16&size=600x300&maptype=roadmap&markers=color:red%7C$1" width="100%" alt="$1">
  3. \[coub\]https{0,1}:\/\/w{0,3}\.*coub\.com\/view\/([a-z0-9]+)\[\/coub]|<iframe src="http://coub.com/embed/$1?muted=false&amp;autostart=false&originalSize=false&hideTopBar=false&noSiteButtons=false&startWithHD=false" allowfullscreen="true" frameborder="0" width="100%" height="300"></iframe>
  4. \[yamusic\]https{0,1}:\/\/w{0,3}\.*music\.yandex\.ru\/album\/([0-9]+)\/track\/([0-9]+)\[\/yamusic\]|<iframe frameborder="0" style="border:none;width:100%;height:100px;" width="100%" height="100" src="https://music.yandex.ru/iframe/#track/$2/$1"></iframe>
  5. \[vimeo\]https{0,1}:\/\/w{0,3}\.*vimeo\.com\/([0-9]+)\[\/vimeo]|<iframe src="http://player.vimeo.com/video/$1?title=0&amp;byline=0&amp;portrait=0&amp;wmode=transparent" width="100%" height="300" frameborder="0"></iframe>
  6. \[rutube\]https{0,1}:\/\/w{0,3}\.*rutube\.ru\/video\/([a-z0-9]+)\/{0,1}(.*?)\[\/rutube]|<iframe width="100%" height="300" src="http://rutube.ru/video/embed/$1" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowfullscreen></iframe>
  7. \[zoomby\]([0-9]+)\[\/zoomby]|<object id="ZoombyPlayer" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100%" height="300"><param name="movie" value="http://www.zoomby.ru/v/$1" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgcolor" value="#000000" /><param name="wmode" value="opaque" /><embed src="http://www.zoomby.ru/v/$1" quality="high" allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="100%" height="300" type="application/x-shockwave-flash"></embed></object>
  8. \[1tv\]http:\/\/www\.*1tv\.ru\/news\/([a-z]+)\/([a-z0-9]+)\[\/1tv]|<iframe width="100%" height="300" src="http://www.1tv.ru/i_newsvideo/$2" frameborder="0" allowfullscreen></iframe>
  9. \[audio\](.*?)\[\/audio]|<audio src="$1" preload="none" controls=""></audio>
  10. \[life\](.*?)\[\/life]|<iframe src="$1" width="100%" height="315" frameborder="0" allowfullscreen></iframe>
  11. \[moevideo\]http:\/\/thesame.tv\/video\/(.*?)\[\/moevideo]|<iframe src="//thesame.tv/embed/$1" style="width:100%;height:350px;" frameborder="0" allowfullscreen="allowfullscreen"></iframe>
  12. \[ntv\]http:\/\/www\.ntv\.ru\/video\/(.*?)\/{0,1}\[\/ntv]|<iframe width="100%" height="360" src="//www.ntv.ru/video/embed/$1" frameborder="0" allowfullscreen></iframe>
Те кто уже купил компонент и месяц еще не прошел могут скачать новую версию бесплатно. Для обновления надо только перезалить файлы.

Кто еще не успел: Компонент SiteKreator тут >>>

Но и это еще не все. Сейчас пишем небольшое видео об еще интересном и неописанном про данный компонент.

Всем спасибо) Мы вам еще покажем!
#2 12 апреля 2017 в 16:59
Немного видео
Обзор Фильтра содержания контента используя SiteKreator

#3 13 апреля 2017 в 12:30
#4 2 марта 2019 в 12:48
Великие Гуру, Боги программирования, преклоняюсь перед Вашей мудростью и терпением.
Для SiteKreator есть скин антимат.
//Здесь в настройках указано, что скрипт срабатывает при нажатии на кнопку button с селектором input.button-submit.button (строка 5), а ищет слова в блоке с селектором textarea#html (строка 4), и если находит мат, выводит сообщение "Мат" (строка 13) и не сохраняет страницу. Более тонкая настройка скрипта на стоп слова и сочетания, а так же белый фильтр слов ниже.
  1. $(document).ready(function () {
  2. var msgInput = $('textarea#content');
  3. $('input.button-submit.button').click(function(event){
  4. if(checkForObscene()) event.preventDefault();
  5. });
  6. function checkForObscene() {
  7. var txt = msgInput.val();
  8. if (txt < 1) return;
  9. var result = window.containsMat(txt);
  10. if(result) {
  11. alert('С матом нельзя сохранить');
  12. return true;
С textarea#content (поле текст без редактора) при сохранении работает антимат. Может кто подскажет как добавить несколько селекторов, для textarea#html и для комментариев, кнопку "button" сохранить.
  1.  
  2. var msgInput = $('textarea#content');
  3. $('input.button-submit.button').click(function(event){
Для комментариев работает "Фильтр текста", "Замена слов", слова остаются на странице, просто заменяются на "..", хотелось бы, чтобы при сохранении не писали мат.
#5 9 марта 2019 в 13:56
UP
Доброе время суток. Может кто-нибудь уже догадался как к 'input.button-submit.button' (Сохранить Запись) добавить "input.button" (Сохранить комментарий)?
#6 5 декабря 2019 в 17:18
Всем не хворать. Вроде бы в 2,11 антимат работал для комментариев, в 2,12 "Сохранить комментарий" поменялся на "input.button". Как можно сделать
проверку скриптом антимат перед сохранением для сохранения записей и сохранения комментариев.
#7 23 января 2020 в 05:21
Два вопроса.
1. Вставка идет с включенным типографом?
2. Будет ли в будущем автоматическая подмена bbcode: [soundcloud]xxx[/soundcloud] в зависимости от адреса? То есть если аудио то просто ловит мп3 или вав или огг и ставит аудио, а если с соунклоуда или там других музыкальных или видео сайтов то по домену подставляет сам bbcode?
#8 24 ноября 2020 в 14:16
Добрый. Может кто знает, что сделать чтобы на 2.13.1 работал "Cкрипт антимат" в Записи — Поле — Текст html — Redactor или Фильтр текста? В Комментариях в Redactor работает Фильтр текста. Спасибо.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.