|
|
|
| Нужно обработать все ссылки в коментариях пользователей.
Если пользователь дает ссылку на др. станицу нашего сайта, делаем из нее активную ссылку, если дает внешнюю ссылку, тоже делаем из нее тоже активную, но с параметром rel="nowollow".
Т.е. нужно составить рег. выражение, которое бы выбирало все ссылки, кроме ссылок на наш сайт. | |
|
|
|
|
|
|
|
для: tAleks
(24.01.2012 в 16:13)
| | Ссылка как дается при помощи bbCode или HTML? В ней всегда есть http:// или его может не быть? | |
|
|
|
|
|
|
|
для: cheops
(24.01.2012 в 20:40)
| | Ссылка просто пишется "руками".
Может быть такая:
http://site.ru/index.php
или такая:
http://www.site.ru/index.php
или такая:
www.site.ru/index.php | |
|
|
|
|
|
|
|
для: tAleks
(24.01.2012 в 16:13)
| | делал для phpbb форума, после обработки bb-кодов:
function callback_func($matches)
{
if ( ! strpos($matches[1], 'sitename.ru'))
{
$message = str_replace('<a','<noindex><a rel=\'nofollow\'', $matches[0]);
return str_replace('/a>','/a></noindex>', $message);
}
else
{
return $matches[0];
}
}
$message = preg_replace_callback("|<a([^>]+)>.*?</a>|",callback_func, $message);
|
не очень красиво получилось. можно без callback-функции сделать, правда же? )) | |
|
|
|