Автоцензор в phpBB3 - использование html кода
Правила форума
При размещении мода/статьи взятой с другого форума/сайта обязательно необходимо указывать первоисточник сообщения.
При размещении мода/статьи взятой с другого форума/сайта обязательно необходимо указывать первоисточник сообщения.
Сообщение
Автоцензор в phpBB3 - использование html кода
Посмотрел - никаких событий нет для реализации этого
Сообщение
Автоцензор в phpBB3 - использование html кода
Смайл должен быть такой -
Все ведь идет по плану, кроме последней правки.
Заменить на это не совсем правильный результат имеем:
Все ведь идет по плану, кроме последней правки.
Код: Выделить всё
$parse_flags = ($row['bbcode_bitfield'] ? OPTION_FLAG_BBCODE : 0) | OPTION_FLAG_SMILIES;
$message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $parse_flags, true);
Код: Выделить всё
$message = censor_text($row['post_text'], true);
Сообщение
Автоцензор в phpBB3 - использование html кода
Очень требуется такая штука, никто не видел реализацию под 3.2 ??? Или вариант размещённый здесь будет работать под 3.Х?
-
LC
Сообщение
Автоцензор в phpBB3 - использование html кода
Подскажите, а как заставить цензор заменять исходный HTML на нужный HTML ?
Точнее "на нужный" уже готово, а как заставить "исходный"?
То есть к примеру::
заменять на:
У депика "плохой" сертификат - и половина пользователей не видит картики (не отображаются через https).
Этих картинок пару десятков тысячь - не вариант вручную заменять...
Тем более, что это можно сделать цензором. Но как7
Точнее "на нужный" уже готово, а как заставить "исходный"?
То есть к примеру:
Код: Выделить всё
https://s6.dpic.me
заменять на:
Код: Выделить всё
http://s6.dpic.me
Этих картинок пару десятков тысячь - не вариант вручную заменять...
Тем более, что это можно сделать цензором. Но как7
Сообщение
Автоцензор в phpBB3 - использование html кода
Это проще сделать через phpmyadmin запросом к базе данных (бэкап phpbb_posts сделайте)
Код: Выделить всё
UPDATE `phpbb_posts` SET `post_text` = replace(post_text, 'https://s6.dpic.me', 'http://s6.dpic.me')
-
LC
Сообщение
А так в цензор добавил проблемные https'ы и всё.
Постфактум - не решение. Нужно "на лету"...
Автоцензор в phpBB3 - использование html кода
Не - не проще, т.к. постоянно этим придётся заниматься и проблема "недоступности" не устраняется.PPK писал(а):Это проще сделать через phpmyadmin
А так в цензор добавил проблемные https'ы и всё.
Постфактум - не решение. Нужно "на лету"...
Сообщение
Автоцензор в phpBB3 - использование html кода
Вообще самый простой способ это принудительно добавить код для замены этой ссылки, потому-что цензор меняет только отдельные слова, а не части текста в слове, а ссылка этим и является
добавить
/includes/functions_content.php
после
Код: Выделить всё
else
{
$censors = $cache->obtain_word_list();
}
}
Код: Выделить всё
$str_from = array('<', '>', '[', ']', '.', ':');
$str_to = array('<', '>', '[', ']', '.', ':');
$str_replace_from=str_replace($str_from, $str_to, 'https://s6.dpic.me');
$str_replace_to=str_replace($str_from, $str_to, 'http://s6.dpic.me');
$text=str_replace($str_replace_from, $str_replace_to, $text);
-
LC
Сообщение
Но всё равно это костыль получается: в каждом таком случае придётся скачивать файл и стрингреплейсом заменять каждый "случай", после чего обратно заливать...
Эффективней цензора "научить" любой "текст" заменять. Только я не знаю как...
Как я думаю (возможно ошибаюсь), чтобы "научить" цензора, нужно упростить его функцию - чтобы он тупо любой текст менял на любой текст (как в DLE к примеру). И возможно придётся поднять его в очереди выполнения (чтоб он был перед выполнением тегов и всяких манипуляций с ссылками).
Автоцензор в phpBB3 - использование html кода
PPK, спасибо огромное!Вообще самый простой способ это принудительно добавить код для замены этой ссылки, потому-что цензор меняет только отдельные слова, а не части текста в слове, а ссылка этим и является
Но всё равно это костыль получается: в каждом таком случае придётся скачивать файл и стрингреплейсом заменять каждый "случай", после чего обратно заливать...
Эффективней цензора "научить" любой "текст" заменять. Только я не знаю как...
Как я думаю (возможно ошибаюсь), чтобы "научить" цензора, нужно упростить его функцию - чтобы он тупо любой текст менял на любой текст (как в DLE к примеру). И возможно придётся поднять его в очереди выполнения (чтоб он был перед выполнением тегов и всяких манипуляций с ссылками).
Вернуться в «Минимоды и хаки для phpBB3»