×
Циклические ссылки на сайте: поиск, обнаружение и удаление
Вернуться к Блогу
7275

Время чтения: 13 минут

Нет времени читать?
Отправить материалы на почту

Циклические ссылки на сайте: поиск, обнаружение и удаление

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

Что собой представляют циклические ссылки на сайте

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

Сторонние ссылки на сайте компании

Источник: shutterstock.com

Наличие циклического элемента на странице — это ошибка, которая требует скорейшего исправления. Такие недостатки сайта негативно сказываются на эффективности его продвижения в поисковых системах. «Яндекс» и Google относят циклические ссылки к минусам веб-страниц, и вот почему:

  • Поисковые роботы при переходе по таким гиперссылкам лишь зря тратят ресурсы, поскольку все равно идут по кругу.

  • Подобные переходы вводят пользователя в заблуждение, не давая попасть в другие разделы.

  • Циклические элементы снижают функциональные возможности веб-ресурса.

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

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

  • на логотипе или названии сайта. При клике, например, на логотип компании, главная страница просто обновляется;

  • в пунктах и подпунктах меню. Здесь есть гиперссылки практически на все основные страницы сайта. Чаще всего пункты главного меню содержат циклические ссылки;

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

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

  • в навигационной цепочке. Часто встречающаяся ошибка — последнюю запись в последовательности разделов каталога делают циклической. Такая ситуация требует обязательной корректировки.

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

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

Как циклические ссылки влияют на удобство пользования сайтом

Эксперты называют циклические ссылки грубейшей ошибкой и приводят два основных довода для их удаления из кода страниц:

  • Снижение параметров юзабилити. Большое количество переходов, дающих возможность перейти лишь на текущую страницу, приводит к дезориентации пользователя на сайте. Это делает навигацию по разделам затруднительной.

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

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

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

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

«Хорошие» циклические ссылки

«Хорошие» циклические ссылкиЦиклическая ссылка во многих случаях прикреплена к логотипу и/или основному заголовку главной страницы. Такая ситуация уже привычна для пользователя: клик по лого ведет на главную.

Кроме «Яндекса», циклические переходы, размещенные на логотипах, есть на многих крупных сайтах: aliexpress.com, amazon.com, ebay.com и др. С другой стороны, некликабельный логотип не отпугнет пользователей, если сайт несет полезную информацию. Аудитория быстро адаптируется к особенностям ресурса.

Так, например, у Google логотип не имеет гиперссылки.

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

«Плохие» циклические ссылки

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

Примеры таких элементов:

• заголовки и подзаголовки страниц, будь то находящиеся в карточке товара, разделе или отдельной статье. H1 не должен быть наделен какими-либо гиперссылками;

• в рамках контента страницы (это действительно бессмысленно и снижает юзабилити — размещать внутри описания товара или в теле статьи переход на эту же страницу);

• на обозначении текущей страницы пагинации (если пользователь просматривает третью страницу каталога, то цифра «3» не должна быть кликабельна);

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

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

Кейс: VT-metall
Узнай как мы снизили стоимость привлечения заявки в 13 раз для металлообрабатывающей компании в Москве
Узнать как

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

Вот несколько причин, из-за которых могут появится зацикленные элементы на сайте:

  • в шаблоне CMS уже были встроены подобные гиперссылки, чаще всего это шапка страницы, пункты меню, виджеты и другие элементы;

  • некоторые плагины устроены так, что уже содержат циклические ссылки. Чаще всего это касается раздела комментариев или отзывов;

  • невнимательность верстальщика — ошибка может быть допущена при размещении материалов, когда в текст ставится неверный адрес гиперссылки;

  • ошибка программиста — это тот случай, когда некорректная гиперссылка стоит на заголовке или последнем пункте хлебных крошек.

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

Как найти циклические ссылки на сайте

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

Как найти циклические ссылки на сайте

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

Еще один способ обнаружения проблемы циклических элементов — парсинг ссылок. Однако важно выбрать подходящий сервис для анализа. Так, Google Search Console не выдает отчет по циклическим ссылкам, поскольку просто причисляет их к дублям. А Яндекс.Вебмастер выдает информацию по внутренним переходам, только если они не рабочие.

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

Bulkdachecker

Hacker Target устроен по схожему принципу. Алгоритм работы с этим сервисом тот же.

Hacker Target

Обнаружить циклические переходы на сайте также можно, установив соответствующее расширение для браузера. Например, Link Klipper для Google Chrome. Командой «Extract All Links» вы выгружаете с текущей страницы все гиперссылки в формат TXT или CSV. Далее найти элементы с URL, совпадающим с исходной страницей, уже не сложно.

Кроме указанных сервисов есть еще ряд программ, которыми также можно воспользоваться:

  • Сайт Репорт;

  • WebSite Auditor.

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

Как убрать циклические ссылки с сайта на WordPress

Удалить циклическую ссылку достаточно легко. Далее подробно рассмотрим процесс их удаления. Напомним, что здесь необходимы минимальные знания в сфере html-верстки.

Убираем циклические ссылки с главной страницы

Сначала уберем циклическую ссылку с заголовка сайта. Для этого откройте файл header.php и найдите строчку, выводящую заголовок. Она выглядит примерно так:

1

<h1><a href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php bloginfo( 'name' ); ?></a></h1>

Или так:

1

<h1 itemprop="headline"><a href="<?php bloginfo('url');?>"><?php bloginfo('name');?></a></h1>

Шаблоны отличаются друг от друга, поэтому возможны варианты.

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

1

<?php if (is_front_page() || is_home()) : ?>

2

<h1>SEO Маяк</h1>

3

<?php else : ?>

4

<h1><a href="/">SEO Маяк</a></h1>

5

<?php endif; ?>

В данном примере php-функции, которые выводили на страницу название ресурса и URL, удалены и заменены обычным текстом.

Давайте подробнее разберем работу данного сценария. Условие здесь прописано с помощью конструкции if/else. Говоря обычным языком, если (If) сейчас загружена главная страница (is_home), то заголовок некликабелен. В противном случае (else) заголовок отображается с активной гиперссылкой. Последняя строчка (endif;) — завершение сценария.

В этом примере нужно будет еще скорректировать стили в style.css (или другом css-файле). Ведь стили были указаны для ссылки, а не для простого текста, которым стал заголовок.

Шаблоны и темы WordPress очень разнообразны, так что дать универсальный совет по стилевому оформлению мы не можем. Для новичков эта ситуация должна стать стимулом для изучения CSS.

Как убрать циклическую ссылку с логотипа

Теперь пора заняться удалением ссылки с логотипа сайта. От шаблона к шаблону код может отличаться, так что для примера мы возьмем стандартный кейс темы WordPress — Twentyfourteen:

1

<a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home">

2

<img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"></a>

Добавим к коду уже известную вам конструкцию if/else:

1

<?php if (is_front_page() || is_home() ) : ?>

2

<img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>">

3

<?php else : ?>

4

<a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>">

5

</a>

6

<?php endif; ?>

Не так уж и сложно!

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

Как убрать циклические ссылки из меню страниц

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

  • wp_list_pages();

  • wp_page_menu();

  • wp_nav_menu().

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

Как убрать циклические ссылки из меню страниц

Функция wp_nav_menu не зависит от двух предыдущих и служит для отображения на странице произвольного меню. Но если функция не обнаружит произвольного меню, то по умолчанию передаст эстафету инструменту wp_page_menu(), который создаст меню из страниц сайта.

На данном этапе надо определить, какая именно из этих функций работает на вашем сайте. Для этого найдите соответствующую запись в файле header.php.

  • Функция wp_list_pages()

    Данная функция устроена так, что отображает в меню все страницы сайта, кроме главной. Гиперссылка на главную страницу вписывается в код отдельно.

    1

    <ul id="nav">

    2

    <li><a href="<?php echo esc_url( home_url( '/' ) ); ?>">Главная</a></li>

    3

    <?php wp_list_pages('sort_column=menu_order&title_li=&depth=1'); ?>

    4

    </ul>

    К функции просто добавляется сценарий, с которым мы ознакомились в прошлом разделе:

    1

    <ul id="nav">

    2

    <?php if ( is_home() ) : ?>

    3

    <li>Главная</li>

    4

    <?php else : ?>

    5

    <li><a href="/">Главная</a></li>

    6

    <?php endif; ?>

    7

    <?php wp_list_pages('sort_column=menu_order&title_li=&depth=1'); ?>

    8

    </ul>

    Теперь стоит убрать нежелательные замкнутые переходы в остальных пунктах меню, созданных функцией wp_list_pages().

    В WordPress предусмотрен особый CSS-класс, который по умолчанию прикрепляется к активному подпункту меню:

    Особый CSS-класс

    Поскольку у страницы есть уникальный класс current_page_item, то есть смысл в составлении регулярного выражения.

    Вот как это может выглядеть:

    1

    function mayak_list_page_no_link($no_link){

    2

    $gg_mk = '!<li class="(.*?)current_page_item"><a(.*?)>(.*?)</a>!si';

    3

    $dd_mk = '<li class="$1current_page_item">$3';

    4

    return preg_replace($gg_mk, $dd_mk, $no_link );

    5

    }

    6

    add_filter('wp_list_pages', 'mayak_list_page_no_link');

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

    1

    .current_page_item{

    2

    font-size: 16px // размер шрифта

    3

    color: #fffff // цвет текста

    4

    background:#F0F0F0; //цвет фона

    5

    }

  • Функция wp_page_menu()

    Если в вашем случае задействована функция wp_page_menu(), то гиперссылка на главную страницу указывается в параметрах, а не прописывается отдельно. Например:

    1

    <?php wp_page_menu('show_home=Главная'); ?>

    В этой ситуации с циклическими переходами поможет справиться специальная функция:

    1

    function mayak_page_menu_no_link($no_link){

    2

    $gg_mk = '!<li class="(.*?)current_page_item"><a(.*?)>(.*?)</a>!si';

    3

    $dd_mk = '<li class="$1current_page_item">$3';

    4

    return preg_replace($gg_mk, $dd_mk, $no_link );

    5

    }

    6

    add_filter('wp_page_menu', 'mayak_page_menu_no_link');

    И рассмотрим последнюю функцию, использующуюся для создания меню страниц на базе тем WordPress.

  • Функция wp_nav_menu()

    Данная функция впервые была задействована в WordPress 3.0 и сегодня используется в большинстве шаблонов.

    Выше уже упоминалось, что эта функция выводит уже созданное произвольное меню. Если же такого меню не находится, то функция передает задачу на wp_page_menu(). Это включено в стандартные настройки wp_nav_menu().

    Таким образом, действуем исходя из того, есть ли на сайте собственное активное меню. Если нет, то используем функцию-фильтр mayak_page_menu_no_link() из предыдущего раздела.

    Если произвольные меню есть и для их вывода работает wp_nav_menu(), то убирать циклические ссылки нужно немного другим способом.

    Функцию необходимо слегка скорректировать:

    1

    function mayak_nav_menu_no_link($no_link){

    2

    $gg_mk = '!<li(.*?)class="(.*?)current_page_item(.*?)"><a(.*?)>(.*?)</a>!si';

    3

    $dd_mk = '<li$1class="\\2current_page_item\\3">$5';

    4

    return preg_replace($gg_mk, $dd_mk, $no_link );

    5

    }

    6

    add_filter('wp_nav_menu', 'mayak_nav_menu_no_link');

    Данные действия должны решить проблему. Перейдем теперь к ссылкам в категориях.

Как удалить циклические ссылки из меню категорий

В подавляющем большинстве случаев (90 %) меню категорий на базе WordPress создается функцией wp_list_categories(). Если в вашей теме активна другая функция, то напишите об этом в комментарии — придумаем, как и в вашем случае все исправить.

Чтобы убрать циклические переходы из wp_list_categories(), нужно использовать фильтр:

1

function mayak_category_no_link($no_link){

2

$gg_mk = '!<li class="cat-item (.*?) current-cat"><a (.*?)>(.*?)</a>!si';

3

$dd_mk = '<li class="cat-item \\1 current-cat">\\3';

4

return preg_replace($gg_mk, $dd_mk, $no_link );

5

}

6

add_filter('wp_list_categories', 'mayak_category_no_link');

Как убрать ссылку на саму себя в заголовке статьи

Некоторые шаблоны по непонятной причине содержат в файле single php запись о том, что заголовок является ссылкой. Вот как это выглядит:

1

<h2><a href="<?php the_get_permalink() ?>"><?php the_title(); ?></a></h2>

Или так:

1

<?php the_title( '<h1 class="entry-title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h1>' ); ?>

Или другие варианты. Это все та же циклическая ссылка, отправляющая пользователя на текущую страницу.

Устранить ошибку в этом случае просто: нужно лишь убрать атрибут ссылки из записи кода.

Как удалить циклические ссылки на сайте с помощью плагина

Самый популярный плагин для сайтов на WordPress — Remove Redundant Links. После его использования все циклические ссылки заменяются на тайтлы.

Как удалить циклические ссылки на сайте с помощью плагина

Плагин прост в установке. Сначала найдите на панели администратора вкладку «Плагины», затем кликните на «Добавить новый». Введите в поиске название плагина и нажмите «Ввод».

После вам будет предложено установить найденный элемент. Установка занимает меньше 10 минут. На последнем этапе вас попросят «Активировать плагин».

Данный инструмент срабатывает автоматически: циклические ссылки заменяются на текст с анкором You Are Here. Можно сказать, что неполадки устранены. Но можно еще поменять язык.

Чтобы это сделать, откройте файл remove-redundant-links.php. Данный элемент находится в папке с плагином wp-content/plugins. В найденном файле найдите текст You Are Here и замените его на свой. И не забывайте сохранять изменения.

Вносить корректировки в данный файл можно из встроенного редактора WordPress или с помощью обычного NotePad ++. Во втором случае надо обновить файлы через FTP или SSH.

Скачайте полезный документ по теме:
Чек-лист: Как добиваться своих целей в переговорах с клиентами

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

Облако тегов
Понравилась статья? Поделитесь:
Забрать гарантированный подарок
Полезные
материалы
для руководителей
Скачать 3,2 MB
Елена Койгородова
Елена Койгородова печатает ...