Некликабельная ссылка.
Некликабельная ссылка.
Не знаю может где и писали (а спец темы я не нашёл), очень часто при добавлении от 2 до 3+ ссылок в строчку, последняя почему-то не активная как текст, приходится пользоваться тегом URL. Было как и в ЛС так и на самом форуме.
Гениальность и безумие, это две крайности одной сущности. (Ранее носил здесь ник Killerlot)
- uav1606
- Advanced Member
- Сообщения: 5969
- Зарегистрирован: 16.01.2008,22:04
- Откуда: Енакиево
- Контактная информация:
-
Вклад в сообщество
На замечал.
Вот для пробы четыре ссылки подряд:
http://dgmag.in/forum/
http://forum.old-dos.ru/index.php
http://nostalgy.net.ru/forum/
http://iforum.pro/
Нормально показывает.
kl-13, а можно пример сообщения, где есть проблемы с ссылками? Может, они какие-нибудь нестандартные? Раньше, к примеру, как текст отображались ссылки на ftp и https, сейчас вроде бы они нормально отображаются:
https://www.google.com.ua/search?q=ustivirigoldik
ftp://mail.primetime.com.ua/
https://www.google.com.ua/search?q=ferrogringo
https://www.google.com.ua/search?q=krivohvoster
Вот для пробы четыре ссылки подряд:
http://dgmag.in/forum/
http://forum.old-dos.ru/index.php
http://nostalgy.net.ru/forum/
http://iforum.pro/
Нормально показывает.
kl-13, а можно пример сообщения, где есть проблемы с ссылками? Может, они какие-нибудь нестандартные? Раньше, к примеру, как текст отображались ссылки на ftp и https, сейчас вроде бы они нормально отображаются:
https://www.google.com.ua/search?q=ustivirigoldik
ftp://mail.primetime.com.ua/
https://www.google.com.ua/search?q=ferrogringo
https://www.google.com.ua/search?q=krivohvoster
http://upload.akusherstvo.ru/image677872.jpg http://upload.akusherstvo.ru/image677873.jpg
Я написал что в строчку, в столбик работает. Вот пример, даже в предпросмотре сразу не работает. Ещё в паре сообщения до этого у меня было так-же. Притом не работает всегда последняя.
Я написал что в строчку, в столбик работает. Вот пример, даже в предпросмотре сразу не работает. Ещё в паре сообщения до этого у меня было так-же. Притом не работает всегда последняя.
Гениальность и безумие, это две крайности одной сущности. (Ранее носил здесь ник Killerlot)
Ну в движках форумов я 0, но знаю что с определённого времени форумы стали распознавать точки и запятые после ссылки, не считая их её частью (и делая их соответственно не кликабельными). Возможно форум считает последнюю ссылку чем-то подобным, хотя тогда не понятно почему пробел любой длинны не влияет, и почему только последняя. Всё равно спасибо за внимание к проблеме, мне тегом URL попользоваться то не сложно, или в столбик ссылки вставить, просто когда забываю бесит .
P.S. Кстати движок призраков точку в конце от ссылки не отделяет ).
P.S. Кстати движок призраков точку в конце от ссылки не отделяет ).
Гениальность и безумие, это две крайности одной сущности. (Ранее носил здесь ник Killerlot)
- uav1606
- Advanced Member
- Сообщения: 5969
- Зарегистрирован: 16.01.2008,22:04
- Откуда: Енакиево
- Контактная информация:
-
Вклад в сообщество
Исследования показали, что в ссылках в один ряд тэгом <a href> автоматом не обрамляются чётные ссылки, т.е. 2-я, 4-я и т.п.:
http://link.com http://link2.com http://link3.com http://link3.com http://link3.com http://link3.com http://link3.com
Добавлено:
Глюк присутствует и в оригинальном движке, без модификаций - только что проверил. Предположительно, собака зарыта вот в этих строках в parser.php движка:
(Имеется в виду модифицированная версия, в обычной только первая строка.)
Нужно, предположительно, заменить на:
Пока тестирую...
Upd: вариант не работает...
http://link.com http://link2.com http://link3.com http://link3.com http://link3.com http://link3.com http://link3.com
Добавлено:
Глюк присутствует и в оригинальном движке, без модификаций - только что проверил. Предположительно, собака зарыта вот в этих строках в parser.php движка:
Код: Выделить всё
$text = preg_replace("/(\s+)(http:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(https:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(ftp:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
Нужно, предположительно, заменить на:
Код: Выделить всё
$text = preg_replace("/(\s*)(http:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s*)(https:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s*)(ftp:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
Upd: вариант не работает...
-
- Advanced Member
- Сообщения: 5894
- Зарегистрирован: 02.08.2013,22:13
- Откуда: Павловский Посад Мск.обл.
- Контактная информация:
-
Вклад в сообщество
С этим вопросом не все просто.
Главный фактор - откуда были вставлены ссылки, т.к. вставляются не только видимые на экране символы, но и др. инфа ( скрытая ), содержащаяся в символьной строке. Например, на этот форум практически бесполезно копировать ссылки ( особенно фотки с превьюшками ) с
http://forum.ixbt.com/ - ввиду разности движков.
Как вариант - можно попытаться добавлять/убирать пробелы перед ссылкой или сразу после неё, но это - не выход.
Еще вариант - набирать текст через сторонний текстовый редактор, который, по возможности, не поддерживает W-формат текста - для исключения невидимой информации в ссылке ( т.е. только текст ).
Главный фактор - откуда были вставлены ссылки, т.к. вставляются не только видимые на экране символы, но и др. инфа ( скрытая ), содержащаяся в символьной строке. Например, на этот форум практически бесполезно копировать ссылки ( особенно фотки с превьюшками ) с
http://forum.ixbt.com/ - ввиду разности движков.
Как вариант - можно попытаться добавлять/убирать пробелы перед ссылкой или сразу после неё, но это - не выход.
Еще вариант - набирать текст через сторонний текстовый редактор, который, по возможности, не поддерживает W-формат текста - для исключения невидимой информации в ссылке ( т.е. только текст ).
Коллекционирование радиодеталей : http://collectingrd.kxk.ru/
- uav1606
- Advanced Member
- Сообщения: 5969
- Зарегистрирован: 16.01.2008,22:04
- Откуда: Енакиево
- Контактная информация:
-
Вклад в сообщество
В общем, упомянутый выше вариант не подошёл, он нарушает работу других функций форума, вместо этого надо заменить в parser.php (в корне движка):
на:
В результате вышеописанный глюк исчезает.
Вот пример тестового сообщения со ссылками:
http://someforum.e3w.ru/forum/index.php?t=4
Код: Выделить всё
$text = preg_replace("/(\s+)(http:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(https:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(ftp:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]+)/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
Код: Выделить всё
$text = preg_replace("/ /"," ",$text);
$text = preg_replace("/(\s+)(http:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]{1})/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(https:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]{1})/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
$text = preg_replace("/(\s+)(ftp:\/\/[^\s\"'\[,!]+)([\s\"'\[,!]{1})/is","$1 <a href=\"$2\" rel=\"nofollow\" target=_blank>$2</a> $3",$text);
Вот пример тестового сообщения со ссылками:
http://someforum.e3w.ru/forum/index.php?t=4