
Всем привет, дорогие друзья, сегодня я хотел бы с вами поговорим об еще одной фишке грамотной перелинковки. Эта фишка называется хлебные крошки.
Многие из вас наверняка видели уже такие штуки, многие реализовали такую штуку, кто плагином, кто кодом, не важно.
Но для начала, лирическое отступление, пройдемся по новостям.
В прошлый раз в блиц конкурсе победила Юлия, она уносит 100 рублей, Юлия, мне нужен ваш кошелек Вебмани или Яндекс.Деньги.
А также я бы очень хотел слышать победительницу конкурса на лучший фон для твиттера – тоже Юлия, – так от вас не дождался вашего кошелька, чтобы вы получили ваш приз!
Ну а мы возвращаемся к нашим баранам, а точнее к хлебным крошкам!
Все очень просто, это элемент, который помогает в навигации по вашему блогу, выглядит это как путь от главной страницы до текущей, где вы находитесь сейчас. Более логично было бы их называть навигационной цепочкой или цепочкой навигации.
Крошки называются хлебными в следствии аналогии с немецкой сказкой, где детки, не смогли найти дорогу домой, потому что вместо камешков бросали на землю крошки хлеба, а их склевали птицы.
Выглядит это примерно вот так:
Главная | Категория | Название статьи |
У меня в блоге я сделал вот так:

Для чего нужные такие хлебные крошки? Ну тут тоже все не сложно. Секрет их заключается как в SEO оптимизации, т.к. это отличная перелинковка, так и в удобстве для пользователей.
Особенно хлебные крошки важны для навигации интернет-магазинов и проектов, где большое количество разделов и подразделов. Вот например:
Главная >> Бытовая техника >> Телевизоры >> Жидко-кристаллические >> Samsung >> Телевизор Samsung UE22F5000AK |
Вот смотрит пользователь карточку товара – телевизора самсунг. И хочет посмотреть другие самсунги или вообще все бренды на жидких кристаллах, чтобы в главном меню не открывать все дерево подменю – ему достаточно будет кликнуть на нужный раздел в хлебных крошках! И все! Один клик отделяет пользователя от того что ему нужно – это удобно!
Что касается блогов – тут врядли будет большое количество подразделов, поэтому все ограничнивается дополнительной перелинковкой, хотя признаюсь – я иногда использую хлебные крошки для того, чтобы перейти в нужную категорию. Потому что краем глаза не могу найти основное меню (это конечно маразм, но и такие блоги тоже бывают).
Банально – плагином! Плагины для хлебных крошек есть разные. Самый распространенный – Breadcrumb NavXT – я уверен, он стоит у большинства из вас! Напишите в каментах, у кого какой плагин стоит для этих целей, давайте обсудим!
Чтобы он у вас заработал, нужно всего лишь пару кликов:
И о чудо! Решение нашлось! Теперь для вывода хлебных крошек я не использую плагины вообще! Я использую код. И вот как это делается.
Открываем файл functions.php и прописываем в него следующее:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 | /* Хлебные крошки для WordPress (breadcrumbs) * $sep - Pазделитель. * $term - Eсли заранее определен массив терминов то передаем его. get_the_terms( $post->ID, array('category','new_tax') ); По умолчанию, первый попавшийся термин для отдельных записей и если это страница термина. * $taxonomies - Таксономии, хлебные крошки для которых нужно показать (указываем только древовидные таксономии (как категорий)) array('category', 'new_tax'). По умолчанию, все публичные таксономии, включая category. */ function kama_breadcrumbs( $sep=' » ', $term=false, $taxonomies=false ){ global $post, $wp_query, $wp_post_types; // для локализации $l = array( 'home' => 'Главная' ,'paged' => 'Страница %s' ,'404' => 'Ошибка 404' ,'search' => 'Результаты поиска по зпросу - <b>%s</b>' ,'author' => 'Архив автора: <b>%s</b>' ,'year' => 'Архив за <b>%s</b> год' ,'month' => 'Архив за: <b>%s</b>' ,'day' => '' ,'attachment' => 'Медиа: %s' ,'tag' => 'Записи по метке: <b>%s</b>' ,'tax_tag' => '%s из "%s" по тегу: <b>%s</b>' ); $w1 = '<div xmlns:v="http://rdf.data-vocabulary.org/#">'; $w2 = '</div>'; $patt1 = '<span typeof="v:Breadcrumb"><a href="https://in4wp.ru/xlebnye-kroshki/" rel="v:url" property="v:title">'; $sep .= '</span>'; // закрываем span после разделителя! $patt = $patt1.'%s</a>'; if( $paged = $wp_query->query_vars['paged'] ){ $pg_patt = $patt1; $pg_end = '</a>'. $sep . sprintf($l['paged'], $paged); } if( is_front_page() ) return print $w1.($paged?sprintf($pg_patt, get_bloginfo('url')):'') . $l['home'] . $pg_end .$w2; elseif( is_404() ) $out = $l['404']; elseif( is_search() ){ $s = preg_replace('@<script@i', '<script>alert("запрос не верный!"); </script>', $GLOBALS['s']); $out = sprintf($l['search'], $s); } elseif( is_author() ){ $q_obj = &$wp_query->queried_object; $out = ($paged?sprintf( $pg_patt, get_author_posts_url($q_obj->ID, $q_obj->user_nicename) ):'') . sprintf($l['author'], $q_obj->display_name) . $pg_end; } elseif( is_year() || is_month() || is_day() ){ $y_url = get_year_link( $year=get_the_time('Y') ); $m_url = get_month_link( $year, get_the_time('m') ); $y_link = sprintf($patt, $y_url, $year); $m_link = sprintf($patt, $m_url, get_the_time('F')); if( is_year() ) $out = ($paged?sprintf($pg_patt, $y_url):'') . sprintf($l['year'], $year) . $pg_end; elseif( is_month() ) $out = $y_link . $sep . ($paged?sprintf($pg_patt, $m_url):'') . sprintf($l['month'], get_the_time('F')) . $pg_end; elseif( is_day() ) $out = $y_link . $sep . $m_link . $sep . get_the_time('l'); } // Страницы и древовидные типы записей elseif( $wp_post_types[$post->post_type]->hierarchical ){ $parent = $post->post_parent; $crumbs=array(); while($parent){ $page = &get_post($parent); $crumbs[] = sprintf($patt, get_permalink($page->ID), $page->post_title); $parent = $page->post_parent; } $crumbs = array_reverse($crumbs); foreach ($crumbs as $crumb) $out .= $crumb.$sep; $out = $out . $post->post_title; } else // Таксономии, вложения и не древовидные типы записей { // Определяем термины if(!$term){ if( is_singular() ){ if( !$taxonomies ){ $taxonomies = get_taxonomies( array('hierarchical'=>true, 'public'=>true) ); if( count($taxonomies)==1 ) $taxonomies = 'category'; } if( $term = get_the_terms( $post->post_parent?$post->post_parent:$post->ID, $taxonomies ) ) $term = array_shift($term); } else $term = &$wp_query->get_queried_object(); } if( !$term && !is_attachment() ) return print "Error: Taxonomy isn`t defined!"; $pg_term_start = ($paged && $term->term_id) ? sprintf( $pg_patt, get_term_link( (int)$term->term_id, $term->taxonomy ) ) : ''; if( is_attachment() ){ if(!$post->post_parent) $out = sprintf($l['attachment'], $post->post_title); else $out = crumbs_tax($term->term_id, $term->taxonomy, $sep, $patt) . sprintf($patt, get_permalink($post->post_parent), get_the_title($post->post_parent) ).$sep.$post->post_title; } elseif( is_single() ) $out = crumbs_tax($term->parent, $term->taxonomy, $sep, $patt) . sprintf($patt, get_term_link( (int)$term->term_id, $term->taxonomy ), $term->name). $sep.$post->post_title; // Метки, архивная страница типа записи, произвольные одноуровневые таксономии elseif( !is_taxonomy_hierarchical($term->taxonomy) ){ // метка if( is_tag() ) $out = $pg_term_start . sprintf($l['tag'], $term->name) . $pg_end; // архивная страница произвольного типа записи elseif( !$term->term_id ) $home_after = sprintf($patt, '/?post_type='. $term->name, $term->label). $pg_end; // таксономия else { $post_label = $wp_post_types[$post->post_type]->labels->name; $tax_label = $GLOBALS['wp_taxonomies'][$term->taxonomy]->labels->name; $out = $pg_term_start . sprintf($l['tax_tag'], $post_label, $tax_label, $term->name) . $pg_end; } }// Рубрики и таксономии else $out = crumbs_tax($term->parent, $term->taxonomy, $sep, $patt) . $pg_term_start . $term->name . $pg_end; } // ссылка на архивную страницу произвольно типа поста if( !empty($post->post_type) && $post->post_type!='post' && !is_page() && !is_attachment() && !$home_after ) $home_after = sprintf($patt, '/?post_type='. $post->post_type, $wp_post_types[$post->post_type]->labels->name ). $sep; $home = sprintf($patt, get_bloginfo('url'), $l['home'] ). $sep . $home_after; return print $w1. $home . $out .$w2; } function crumbs_tax($term_id, $tax, $sep, $patt){ $termlink = array(); while( (int)$term_id ){ $term2 = &get_term( $term_id, $tax ); $termlink[] = sprintf($patt, get_term_link( (int)$term2->term_id, $term2->taxonomy ), $term2->name). $sep; $term_id = (int)$term2->parent; } $termlinks = array_reverse($termlink); return implode('', $termlinks); } |
Ну вот, функция обработки готова. Теперь нам нужно вызвать эту функцию в нужном месте. Я вывожду хлебные крошки пока что только на страницах своих статей, а значит, я открываю файл single.php, у некоторых он может называться loop.php, Нахожу место
1 2 3 | <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <!-- begin post --> <div class="blogPost clearfix"> |
Насколько я понял – в комменариях этого кода написано “Начало поста”. Поэтому перед этим кодом я вставил следующий код:
1 | <?php kama_breadcrumbs(); ?> |
Ну и вот что у меня получилось – вы можете лицезреть прямо в начале этой статьи. Единственное, что я поменял – это стиль отображения, сделал чуть поменьше шрифт, чтобы не так в глаза бросался и отличался от основного текста. В общем, чего рассказывать, вот что я в стилях написал:
1 2 3 4 5 | .bread { font-size:14px; position:absolute; top:155px; } |
Ну вот в принципе и все. Кому понравилось – тот ставит лайк :).
Может быть кто-то подскажет более лучшее место для расположения хлебных крошек у меня в блоге?
Пишите, не стесняйтесь!
Всегда ваш, Василий Петрович!
]]>
Все привет! сегодня как только проснуля, принял душ и сразу сел за компьютер писать следующую статью из цикла о перелинковке. Вот так сразу, без раскачки. Обращаясь к своим читательницам, которые попросили помочь с составлением семантики, хочу сказать – “все в работе, не переживайте, скоро вышлю на почту результат”.
Итак, друзья, как я вчера и обещал, сегодня мы поговорим о том, какие написать про плагины для перелинковки. Кроме плагинов есть еще и другие методы перелинковки, их мы тоже коснемся, но обо всем по порядку!
Надо сказать, что все плагины были протестированы мной лично, все работают, все оптимизированы под новую версию WordPress, а на сегодня это версия 3.6.
1. Первый плагин, о котором стоит поговорить, это WordPress Related Posts.
Установка – стандартная (установил, включил). После этого можно будет перейти в настройки самого плагина и включить его в работу.

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

Кроме этого, вы сможете настроить вид этих ссылок на мобильных устройствах, категории, которые следует исключить из перелинковки, количество статей, на которые вы будете ссылаться, давность статей, на которые вы будете ссылаться и самое главное – подробная статистика показов и кликов.
С помощью всех этих данных вы сможете максимально корректно настроить вашу перелинковку, чтобы она была не только эффективна для SEO но и была эффективна для читателей, чтобы на них кликали и углублялись в ваш блог, тем самым улучшая ваши поведенческие факторы.
2. Второй плагин, о котором стоит поговорить – это Term Descriptions
Этот плагин достаточно прост в обращении и настройке. Установка такая же! Залил, Активировал.

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

Просто вносим список слов в базе и список ссылок, куда данные слова должны ссылаться. И все!
4. Дальше на очереди у нас уже знаменитый среди блоггеров Yet Another Related Posts Plugin.
Достаточно простой в использовании плагин. Установил, активировал и дело с концом. По своим параметрам чем-то напоминает первый плагин, о котором мы говорили. Настройки примерно те же.

Вы можете настраивать внешний вид отображаемого блога, это будет или список, или картинки, кому как больше нравится. Можно настраивать перелинковку как по похожести так и по тегам или рубрикам.
5. Наверное самый простой плагин для перелинковки – Simple tags.
А тут вообще все просто. Установили, активировали и в статьях ставите следующий шорткод.
[st_tag_cloud] |
И все, в этом месте будут выводится посты, к которым был применен тот же тег. Получается перелинковка статей по тегам. Конечно, это не идеал, но может кому-то и подойдет.

Здесь пока что есть два модуля “Позиции” и “Перелинковка”, т.е. вы можете поставить перелинковываться целевые статьи, а также постоянно снимать их позиции. Но о том, как настраивать этот скрипт, лучше поговорим позже, или лучше вообще ознакомьтесь со справкой этого сервиса. Я думаю там все расписано. Если же ничего не поможет – можете написать в тех поддержку, отвечают быстро, вообще ребята там молодцы!

А сейчас давайте поговорим о том, чем этот сервис меня так привлек. Во-первых, давайте разберемся как работают плагины. Как определяется, какие ссылки должны быть показаны в конце статьи? Так ли они будут релевантны? Ведь релевантность ссылок – фактор не маловажный!
В большинстве своем, плагины руководствуются следующими правилами:
- Если статьи находятся в одной категории, то они релевантны.
- Если статьи имеют одинаковые метки, то они релевантны.
Вот и все. Получается, что плагины отображают все подряд, случайным образом выбирая нужное количество ссылок, это число вы ставите обычно в настройках плагина.
Кроме этого, есть еще пару минусов в работе плагинов: ссылки всегда одинаковы, не имеют околоссылочного текста, повторяют заголовок статьи и весь блок представляет из себя одно синее пятно. Ну вот яркий пример такого блока:

Согласитесь, что если задуматься, выглядит он не очень. Кстати, не всегда заголовок статьи содержит ключевые слова, как вы знаете ключевые слова проставляются в МЕТА ТЕГЕ TITLE , в основном для этого используют плагин ALL IN THE ONE SEO PACK.
А вот как работает Smart Linker:
Сервис использует алгоритмы Яндекса (а именно под него я продвигаюсь, т.к. целевая аудитория – рунет). По этим алгоритмам сервис вычисляет максимально релевантные страницы. Представьте, релевантней просто не может быть! Ведь в блоке “Еще можно прочитать” или как там он у вас называется, будут показываться статьи, которые релевантны вашей по мнению самого Яндекса!!! На продвижении это сказывается моментально!
Все что вам нужно это заполнить вот такую форму:

Тут есть 4 поля:
- текст до. Тут надо писать текст, который будет до ссылки;
- запрос. Текст самой ссылки;
- текст после. Тут надо писать текст, который будет после ссылки;
- URL. Урл, куда будет вести анкор.
А вот как это выглядит у меня на блоге:

Может кто-то видел уже такой блок у меня на блоге? Уже по человечески, не так ли? Плюс ко всему, эти статьи, действительно рекомендует Яндекс. А значит они будут выше в выдаче, благодаря такой перелинковке. Плюс этот блок достаточно привлекателен, а зачем велик шанс, что на него буду кликать читатели блога и будут улучшаться поведенческие факторы. Ну, сказка прям.
А теперь о главном. Такая сказочная возможность, естественно не может быть бесплатна. Сам сервис-то бесплатен, вы можете опробовать его прямо сейчас, и настроить отображение блоков прямо сейчас. Но бесплатно вы сможете перелинковывать ваши статьи, основываясь только на категориях или тегах.
Чтобы перелинковка соответствовала релевантности по мнению яндекса, я отдаю 150 рублей в месяц. Я думаю это не большая сумма для того, чтобы ваши статьи стали максимально эффективны, как вы думаете?
Кстати, у меня совсем недавно стартовал конкурс, в котором в качестве одного из призов назначено пару месяцев бесплатного пользования этим замечательным скриптом перелинковки – Smart Linker. По-моему возможности есть у каждого.
Даже если вам не повезло в конкурсе, не расстраивайтесь. Вы можете использовать этот сервис бесплатно, сделать блок ссылок для людей, с картинками, с нужным релевантным текстом, но основываться на категориях. Главное ведь – все для читателя, правильно?
Фууххх… Блин, много еще хотел написать, но заставляю себя закончить прямо здесь, чтобы не делать портянку текста. Вы итак уже небось устали. Чтобы как-то вас взбодрить, я на сегодня придумал дать вам небольшое видео о том как парень девушке предложение делал!
Ну и расскажите, как вам плагины? Расскажите каким плагином для перелинковки пользуетесь вы? Ну и желательно описать почему именно так! Заранее благодарен, давайте выберем лучший плагин. И обсудим скрипт перелинковки заодно!
]]>
Всем привет, дорогие читатели in4wp.ru, сегодня наконец-то я вернулся в строй. Блин, новоселье чуть не выбило меня из колеи. Наготовили столько, что еще неделю можно будет не парится о готовке! Фух. Похудеешь тут с такими застольями.
А я напомню всем, что у меня недавно стартанул конкурс на тему “Зачем мне нужен блог?”. И я бы очень хотел увидеть побольше участников.
А в конце этой статьи вас ждет еще один небольшой сюрприз-задачка!!!
Сегодня я бы хотел начать цикл статьей, посвященный перелинковке. Мы обсудим с вами что такое перелинковка в этой статье. А в следующих обсудим плагины для перелинковки и методы перелинковки для блоггеров. Как лучше перелинковывать свои статьи, чтобы был оптимальный результат для поисковиков и для ваших читателей.
Итак, что такое перелинковка? Это связывание страниц с помощью ссылок. Когда одна ваша статья ссылается на другую статью ссылкой. Причем не важно анкорная эта ссылка или безанкорная. О важности анкорных и безанкорных ссылок поговорим позже.
Перелинковка нужна для повышения юзабилити в первую очередь. Чтобы когда пользователь, находясь на вашем блоге, читал вашу статью и встретив незнакомое определение, мог перейти на страницу с подробным описанием того о чем вы упомянули.
Но это конечно же не все. Также перелинковку используют для продвижения низкочастотных запросов и своего семантического ядра.
Вот например, я сейчас сошлюсь на статью про Favicon – это и есть перелинковка статей. После этой ссылки моя статья про фавиконы будет иметь бОльший вес чем раньше, а значит может быть выше в поисковой выдаче чем раньше.
Конечно, стоит понимать, что одной ссылкой тут не обойтись. Вообще продвижение это дело комплексное. Но мы сейчас не об этом.
Если отойти в сторону, то я бы еще упомянул о том, что перелинковку используют для поднятия PR одной или нескольких страниц сайта (чаще всего – главной). Я знаю примеры, когда сайт, который никогда не покупал нигде ссылки имел PR=4 , только за счет внутренней перелинковки. Только за счет того, что все внутренние страницы ссылались на главную. Конечно, там и страниц было несколько тысяч, но не в этом суть.
Но давайте вернемся к нам, к блоггерам. Как понятие перелинковки может быть нам полезно?
Для нас конечно же перелинковка будет полезна для продвижения целевых запросов. Например вот запрос “Как создать блог” – достаточно целевой запрос, не такли. Я хочу сказать, что этот запрос ищет моя целевая аудитория. Этот запрос у меня продвигается на главной странице. Поэтому чем больше ссылок я поставлю с внутренних страниц на свою главную с этим анкором – тем лучше. НО!!
В этом случае анкоры лучше делать разными, чтобы придать им естественности.
Также в тексте новой статьи лучше не ставить две одинаковые ссылки (т.е. лучше когда одна статья ссылается на другую статью один раз).
Еще нужно понимать, что ссылки с разных статей будут различны по эффективности. Поэтому чтобы не заморачиваться с этим (с расчетом эффективности) – мы, блоггеры, зачастую берем банально количеством.

Некоторые из вас уже догадались что для того чтобы организовать грамотную перелинковку блога – нужно составить какое-никакое, а семантическое ядро. Чтобы знать какая статья на какую должна ссылаться, чтобы в итоге нужные статьи вышли в ТОП.
(Лариса – еще один повод для составления семантики! :))
Ну, понятие перелинковки я раскрыл. Не хочется писать длинную портянку, что не сильно утомлять читателя. Да, эта тема, возможна заезжена, но я все-таки посчитал необходимым иметь подобную статью у себя в блоге. Чтобы в случае чего было куда направить читателя. Дескать, не знаешь что делать? Иди читай! Обещаю, следующая статья будет более интересная.
И под конец, чтобы вас развеселить после нудного описания, вот вам задачка: в одной из своих статей я писал о своем любимом числе. Кто первый в комментариях напишет что это за число и почему оно такое любимое – получит 100 рублей! По-моему я даже выделял эту фразу в статье. Ну, на этом все. Помним, что сразу за этой будут следующие статьи на эту же тему только более детально описанные.
С уважением, Василий Петрович!
]]>