Kosiak 1 08/27/07 13:52 Подскажите как сделать чтобы в подписи и в сообщениях к любым ссылкам автоматически добавлялись тэги noindex, nofollow? Поделиться сообщением Ссылка на сообщение
Fisana 700 08/27/07 14:08 В подписях нет ничего проще. Есть шаблон signature_separator (кажется так) в группе skin_global. Закройте переменную $sig в noindex.Хотя гораздо проще запретить просмотр подписей гостям, а, следовательно, и ботам.И это даже лучше, так как nofollow в шаблон не вставить к переменной. А вот о том, чтобы ко всем ссылками это добавлялось, наверное надо править bb-коды. Почитайте у Сонга, там не конкретно, но на эту тему много. Я пыталась вникать , но ничего не поняла, а времени на осмысление было мало. Сообщите, если разберетесь. Мы тут редирект решили делать и таким образом спасаться от растущего количества исходящих ссылок с сайта. Если на ссылках зарабатываешь, то вал ссылок с форума уже не просто лишне, но и опасно. Как занепотят сайт... И все. Поделиться сообщением Ссылка на сообщение
Kosiak 1 08/27/07 14:18 Да, либо редирект либо эти тэги - хотя кашу маслом не испортишь - можно использовать и то и то :( Поделиться сообщением Ссылка на сообщение
Fisana 700 08/27/07 14:24 Если Влад мод для редиректа от 2.1 переделает, напишу в этой теме. А может он его и в архив выложит, не спрашивала.С редиректом можно жить спокойно, хотя вот в инструментах вебмастера Гугля встречаю на себя бэки с мастертолка, где редирект установлен.Там урлы, кстати, автоматом не парсятся, но через bb-коды работают. Поделиться сообщением Ссылка на сообщение
andaril 4 08/27/07 16:48 я у себя сделал проще... Правда бб коды править пришлось, зато все ссылки "внешние" режутся. :(могу выложить Поделиться сообщением Ссылка на сообщение
andaril 4 08/27/07 17:01 варварский метод, но сейчас../sources/classes/bbcode/class_bbcode_core.phpнайтиreturn ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end'];заменить на //return ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end']; if ( (strpos($url['html'], "http://ВАШ ДОМЕН") !== false) or (strpos($url['html'], "http://www.ВАШ ДОМЕН") !== false) ) { return ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end']; } else { return ( isset($url['st']) ? $url['st'] : '' ) . "<noindex><a href=\"".$url['html']."\" target=\"_blank\" rel=\"nofollow\">".$show."</a></noindex>" . $url['end']; }./sources/classes/bbcode/class_bbcode_legacy.phpнайти$txt = preg_replace( "#<a href=[\"']mailto:(.+?)['\"]>(.+?)</a>#" , "\[email=\\1\]\\2\[/email\]" , $txt );добавить выше $txt = preg_replace( "#<noindex>#" , "" , $txt ); $txt = preg_replace( "#</noindex>#" , "" , $txt );./sources/classes/bbcode/class_bbcode.phpнайти$txt = preg_replace( "#<a href=[\"']mailto:(.+?)['\"]>(.+?)</a>#s" , "\[email=\\1\]\\2\[/email\]" , $txt );Выше добавить $txt = preg_replace( "#<noindex>#" , "" , $txt ); $txt = preg_replace( "#</noindex>#" , "" , $txt ); просто нагло проверяю начало строки на вхождение разрешенного сайта, и делаю ссылку. Если поддомены есть, то добавлять надо с помощью OR. Почему так? Я до сих пор плохо разбираюсь в регулярных выражениях, да и писал не долго это все, для знакомого. Поделиться сообщением Ссылка на сообщение
Fisana 700 08/27/07 17:58 А там только для noindex работает?Дело в том, что noindex понимает только Яндекс в таких ссылках. Для мировых поисковиков необходимо nofollow - это атрибут тега . Ссылка в итоге должна принять вид анкор.По идее nofollow можно в метатеге в header вписать, но тогда ссылки Гуглем не будут индексироваться вообще везде.А через bb коды это как? Поделиться сообщением Ссылка на сообщение
andaril 4 08/27/07 21:04 да что вы прям, там и нофоллоу есть. :) вглядитесьreturn ( isset($url['st']) ? $url['st'] : '' ) . "<noindex><a href=\"".$url['html']."\" target=\"_blank\" rel=\"nofollow\">".$show."</a></noindex>" . $url['end']; Поделиться сообщением Ссылка на сообщение
Kosiak 1 09/05/07 12:07 Да, получилось, спасибо!Вот ещё бы переадресацию сделать с чёрным/белым списком - было бы вообще круто! Поделиться сообщением Ссылка на сообщение
Kosiak 1 11/18/07 16:56 andarilА можно как-нибудь сделать так, чтобы все поддомены определённого домена пропускались, чтобы не прописывать кучу вариантов, а к примеру сделать так: *.moy_sait.ru Поделиться сообщением Ссылка на сообщение
andaril 4 11/19/07 18:04 я подумал. Можно такое написать, но если урл будет вида _http://porno.mnogo/index.php?fjdkf=fsdfs&moy_sait.ru то такая ссылка тоже отпарсится без ноиндекс. Поделиться сообщением Ссылка на сообщение
Kosiak 1 11/19/07 19:38 Ну такой вариант хоть и возможен, но представляется мне крайне маловероятным. Поделиться сообщением Ссылка на сообщение
andaril 4 11/20/07 11:26 так попробуйте (изменять только слова "ВАШ ДОМЕН") //return ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end']; if ( preg_match( '/http:\/\/(.*?)ВАШ ДОМЕН/i', $url['html'] ) ) { return ( isset($url['st']) ? $url['st'] : '' ) . "<a href=\"".$url['html']."\" target=\"_blank\">".$show."</a>" . $url['end']; } else { return ( isset($url['st']) ? $url['st'] : '' ) . "<noindex><a href=\"".$url['html']."\" target=\"_blank\" rel=\"nofollow\">".$show."</a></noindex>" . $url['end']; } Поделиться сообщением Ссылка на сообщение