LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
26.05.2012, 11:43:42 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: JComments - как запретить писать ссылки в комментарии?  (Прочитано 2744 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Партизан
Осваиваюсь на форуме
***

Репутация: +10/-0
Offline Offline

Сообщений: 165


Тысяча червей! Сверстать всех наверх!


« : 28.07.2010, 22:42:34 »

Облазил весь форум но ответа не нашёл. ! Суть вопроса как запретить писать ссылки в комментариях?
В идеале что если пользователь писал ссылку ему показывали сообщение "Ссылке запрещены!" Но сойдёт и такой вариант что бы ссылки заменялись на сообщение "ссылка удалена".
Записан
Dimir
Давно я тут
****

Репутация: +8/-1
Offline Offline

Пол: Мужской
Сообщений: 239



« Ответ #1 : 29.07.2010, 00:50:08 »

Можно применить фильтр слов и внести туда http://www, www. ,.ru и так далее заменить их на знак _  в итоге мы получим такое-
_joomlaforum_
Записан
Dimir
Давно я тут
****

Репутация: +8/-1
Offline Offline

Пол: Мужской
Сообщений: 239



« Ответ #2 : 29.07.2010, 00:50:56 »

если будет другое решение подскажите и мне,у меня стоит вот так,простой фильтр как указаноо выше
Записан
Darkick
JComments Tester
*

Репутация: +236/-1
Offline Offline

Пол: Мужской
Сообщений: 1486



« Ответ #3 : 29.07.2010, 08:00:37 »

в настройках убрать галочку "распознавание ссылок" (как то так). Ссылки писать будет можно, но они будут простым текстом, не обёрнутым в тег <A>. Такой вариант не устраивает?
Записан
Dimir
Давно я тут
****

Репутация: +8/-1
Offline Offline

Пол: Мужской
Сообщений: 239



« Ответ #4 : 29.07.2010, 08:07:04 »

в настройках убрать галочку "распознавание ссылок" (как то так). Ссылки писать будет можно, но они будут простым текстом, не обёрнутым в тег <A>. Такой вариант не устраивает?
Ссылку все равно будет видно)) а так только Тело ссылки останеться.
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #5 : 29.07.2010, 10:47:05 »

Ну самое простое (на мой взгляд) решение это использование CustomBBCode:

1. Переходим в раздел CustomBBCode
2. Нажимаем кнопку Создать
3. В поле Имя вводим название правила (чтобы проще было потом понять, что это), например "Disable Links"
4. В блоке Шаблон, переключаемся на закладку "Advanced (Regular Expression)" и вводим регулярное выражение:
Код:
(^|\s|\>|\()((http:\/\/|https:\/\/|news:\/\/|ftp:\/\/|www.)\w+[^\s\<\>\"\'\)]+)
5. В блоке Замена (HTML), переключаемся на закладку "Advanced (Regular Expression)" и вводим регулярное выражение:
Код:
<span style="color: red;">ссылки запрещены</span>
6. В блоке Замена (Plain text), переключаемся на закладку "Advanced (Regular Expression)" и вводим регулярное выражение:
Код:
[ссылка удалена]
7. Устанавливаем, для каких групп пользователей будет работать это правило и публикуем его.

Всё... Для всех пользователей, у кого есть права на это правило (а можно его, например, только гостям назначить), все ссылки в тексте будут заменяться на сообщение, выделенное красным цветом, что ссылки запрещены. Вот как-то так. По тому же принципу можно и всякие другие штучки делать.

Будут вопросы - спрашивайте, а реквизиты для печенек/карамелек/коньяка у меня в подписи, лишние пол-царства — слать почтой.
Записан
Партизан
Осваиваюсь на форуме
***

Репутация: +10/-0
Offline Offline

Сообщений: 165


Тысяча червей! Сверстать всех наверх!


« Ответ #6 : 29.07.2010, 13:48:37 »

Спасибо, но теперь появилась другая проблема  если написать [url ]адрес сайта[/url] то ссылка работает Sad
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #7 : 29.07.2010, 13:59:34 »

Спасибо, но теперь появилась другая проблема  если написать [url ]адрес сайта[/url] то ссылка работает Sad
а зачем вам этот тег? запретите его использование... вы же хотели совсем запретить ссылки, или я не прав?
Записан
Партизан
Осваиваюсь на форуме
***

Репутация: +10/-0
Offline Offline

Сообщений: 165


Тысяча червей! Сверстать всех наверх!


« Ответ #8 : 29.07.2010, 14:16:35 »

Всё понял в чем моя ошибка, если запретить этот тег, то старые комментарии с ним так и останутся, просто нельзя его будет добавлять к новым комментариям  Roll Eyes

Кстати для будущих читателей надо ещё не забыть зайти в раздел Настройки >>> Вид и поставить Дополнительные BBCode - Да. А то я пол часа искал где ошибка.
Записан
tsirik
Осваиваюсь на форуме
***

Репутация: +2/-0
Offline Offline

Сообщений: 145


Это не Я :)


« Ответ #9 : 15.08.2010, 16:00:21 »

1. Переходим в раздел CustomBBCode
А где это?
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #10 : 17.08.2010, 13:18:00 »

А где это?
в административной панели Joomla, в меню Компоненты, подменю JComments, подменю Пользовательские BBCode
Записан
747
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #11 : 08.04.2011, 11:02:29 »

Немного не для блокирования делал, нужно было организовать замену ссылки на редирект.

Так вот, ссылка работает только если нет тега <br> если же он есть то обрабатывается неправильно, читал документацию по PRCE но так и не разобрался.

первая регулярка
Код:
(^|\s|\>|\()((http:\/\/|https:\/\/|news:\/\/|ftp:\/\/|www.)\w+[^\s\<\>\"\'\)]+)
замена
Код:
<a href="go.php?act=${2}" target="_blank"><strong>Перейти по ссылке</strong></a>

Вот  пример сработки скрипта когда ссылка не работает.

Код:
<br target="_blank" href="go.php?act=хттп://пример.ru/konkurs" <a="">
<strong>Перейти по ссылке</strong>

хотя должно быть

Код:
<br> <a href="go.php?act=хттп://пример.ru/konkurs" target="_blank">
<strong>Перейти по ссылке</strong></a>


« Последнее редактирование: 08.04.2011, 11:37:21 от 747 » Записан
747
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #12 : 25.04.2011, 16:15:31 »

Ни у кого нет идей? Просто самому разобраться неподсилу, очень помощь нужна.
Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #13 : 04.07.2011, 10:45:34 »

Приведите полный пример - регулярка, замена, что в тексте комментария, и что получается в результате замены. Из того, что вы изначально привели ничего не понятно (никаких BR в замене нет), что было ДО замены тоже не ясно.
Записан
747
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #14 : 04.07.2011, 10:58:55 »

регулярка

Код:
(^|\s|\>|\()((http:\/\/|https:\/\/|news:\/\/|ftp:\/\/|www.)\w+[^\s\<\>\"\'\)]+)


замена

Код:
<a href="go.php?act=${2}" target="_blank"><strong>Перейти по ссылке</strong></a>

Cообщение

Код:
Сегодня прошла игра нашего клуба.
http://primer.ru/mafia

Cообщение в виде HTML, после замены

Код:
Сегодня  прошла игра нашего клуба.
<br>
<br target="_blank" href="http://sait.ru/go.php?act=http://primer.ru/mafia" <a="">
<strong>Перейти по ссылке</strong>

Как я понял сработка не происходит в том случае если пользователь перенес ссылку на следующую строку. В этом случае прямо перед ссылкой вставляется тег <br> и из за него обработка происходит неверно. В том случае если поставить после переноса на следующую строку пробел, то сработка происходит верно.

« Последнее редактирование: 04.07.2011, 11:04:18 от 747 » Записан
smart
Администратор
*******

Репутация: +1143/-14
Offline Offline

Пол: Мужской
Сообщений: 8204


тружусь даже во сне...


« Ответ #15 : 04.07.2011, 11:41:44 »

Как я понял сработка не происходит в том случае если пользователь перенес ссылку на следующую строку.
я посмотрю, но в принципе это можно учесть в регулярном выражении (сам факт, что перед ссылкой может быть перевод строки или некий тег).
Записан
747
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 13


« Ответ #16 : 04.07.2011, 11:48:40 »

я посмотрю, но в принципе это можно учесть в регулярном выражении (сам факт, что перед ссылкой может быть перевод строки или некий тег).

Так я и думаю, что проще будет регулярку поправить. Но самостоятельно не получается, в документации по PRCE разобраться не могу.  Sad
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet