Home News

Как сделать "хлебные крошки" без плагина и с плагином на Wordpress

01.09.2018

Привет всем читателям блога. Я с большим желанием хочу написать пост, тема которого посвящена элементу "хлебные крошки".

"Хлебные крошки" (навигационная цепочка)  предназначены для навигации веб-сайта. Часто веб-мастера используют "хлебные крошки" для сайтов со сложной структурой.

Вот так будут выглядеть ваши "хлебные крошки" на блоге:

Главная страница   >  Рубрика  Категория   >  Заголовок поста .

или вот так:

Главная страница  >  Категория  >  Заголовок поста .

Вот пример  "хлебных крошек" , рисунок снизу.

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

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

Откройте админ WordPress файл  functions.php  ( админ WordPress > Внешний вид > Редактор  > functions.php ) и впишите код между символами  <?php   ?> . Пример, как вставлять код  <?php вот здесь будет код "хлебных крошек" ?>  впишите код, который находится снизу.

function dimox_breadcrumbs() { $showOnHome = 0; // 1 - показывать "хлебные крошки" на главной странице, 0 - не показывать $delimiter = '&raquo;'; // разделить между "крошками" $home = 'Главная'; // текст ссылка "Главная" $showCurrent = 1; // 1 - показывать название текущей статьи/страницы, 0 - не показывать $before = '<span>'; // тег перед текущей "крошкой" $after = '</span>'; // тег после текущей "крошки" global $post; $homeLink = get_bloginfo('url'); if (is_home() || is_front_page()) { if ($showOnHome == 1) echo '<div id="crumbs"><a href="' . $homeLink . '">' . $home . '</a></div>'; } else { echo '<div id="crumbs"><a href="' . $homeLink . '">' . $home . '</a> ' . $delimiter . ' '; if ( is_category() ) { $thisCat = get_category(get_query_var('cat'), false); if ($thisCat->parent != 0) echo get_category_parents($thisCat->parent, TRUE, ' ' . $delimiter . ' '); echo $before . 'Архив рубрики "' . single_cat_title('', false) . '"' . $after; } elseif ( is_search() ) { echo $before . 'Результаты поиска по запросу "' . get_search_query() . '"' . $after; } elseif ( is_day() ) { echo '<a href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $delimiter . ' '; echo '<a href="' . get_month_link(get_the_time('Y'),get_the_time('m')) . '">' . get_the_time('F') . '</a> ' . $delimiter . ' '; echo $before . get_the_time('d') . $after; } elseif ( is_month() ) { echo '<a href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a> ' . $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; echo '<a href="' . $homeLink . '/' . $slug['slug'] . '/">' . $post_type->labels->singular_name . '</a>'; if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after; } else { $cat = get_the_category(); $cat = $cat[0]; $cats = get_category_parents($cat, TRUE, ' ' . $delimiter . ' '); if ($showCurrent == 0) $cats = preg_replace("#^(.+)\s$delimiter\s$#", "$1", $cats); echo $cats; if ($showCurrent == 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($post->post_parent); $cat = get_the_category($parent->ID); $cat = $cat[0]; echo get_category_parents($cat, TRUE, ' ' . $delimiter . ' '); echo '<a href="' . get_permalink($parent) . '">' . $parent->post_title . '</a>'; if ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after; } elseif ( is_page() && !$post->post_parent ) { if ($showCurrent == 1) echo $before . get_the_title() . $after; } elseif ( is_page() && $post->post_parent ) { $parent_id = $post->post_parent; $breadcrumbs = array(); while ($parent_id) { $page = get_page($parent_id); $breadcrumbs[] = '<a href="' . get_permalink($page->ID) . '">' . get_the_title($page->ID) . '</a>'; $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 ($showCurrent == 1) echo ' ' . $delimiter . ' ' . $before . get_the_title() . $after; } elseif ( is_tag() ) { echo $before . 'Записи с тегом "' . single_tag_title('', false) . '"' . $after; } elseif ( is_author() ) { global $author; $userdata = get_userdata($author); echo $before . 'Статьи автора ' . $userdata->display_name . $after; } elseif ( is_404() ) { echo $before . 'Error 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 '</div>'; } } // end dimox_breadcrumbs()

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

function dimox_breadcrumbs() { $showOnHome = 0; // 1 - показывать "хлебные крошки" на главной странице, 0 - не показывать $delimiter = '&raquo;'; // разделить между "крошками" $home = 'Главная'; // текст ссылка "Главная" $showCurrent = 1; // 1 - показывать название текущей статьи/страницы, 0 - не показывать $before = '<span>'; // тег перед текущей "крошкой" $after = '</span>'; // тег после текущей "крошки"

Сохраните файл  functions.php.

Теперь откройте файлы  single.phppage.phpcategory.php  и  archive.php  и вставьте следующий код в то место файла, где вы хотите видеть "хлебные крошки".

<?php if (function_exists('dimox_breadcrumbs')) dimox_breadcrumbs(); ?>

Сохраните ваши файлы  single.phppage.phpcategory.php  и  archive.php

Для красивого оформления "хлебных крошек" пропишите стили в файле CSS  к   #crumbs  и  .current

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

Самый быстрый путь к установлению "хлебных крошек" - это установка плагина Breadcrumb NavXT

скачать плагин можно здесь:    wordpress.org/extend/plugins/breadcrumb-navxt/

Чтобы установить плагин, зайдите в  админ WordPress  >  ПлагиныДобавить новыйЗагрузить , находим плагин Breadcrumb NavXT и жмем кнопку установить. Активируем плагин.

После установки плагина Breadcrumb NavXT, выводим "хлебные крошки" на страницы сайта. Вписываем в файлы single.phppage.phpcategory.php , archive.php следующий код:

<div id="breadcrumb_navx"> <?php if(function_exists('bcn_display')) { bcn_display(); } ?> </div><!-- #breadcrumb_navx -->

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

Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓

Последние новости категории:

Похожие статьи

Популярные статьи:

Добавить комментарий

Метки: seo-оптимизация , wordpress , эффекты для сайта

rss