Хлебные крошки по феншую

Чтобы сайт был еще удобнее можно воспользоваться отличным функционалом поисковиков — rich snippets. Если кратко то под словом snippets поисковик подразумевает пару строк текста которые будут показаны в поисковой выдаче под текстом сайта. Как по мне то это удобно, красиво и поможет пользователю.

Сейчас напишу как правильно вывести разметку хлебных крошек в drupal.

Примечание: Такой формат оформления пока находится на стадии эксперимента и может изменится в будущем.

/**
 * Implements hook_menu_breadcrumb_alter().
 */
function THEME_menu_breadcrumb_alter(&$active_trail, $item) {
  foreach ($active_trail as &$trail) {
    $trail['title'] = '<span itemprop="title">' . $trail['title'] . '</span>';
    $trail['localized_options']['attributes']['itemprop'] = 'url';
    $trail['localized_options']['html'] = TRUE;
  }
}

/**
 * Show breadcrumb item recursive.
 */
function _show_breadcrumb_item(&$breadcumbs) {
  static $i = 0;
  if (!empty($breadcumbs)) {
    $child = ($i) ? ' itemprop="child"' : '';
    $i++;
    $output = '<div' . $child . ' itemscope itemtype="http://data-vocabulary.org/Breadcrumb">';
    $output .= array_shift($breadcumbs);
    $output .= _show_breadcrumb_item($breadcumbs);
    $output .= '</div>';
    return $output;
  }
}

/**
 * Return a themed breadcrumb trail.
 *
 * @param $breadcrumb
 *   An array containing the breadcrumb links.
 *
 * @return string containing the breadcrumb output.
 */
function THEME_breadcrumb($variables) {
  $breadcrumb = $variables['breadcrumb'];

  if (!empty($breadcrumb)) {
    $breadcrumb[] = '<span itemprop="title">' . drupal_get_title() . '</span>';
    $output = '<div id="breadcrumbs">' . _show_breadcrumb_item($breadcrumb) . '</div>';
    return $output;
  }
}

Разметка microdata содержит не рекомендованные к использованию атрибуты, раньше можно было сделать и полностью валидной разметкой называемой microformats.

Больше информации о rich snippets доступно на страницах руководства google — https://support.google.com/webmasters/topic/1088472?hl=ru&ref_topic=21997

Хлебные крошки по феншую: 2 комментария

    1. zviryatko Автор записи

      Ну, это да, так тоже можно, наверное, как-то сразу в голову не пришло взять и поискать модуль, все ручками хочется 🙂

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

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