Как поставить на блог хлебные крошки правильно

Здравствуйте уважаемые читатели и читательницы!

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

Возможно кто-то, не мой читатель, а посетитель из интернета, который искал запрос по хлебным крошкам, хлебные крошки WordPress, продвижение хлебными крошками,  попал на эту страницу и хочет задать мне вопрос: «Алексей, почему вы хотите поднять посещаемость своих читателей, у вас что, конкурентов мало?»

Дело в том, что один из разделов моего блога — продвижение сайтов. Поэтому моя задача сделать свою работу. Ну и естественно, этой статьей, я подниму рейтинг своего блога. Потому что запрос «Хлебные крошки» или продвижение хлебными крошками в интернете очень популярен на сегодняшний день.

Тут все понятно? Тогда поехали дальше, но для начала, я хочу сделать для новичков в блоггинге не большое вступление, которое расскажет, зачем вообще нужны хлебные крошки и что это за такие крошки, которыми можно поднять посещаемость веб-ресурса.

Что такое хлебные крошки на блоге и зачем они нужны

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

  1. Что такое хлебные крошки и зачем они нужны
  2. Как их правильно вставить в шаблон своего блога на движке WordPress
  3. Настройка хлебных крошек для правильного или желаемого отображения

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

Вы знаете об одной самой главной задаче блоггера? Правильно, блог должен быть удобным для посетителя, но кроме этого, он должен нравиться поисковым роботам. Если вы новичок и не знаете, как поисковые роботы работают, как им можно понравиться, то прочитайте статью «Поведенческие факторы», но расскажу об одном факторе, он объяснит, что нужно сделать для поисковика: чтобы ему понравиться.

Вам необходимо знать: на сегодняшний день, поисковые алгоритмы работают 100% на запросы пользователей, то есть, если у вас сайт отвечает на запрос пользователя, то ваша статья поднимается в поисковой выдаче или у нее растет рейтинг, возможно поднятие траста. Но робот, это не человек и он не может точно определить, понравился посетителю сайт, помог он ему или нет. Поэтому поисковые системы наблюдают за сайтами (всеми). Если пользователь пробыл на блоге достаточное время для прочтения текста, значит, статья ему понравилась, а если он не пошел искать дальше информацию в интернете, например по запросу «Хлебные крошки», то значит, статья помогла разобраться в сложившейся ситуации.

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

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

Правильные хлебные крошки

Кроме того, хлебные крошки могут выглядеть не много иначе, типа:

Главная страница -> Рубрика — > Название статьи

Как видите, добавилось название статьи, я тоже могу так сделать, но незачем! Я уже тестировал и тест показал, что название статьи в хлебных крошках не имеет никакого отношения к удобству пользователя и естественно повышения трафика. Если вам нравиться, когда после рубрики идет название, то оставите его, ведь еще в начале, я говорил, дам код настраиваемых хлебных крошек.

Код хлебных крошек и куда их вставить, чтобы хлебные крошки были сделаны по последним SEO правилам

  • Первое, куда вставлять хлебные крошки
  • Второе, как их настроить

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

Кстати, кто хочет пропустить статью, которая поднимет трафик? Если не вы, то подписывайтесь на обновления блога прямо сейчас, здесь. Сделали это? Тогда даю код для встраивания…

Встраиваем хлебные крошки на WordPress блог

Как поставить на блог хлебные крошки

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

Вы пользуетесь FTP соединением или заходите, через админ-панель? Напишу для обоих вариантов!

Сначала FTP: заходите в корень своего блога по адресу:

Wp-content/themes/название шаблона

Теперь для браузеров, следуйте:

Внешний вид/редактор

Дальше все будет одинаково для всех. Открывайте single.php или «одна запись». Здесь нам нужно найти тег H1, если у вас такого нет, значит, у вас неправильно настроены заголовки, а так дела дальше не пойдут, потому что хлебные крошки под тегом H2 или под каким другим, это SEO ошибка. Хотите исправить сложившуюся ситуацию? Тогда читайте «Как настроить заголовки правильно».

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

Нашли тег H1, делайте отступ (ENTER), теперь копируйте код ниже и вставляйте:

<div class="entry-info"><em class="fa fa-clock-o"></em>><?php the_time(' Y-m-d'); ?>&nbsp; &nbsp;&nbsp; &nbsp;<em class="fa fa-male"></em><?php the_author_posts_link(); ?>
&nbsp; &nbsp;&nbsp;<em class="fa fa-compass"></em> &nbsp;<?php if (function_exists('dimox_breadcrumbs')) dimox_breadcrumbs(); ?></div>


Обязательно сохраняйте изменения. Проверять еще рано! Я забыл сказать: помимо хлебных крошек, у вас появятся дата публикации поста и автор. Не думайте, что я дал вам лишний код! Очень важно, когда в начале статьи, кроме названия (name) присутствуют дата публикации и имя автора. Эти данные не только поднимут ваши статьи в ТОП, они будут отображаться в сниппете, это увеличит доверие пользователей и число переходов.

Нам необходимо поставить функцию на свой шаблон, с помощью нее мы сможем настроить хлебные крошки, как захотим. Все там же, отрывайте function.php или «функции темы», ставьте следующее в конце строк, перед тегом ?>:

 // подключаем хлебные крошки от dimox www.advdk.com
 function dimox_breadcrumbs() {
  $text['home']     = 'Главная страница'; // текст ссылки "Главная"
  $text['category'] = 'Архив рубрики "%s"'; // текст рубрики
  $text['search']   = 'Результаты поиска по запросу "%s"'; // текст с результатами поиска
  $text['tag']      = 'Записи с меткой "%s"'; // текст тега
  $text['author']   = 'Статьи автора %s'; // текст автора
  $text['404']      = 'Ошибка 404'; // текст страницы 404
  $show_current   = 0; // 1 - показывать название текущей статьи/страницы/рубрики, 0 - не показывать
  $show_on_home   = 1; // 1 - показывать "хлебные крошки" на главной, 0 - не показывать
  $show_home_link = 1; // 1 - показывать ссылку "Главная", 0 - не показывать
  $show_title     = 1; // 1 - показывать подсказку (title) для ссылок, 0 - не показывать
  $delimiter      = ' &raquo; '; // разделить между "крошками"
  $before         = ''; // тег перед текущей "крошкой"
  $after          = ''; // тег после текущей "крошки"
  /* === КОНЕЦ ОПЦИЙ === */
  global $post;
  $home_link    = home_url('/');
  $link_before  = '<span typeof="v:Breadcrumb">';
  $link_after   = '</span>';
  $link_attr    = ' rel="v:url" property="v:title"';
  $link         = $link_before . '<a' . $link_attr . ' href="%1$s">%2$s</a>' . $link_after;
  $parent_id    = $parent_id_2 = $post->post_parent;
  $frontpage_id = get_option('page_on_front');
  if (is_home() || is_front_page()) {
    if ($show_on_home == 1) echo '<span class="breadcrumbs"><a href="' . $home_link . '">' . $text['home'] . '</a></span>';
  } else {
    echo '<span class="breadcrumbs" xmlns:v="https://rdf.data-vocabulary.org/#">';
    if ($show_home_link == 1) {
      echo sprintf($link, $home_link, $text['home']);
      if ($frontpage_id == 0 || $parent_id != $frontpage_id) echo $delimiter;
    }
    if ( is_category() ) {
      $this_cat = get_category(get_query_var('cat'), false);
      if ($this_cat->parent != 0) {
        $cats = get_category_parents($this_cat->parent, TRUE, $delimiter);
        if ($show_current == 0) $cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
        $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
        $cats = str_replace('</a>', '</a>' . $link_after, $cats);
        if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
        echo $cats;
      }
      if ($show_current == 1) echo $before . sprintf($text['category'], single_cat_title('', false)) . $after;
    } elseif ( is_search() ) {
      echo $before . sprintf($text['search'], get_search_query()) . $after;
    } elseif ( is_day() ) {
      echo sprintf($link, get_year_link(get_the_time('Y')), get_the_time('Y')) . $delimiter;
      echo sprintf($link, get_month_link(get_the_time('Y'),get_the_time('m')), get_the_time('F')) . $delimiter;
      echo $before . get_the_time('d') . $after;
    } elseif ( is_month() ) {
      echo sprintf($link, get_year_link(get_the_time('Y')), get_the_time('Y')) . $delimiter;
      echo $before . get_the_time('F') . $after;
    } elseif ( is_year() ) {
      echo $before . get_the_time('Y') . $after;
    } elseif ( is_single() && !is_attachment() ) {
      if ( get_post_type() != 'post' ) {
        $post_type = get_post_type_object(get_post_type());
        $slug = $post_type->rewrite;
        printf($link, $home_link . '/' . $slug['slug'] . '/', $post_type->labels->singular_name);
        if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;
      } else {
        $cat = get_the_category(); $cat = $cat[0];
        $cats = get_category_parents($cat, TRUE, $delimiter);
        if ($show_current == 0) $cats = preg_replace("#^(.+)$delimiter$#", "$1", $cats);
        $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
        $cats = str_replace('</a>', '</a>' . $link_after, $cats);
        if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
        echo $cats;
        if ($show_current == 1) echo $before . get_the_title() . $after;
      }
    } elseif ( !is_single() && !is_page() && get_post_type() != 'post' && !is_404() ) {
      $post_type = get_post_type_object(get_post_type());
      echo $before . $post_type->labels->singular_name . $after;
    } elseif ( is_attachment() ) {
      $parent = get_post($parent_id);
      $cat = get_the_category($parent->ID); $cat = $cat[0];
      $cats = get_category_parents($cat, TRUE, $delimiter);
      $cats = str_replace('<a', $link_before . '<a' . $link_attr, $cats);
      $cats = str_replace('</a>', '</a>' . $link_after, $cats);
      if ($show_title == 0) $cats = preg_replace('/ title="(.*?)"/', '', $cats);
      echo $cats;
      printf($link, get_permalink($parent), $parent->post_title);
      if ($show_current == 1) echo $delimiter . $before . get_the_title() . $after;
    } elseif ( is_page() && !$parent_id ) {
      if ($show_current == 1) echo $before . get_the_title() . $after;
    } elseif ( is_page() && $parent_id ) {
      if ($parent_id != $frontpage_id) {
        $breadcrumbs = array();
        while ($parent_id) {
          $page = get_page($parent_id);
          if ($parent_id != $frontpage_id) {
            $breadcrumbs[] = sprintf($link, get_permalink($page->ID), get_the_title($page->ID));
          }
          $parent_id = $page->post_parent;
        }
        $breadcrumbs = array_reverse($breadcrumbs);
        for ($i = 0; $i < count($breadcrumbs); $i++) {
          echo $breadcrumbs[$i];
          if ($i != count($breadcrumbs)-1) echo $delimiter;
        }
      }
      if ($show_current == 1) {
        if ($show_home_link == 1 || ($parent_id_2 != 0 && $parent_id_2 != $frontpage_id)) echo $delimiter;
        echo $before . get_the_title() . $after;
      }
    } elseif ( is_tag() ) {
      echo $before . sprintf($text['tag'], single_tag_title('', false)) . $after;
    } elseif ( is_author() ) {
      global $author;
      $userdata = get_userdata($author);
      echo $before . sprintf($text['author'], $userdata->display_name) . $after;
    } elseif ( is_404() ) {
      echo $before . $text['404'] . $after;
    }
    if ( get_query_var('paged') ) {
      if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ' (';
      echo __('Page') . ' ' . get_query_var('paged');
      if ( is_category() || is_day() || is_month() || is_year() || is_search() || is_tag() || is_author() ) echo ')';
    }
    echo '</span><!-- .breadcrumbs -->';
  }
} // end dimox_breadcrumbs()


Тоже сохраняйте изменения. Оранжевым, я написал, что можно сделать с функцией, а точнее с ее настройками. Делайте, «как душа пожелает». Мою точку зрения вы знаете, а точнее видите: мне не нравится название в хлебных крошках. Кроме того, можно переоптимизировать статью. Если поисковыми роботами будет замечена переолптимизация, то там хоть нравься пользователям, хоть нет, статья не станет в ТОП.

Чтобы все красиво отображалось, добавляйте в файл style.css или «стили» (в конец):

.entry-info{font-size:13px;line-height:20px;text-align:left;color:#444;padding:10px 0 10px 0;border-top:1px solid #eaeaea;border-bottom:1px solid #eaeaea;margin-bottom:40px;font-family:'Roboto Condensed',sans-serif;font-weight:500}
.entry-info-bottom{font-size:13px;line-height:20px;text-align:left;color:#444;padding:10px 0 10px 0;border-top:1px solid #eaeaea;border-bottom:1px solid #eaeaea;margin:20px 0 0 0;font-family:'Roboto Condensed',sans-serif;font-weight:500}
.entry-info a,.entry-info-bottom a{text-decoration:none;color:#444}
.entry-info a:hover,.entry-info-bottom a:hover{text-decoration:underline}


На этом у меня все. Хлебные крошки теперь стоят у вас на WordPress блоге, ну а я буду обдумывать следующую статью, которая поднимет посещаемость, естественно с этой. Если забыли подписаться на обновления блога, то сделайте это здесь. До встречи!

С уважением, Алексей Кобзарев

17 комментариев

Ваш комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *