Автоцензор не работает.

Если у вас возникают проблемы и вопросы по настройке форума phpBB3 либо выскакивают непонятные ошибки, не устанавливаются либо криво работают модификации, то этот раздел для вас. Обсуждаем все вопросы, связанные со стилями, модификациями, доработками и проблемами их использования.
Перед тем, как обратиться за помощью, обязательно заполните свой профиль (укажите ссылку на свой форум). Если есть вопрос по конкретной модификации, то обязательно пользуемся поиском по форуму, потому как, возможно, уже есть анонс этого мода и соответственно вопрос задается в теме анонса.

Модераторы: Vl@d1m1r, Lorem Ipsum, Atlas

Правила форума
----
Ответить
Аватара пользователя
ursego
Свой на все 100
Свой на все 100
Сообщения: 478
Стаж: 11 лет 3 месяца
Откуда: Днепропетровск
Контактная информация:

Автоцензор не работает.

Сообщение ursego »

Ситуация: допустим, я не люблю яндекс и хочу заменять его автоцензором на гугль. В автоцензоре я ввожу:

Слово: yandex
Замена: google

Если юзер вписывает http://www.yandex.ru/ без бибикода url, то всё в порядке - линк превращается в http://www.google.ru/, и клик по нему ведёт на гугль.

А с бибикодом - беда. Следующий вариант вообще игнорируется автоцензором:

Код: Выделить всё

[url]http://www.yandex.ru/[/url]
Т.е. юзер видит http://www.yandex.ru/ и клик ведёт туда-же.

Следующий вариант уже чуть лучше - показывает гугль, но линк, чтоб ему пусто было, ведёт всё-же на яндекс:

Код: Выделить всё

[url=http://www.yandex.ru/]http://www.yandex.ru/[/url]
Есть какое-то решение? Мне автоцензор для того и нужен чтоб бороться со спамящими конкурентами - не матюки-же им, в самом деле, вырезать... :-0=)
#1
Аватара пользователя
ursego
Свой на все 100
Свой на все 100
Сообщения: 478
Стаж: 11 лет 3 месяца
Откуда: Днепропетровск
Контактная информация:

Автоцензор не работает.

Сообщение ursego »

Всё, проблема решена - ха-ха, заменой всего одной строчки! Итак, в файле includes/functions_content.php надо найти строку

Код: Выделить всё

   $text = str_replace(array("\n", "\r"), array('<br />', "\n"), $text);
и заменить её на

Код: Выделить всё

   $text = str_replace(array("\n", "\r"), array('<br />', "\n"), censor_text($text));
#2
Ответить