как открыть ссылку в новом окнеПо умолчанию в WordPress все ссылки открываются в том же окне браузера, которое и было открыто. Но часто, бывает необходимо открыть ссылку в новом окне или открыть ссылку в новой вкладке.

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

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

На другом сайте он может открыть еще несколько страниц и после этого ему будет трудно опять попасть на ваш сайт. Он не дочитал вашу статью, а как снова попасть на ваш сайт не всякий пользователь компьютера сразу поймет, ведь у людей разная подготовка и начинающим бывает не всегда понятно, что нужно делать в этом случае.

В браузере можно переходить по кнопке назад, а посетитель ведь мог вообще закрыть окно на другом сайте, а он ведь хотел дочитать вашу статью, а не ту статью, на которую он случайно попал по внешней ссылке.

Самый простой способ открытия ссылки в новом окне или вкладке — это нажать на ссылку колесиком (средней кнопкой) мыши, после этого ссылка будет открыта в новом окне.

Открыть ссылку в новой вкладке браузера можно вручную вставляя в каждую такую ссылку атрибут «target» со значением «_blank» тэга <a>. В HTML это будет выглядеть таким образом — target=”_blank”. Но таких ссылок может быть очень много, и не всегда запомнишь, в какие внешние ссылки еще не был вставлен этот атрибут.

При добавлении новых ссылок и изображений в статье, в админ-панели WordPress, в текстовом редакторе, есть соответствующие пункты, активация которых позволяет открывать добавленные ссылки и изображения в новом окне.

Есть несколько способов сделать так, чтобы ссылки открывались в новом окне. В этой статье я опишу только те способы, которые работали на моем сайте.

Некоторые способы некорректно работали на моем сайте, в предыдущем шаблоне, поэтому о них я не буду рассказывать. В частности некорректно отображалась главная страница в способе, который требует подключения библиотеки JavaScript — jQuery. Кроме того, этот способ не работал бы при отключении JavaScript.

Как открыть ссылку в новом окне

Для того, чтобы открывать на сайте абсолютно все ссылки в новых окнах или вкладках, потребуется вставить специальный код в файл «Заголовок (header.php)».

Для вставки этого кода нужно войти в «Админ-панель WordPress» => «Внешний вид» => «Редактор» => «Заголовок (header.php)».

В файле «Заголовок (header.php)» между тэгами <head> и </head> необходимо вставить прямо перед закрывающим тэгом </head> вот такой код:

<base target="_blank" />

После вставки этого кода все ссылки будут открываться в новом окне или в новой вкладке. В этом случае открываются все ссылки, не только внешние на другие сайты, но и внутренние ссылки при переходе на страницы внутри самого сайта.

Мне такая настройка открытия страниц в новом окне или во вкладке кажется не очень удобной, потому что при этом открывается множество окон или вкладок в браузере. Но, я знаю, что некоторым, наоборот, будет удобно иметь возможность открывать таким способом внешние и внутренние ссылки на своем сайте.

Плагин Target Blank In Posts And Comments

Плагин Target Blank In Posts And Comments помогает открывать ссылки в комментариях и в постах в новом окне, не затрагивая при этом другие внутренние ссылки на сайте.

Скачать плагин Target Blank In Posts And Comments можно отсюда.

Этот плагин долго не обновлялся, но он хорошо работает на последней версии движка WordPress, и прекрасно справляется со своими обязанностями. Он некоторое время работал и на моем сайте.

Для установки плагина Target Blank In Posts And Comments потребуется войти в «Админ-панель WordPress» => «Плагины» => «Добавить новый» => «Установить плагины» => «Загрузить». После загрузки плагин нужно установить и активировать.

Плагин Target Blank In Posts And Comments не требует никаких настроек и начинает работать сразу после своей активации.

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

Плагин Target Blank In Posts And Comments хорошо справляется со своими функциями, он позволяет задерживать и возвращать посетителей на ваш сайт.

Открытие ссылки с комментариев в новом окне

Если вам необходимо открывать ссылки с комментариями без помощи плагина, то это можно сделать после изменения соответствующего кода. Изменения нужно будет произвести в коде файла «comment-template.php», который находится в папке «wp-includes».

Для этого нужно будет подключиться к своему сайту по FTP соединению с помощью таких программ, как FileZilla или Total Commander. Это также можно сделать с помощью файлового менеджера, который находится в Панели управления вашего хостинга.

Файл «comment-template.php» расположен примерно по такому пути — domains/название вашего сайта/public_htlm/wp-includes/comment-template.php.

Внимание! Перед изменением в файле «comment-template.php» обязательно необходимо сделать его копию. В случае неполадок, после изменения в коде файла, ваш сайт может перестать работать в штатном режиме. В этом случае вам придется заменить измененный вами файл, на сохраненную оригинальную копию этого файла.

Со мной произошел подобный случай, и мне пришлось делать откат сайта до работоспособного состояния с помощью технической поддержки моего хостинга. Я не сохранил копию оригинального файла, внес неправильные изменения в код файла, и после этого мой сайт на некоторое время перестал отображаться в Интернете.

Этого бы не произошло, если бы я сделал копию файла перед его изменением, потому что я бы сразу заменил нерабочий на работоспособный файл.

Вам нужно будет скопировать файл «comment-template.php» к себе на компьютер и сохранить его. С сохраненного файла необходимо сделать копию и в ней произвести изменения в коде файла, открыв его при помощи текстового редактора Notepad++. Открыть файл можно и в блокноте, но в блокноте будет очень трудно найти нужные строки кода для его изменения.

Далее следует дополнить строку, начинающую с $return = ”<, выражением target=”_blank” (на изображении это выражение уже вставлено в код). У меня в файле comment-template.php этот участок кода со вставленным выражением выглядит таким образом:

function get_comment_author_link( $comment_ID = 0 ) {
	/** @todo Only call these functions when they are needed. Include in if... else blocks */
	$url    = get_comment_author_url( $comment_ID );
	$author = get_comment_author( $comment_ID );

	if ( empty( $url ) || 'http://' == $url )
		$return = $author;
	else
		$return = "<a href='$url' target='_blank' rel='external nofollow' class='url'>"$author</a>";
	return apply_filters('get_comment_author_link', $return);
}

При внесении изменений в этот код, следует внимательно смотреть на кавычки (одинарные или двойные), от этого может зависеть работоспособность вашего сайта. Далее следует заменить файл «comment-template.php» в папке «wp-includes».

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

Теперь ссылки с комментариев будут открываться в новом окне до обновления версии WordPress. Дело в том, что при обновлении версии CMS WordPress, происходит замена измененного файла comment-template.php, на новый файл comment-template.php.

Поэтому, после обновления версии WordPress, нужно будет снова вставлять target=”_blank” в файл comment-template.php в папке wp-includes.

Использование атрибута rel=”external nofollow”

Атрибут rel=”external” выполняет, точно такую же функцию как атрибут target=”_blank”, который является невалидным согласно спецификации в XHTML. Сейчас произошло объединение атрибута rel=”external” и атрибута rel=”nofollow”, который закрывает ссылки от передачи веса, в один объединенный атрибут rel=”external nofollow”. Как можно заметить выше, в приведенном коде, rel=”external nofollow” уже входит в состав файла WordPress.

Для того, чтобы ссылки с комментаторов сайта открывались в новом окне одного атрибута rel=”external nofollow” будет недостаточно. Еще понадобиться вставить код JavaScript в файл темы, установленной на сайте, иначе, ссылки будут продолжать открываться в этом окне.

Этот код JavaScript нужно будет вставить в файл header.php (Заголовок) перед тегом </head>:

<script type="text/javascript">
function externalLinks() {
    var doc = document;
    if (!doc.getElementsByTagName) return;
    var links = doc.getElementsByTagName("a");
    for (var i=0; i<links.length; i++) { var link = links[i]; if (link.getAttribute("href") && (link.getAttribute("rel") != null) && link.getAttribute("rel").indexOf("external") >= 0 ){
        link.target = "_blank";
        link.title = "Откроется в новом окне"

     }
   }
}
window.onload = externalLinks;
</script>

После обновления файла, ссылки с комментаторов вашего сайта будут открываться в новом окне или вкладке браузера. Этот способ позволяет не вносить изменения в файлы движка WordPress и не зависеть от обновления CMS. При помощи таких способов вы можете произвести изменения на своем сайте для того, чтобы ссылка с комментатора вашего сайта открывалась в новом окне.

С уважением, Василий Прохоров

Понравилась статья — нажмите на кнопки:

Подписаться на обновления блога