Как сделать внешнюю ссылку внутренней или Прячем внешние ссылки
Бывает, очень хочется сделать некоторые внешние ссылки внутренними, оставив вид ссылки читаемым. Приведу два способа: JS и PHP
Бывает, очень хочется сделать некоторые внешние ссылки внутренними, оставив вид ссылки читаемым.
Внешние ссылки сайта - это ссылки на страницы других сайтов на просторе сети. Эти ссылки не любят поисковые системы. Количество внешних ссылок ( чем меньше, тем лучше) является одним из важнейших факторов лояльности к вашему сайту поисковых систем!Ниже, два способа преобразования внешних ссылок во внутренние: JS и PHP
Вариант с PHP мне нравится больше, т.к. используется Get передача и все выглядит как-то более естественно:
Позволяет внешнюю ссылку превратить в одну из страниц нашего сайта. Такие страницы индексируются, но в поиск не попадают. Для работы необходимо наличие php. Но php скрипт по умолчанию не будет работать на html и решить проблему поможет небольшая запись в файле .htaccess
AddHandler application/x-httpd-php .php .html .htm
И теперь настройка редиректа
1. Для начала создаем файл, условно назовем его r.php (для того чтобы потом меньше текста набирать!)
2. Вставляем в этот файл вот такой код и заливаем в корень сайта:
<html> <head> <title> переход по внешней ссылке на <? $url = $_GET['url']; echo"$url";?> </title> </head> <body> <h1>Вы переходите по ссылке </h1><h2><? $url = $_GET['url']; echo"$url";?></h2> <br/><br/> <strong>Подождите пожалуйста 5 секунд или нажмите <a href="<? print $url?>">сюда</a></strong> <script language="javascript1.2"> setTimeout('location.href="<?php echo $url; ?>"',5000);</script> </body> </html>
3. И теперь к той ссылке, которую хотите спрятать от индексации поисковыми системами пишете код вида:
<a href="r.php?url=http://siteurl.dom">Шифрованная внешняя ссылка</a>
Вариант с JS - а точнее jQuery:
Подключаете jQuery и далее все ссылки, которые должны быть внутренними, но будут вести на внешние сайты, мы ставим таким образом:
<a href="#" class="external" title="twitter.com/site">twitter.com/site</a>
Для поисковика такая ссылка будет внутренней. Для пущего эффекта можно добавить атрибут rel=’noindex, nofollow’. Дальше мы напишем скрипт, который все ссылки с классом external будет обрабатывать и приводить к виду обычной ссылки. Скрипт выглядит так:
<script> $(document).ready(function(){ $(".external").each(function() { var ext = $(this).attr("title"); if (ext) { $(this).attr("href","http://" + ext); } }); }); </script>
Т.е. адрес, куда перейдёт человек, мы сохраняем в атрибуте title, а внешняя ссылка остаётся внутренней. Внешне ссылка будет выглядеть как обычная и человек не будет путаться, куда он попадёт после клика. Ссылочный вес остаётся на странице.
Почему не надо прятать все исходящие ссылки:
Если вы хотите, чтобы другие блоггеры ссылались на вас, начните с себя. Не прячьте ссылку на сайт человека только для того, чтобы яндекс видел минимум исходящих линков с домена. Правила хорошего тона подразумевают, что если вы ссылаетесь на другой сайт, то вероятно и другие сайты рано или поздно будут ссылаться на вас. Конечно, если у вас будет на что ссылаться. Поэтому работайте над контентом и не злоупотребляйте этим инструментом.
Прячьте исходящие ссылки только на сайты, которые бессмысленно делать внешними. Всегда давайте человеку понять, куда он попадёт после перехода по ссылке, это тоже относится к хорошему тону.