Home / SEO / Как сделать микроразметку сайта или блога на WordPress
Бесплатная накрутка ВКонтакте

Как сделать микроразметку сайта или блога на WordPress

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

как сделать микроразметку

Внимание. С декабря 2015 года, Google расширил требуемые правила микроразметки. Информация на этой странице актуальна только для Яндекс.

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

Итак, чтобы внедрить микроразметку Schema.org, нам в первую очередь нужно проверить есть ли у нас микроразметка. Сделать это можно в Яндекс Вебмастере или в вебмастере Google. Но я рекомендую проверять именно через Яндекс, потому что гугл покажет что все отлично, если у вас установлен любой другой формат микроразметки, а нас интересует именно Schema.org. проверить микроразметку Для главной страницы должна присутствовать разметка анонсов постов, если выводятся последние записи, категории и дата анонсов, а так же изображения. Вот какой результат показал только что созданный мною сайт: сайт без разметки Как видите, есть лишь описание последней статьи, выводимое плагином All In One Seo Pack, и немало других ошибок. Поэтому я буду делать микроразметку Schema.org с нуля. В первую очередь отключите возможность SEO плагину делать микроразметку Shema. В плагине All In One Seo Pack эту возможность можно отключить, просто убрав галочку в SEO настройках. SEO настройки отключаем shema По сути микроразметка это просто подстановка необходимых правил к определенным кускам кода. Этой подстановкой мы говорим поисковым системам, что означает тот или иной кусок кода и его содержимое. Для блога должны присутствовать следующие классы:

  • Основа главной страницы — itemscope itemtype=”http://schema.org/BlogPosting”
  • Основа записи блога — itemscope itemtype=”http://schema.org/Article”
  • Основа комментариев — itemprop=”comment” itemscope itemtype=”http://schema.org/Comment”
  • Название статьи — itemprop=”name”
  • Описание статьи — itemprop=”description”
  • Тело статьи — itemprop=”articleBody”
  • Рубрика — itemprop=”articleSection”
  • Дата публикации — itemprop=”datePublished”
  • Автор — itemprop=”author”
  • Автор комментария — itemprop=”creator”
  • Текст комментария — itemprop=”text”
  • Изображения — itemprop=”image”

Микроразметка записей блога

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

itemscope itemtype=”http://schema.org/Article”

Просто ищем код, отвечающий за вывод всего текста страницы и в его класс вставляем вышеуказанное правило. Получится примерно так: Article Теперь нужно разметить название статьи. Как я уже заметил выше, название размечается правилом itemprop=”name”. Ищем кусочек кода с упоминанием title и в его класс вставляем правило. Выглядеть это будет так: name Теперь размечаем текст статьи при помощи правила itemprop=”articleBody”, вставив его в класс отвечающий за вывод статьи. Говоря простым языком просто ищем такой код <?php the_content(); ?> и в его класс вставляем правило. Выглядеть это будет так: articleBody После этого нужно разметить рубрики при помощи правила itemprop=”articleSection”. У меня в коде для слова «Рубрика» и ссылки с названием самой рубрики был прописан один класс, поэтому я ссылку взял в дополнительный тег < span > и внутрь него вставил правило articleSection. Если сделаете правильно, у вас должно получиться вот так:

микроразметка рубрик

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

Микроразметка даты публикации в WordPress

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

Год-месяц-число (2015-07-10)

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

дата публикации

Можно было изменить формат, подправить стили или сделать в этом случае микроразметку даты через файл function.php, но я не силен в PHP, а возиться с изменением стилей не особо хочется. Я решил просто удалить этот блок, а дату вывести в виде обычной строчки при помощи вот этого куска кода:

<span class=”date”>Дата: <span itemprop=”datePublished”><?php the_time(‘Y-m-d’); ?></span></span>

И соответственно в файл style.css прописал стили для класса date. В итоге стало вот так в коде:

дата публикации в коде
КЛИКАБЕЛЬНО

И на странице:

дата публикации новая
КЛИКАБЕЛЬНО

Микроразметка автора статьи

Микроразметка schema для автора статьи выводится при помощи правила itemprop=”author”. Снова ищем код выводящий автора статьи <?php the_post(); the_author(); ?> и заключаем его в тег < span > с правилом микроразметки. Должно выглядить так:

код микроразметки автора
КЛИКАБЕЛЬНО

Ух! На этом микроразметка страницы поста закончена. Проверяем в валидаторе и видим следующее:

микроразметка записи блога
КЛИКАБЕЛЬНО

Микроразметка комментариев

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

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

Возможно вас заинтересует:  Представляю вам свою книгу "Азбука SEO"

Перед внедрением микроразметки комментариев, проверьте не присутствует ли уже в шаблоне какой-то другой тип микроразметки. В моем случае оказалось, что в шаблоне уже есть микроразметка комментариев vcard. Но этот тип микроразметки не поддерживается Яндексом, поэтому его нужно удалить.

микроразметка vcard
КЛИКАБЕЛЬНО

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

itemprop=”comment” itemscope itemtype=”http://schema.org/Comment”

Чаще всего микроразметка комментариев протисходит в файле comments.php или function.php. Ищем блок или начало функции, отвечающиую за вывод комментариев и подключаем вышеуказанное правило. Вот пример как это подключено в моем случае:

функция вывода комментариев
КЛИКАБЕЛЬНО

Теперь необходимо разметить автора комментария, дату публикации и сам комментарий. Начнем с автора. Автор комментария размечается правилом itemprop=”creator”. Просто ищем в коде функцию, выводящую автора комментария и вставляем данное правило. Должно получится вот так:

микроразметка комментариев
КЛИКАБЕЛЬНО

Теперь размечаем дату публикации комментария. Дата комментария должна быть в формате ISO 8601. То есть точно так же, как и при выводе даты публикации статьи. Здесь опять же возникла небольшая проблема с выбранным мной шаблоном.

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

echo ‘<span class=”date_link” >’;                                                comment_date(‘j ‘);                                                rus_month2();                                                comment_date(‘, Y в g:i |’);                                                echo ‘</span>’;

Я поменял формат вывода даты на ISO 8601, и вставил правило микроразметки даты публикации schema org- itemprop=”datePublished”. В результате все стало выводиться как надо. Вот пример кода, как стало:

дата публикации комментария
КЛИКАБЕЛЬНО

Теперь нужно разметить сам комментарий. Делается это при помощи правила itemprop=”text”. Ничего нового, так же ищем функцию вывода текста комментария, и вставляем необходимое правило. Вот пример того, что должно получиться: текст комментария Теперь проверяем результат в валидаторе Яндекса:

проверка микроразметки комментария
КЛИКАБЕЛЬНО

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

Автоматическая микроразметка комментариев WordPress

Недавно я случайно попал на блог Виталия Кириллова. Он в своей статье предлагает при помощи PHP убить сразу двух зайцев — исправить ошибку с неподдерживаемым Яндексом форматом Vcard и автоматически разметить комментарии. Я проверил на тестовом блоге, все прекрасно работает.

Микроразметка картинок

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

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

микроразметка изображений в сниппете
КЛИКАБЕЛЬНО

Мне стало интересно, как это изображение появилось в сниппете выдачи. Открыв исходный код страницы, я увидел, что изображению присвоено свойство itemprop=”image”, это свойство микроразметки schema org для изображений.

Так как я очень хорошо знаком с блогом advdk.com, я написал его автору Алексею Кобзареву на почту с вопросом, как он сделал микроразметку изображений. Алексей дал мне ссылку на пост своего блога, где рассказывал о внедрении микроразметки на блог. Почитать этот пост можете здесь. На своем блоге Алексей опубликовал PHP код, который автоматически делает микроразметку всех изображений блога на WordPress, подставляя правило itemprop=”image” к каждому изображению записи. Достаточно вставить PHP код в файл functions.php в начало сразу после открывающего тега <?php. А вот и сам код:

// Микроразметка картинок 
function mayak_image_marking($content) {
global $post;
$pattern = "<img";
$replacement = '<img itemprop="image"';
$content = str_replace($pattern, $replacement, $content);
return $content;
}
add_filter('the_content', 'mayak_image_marking');

После того как я вставил этот код, все картинки автоматически разметились.

Микроразметка хлебных крошек

Я уже писал про хлебные крошки на своем блоге, но от той навигационной цепочки была польза только в виде визуального восприятия, где находится пользователь в данный момент. Если же рассматривать с точки зрения SEO, пользы от них особой не было. Я долго искал способ внедрения хлебных крошек, чтобы навигационная цепочка красиво отображалась в сниппете. И наконец нашел на одном из блогов. Сейчас вот так выглядят мои записи в поисковой выдаче Google: сниппет с хлебными крошками Способ довольно простой, просто повторите все действия, что я сейчас опишу.

1. Откройте файл functions.php сразу после открывающегося тега <?php или перед закрывающимся вставьте вот эту функцию:

// подключаем хлебные крошки
 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="http://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()

Обращаю ваше внимание, что хлебные крошки должны располагаться под заголовком H1 если они стоят перед заголовком, это конечно не критично, но неправильно. Заголовок это главное, на что обращают в первую очередь поисковые роботы. Если у вас вообще не выводится заголовок H1 (такое бывает в некоторых бесплатных шаблонах WordPress), а вместо него присутствует заголовок H2, вам нужно это срочно исправлять! По логике вещей на странице не может быть заголовок второго уровня при отсутствии заголовка H1. Я об этом не раз упоминал и подробно описал в статье – SEO оптимизация статей блога.

Возможно вас заинтересует:  Как узнать ключевые слова и фразы по которым ваш конкурент в ТОПе?

2. Теперь в то место где требуется вывести навигационную цепочку вставьте вот этот код:

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

3. После вставки хлебных крошек в шаблон темы, нужно настроить стили для хлебных крошек. Для этого откройте файл style.css и в самый конец вставьте вот этот код:

.entry-meta { font-size: 12px; width: 100%; height: auto; margin: 11px -1px 11px; font: normal 11px Arial, sans-serif; color: #000; text-decoration: none }

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

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

Все анонсы статей на главной странице блога размечаются при помощи правила BlogPosting, а затем уже для анонсов размечаются названия и описания. Чаще всего за главную страницу отвечает файл index.php но может быть и другой. На пример, в теме моего блога за вывод главной страницы отвечает файл content.php. Если у вас шаблон Xmarkup, то смело открывайте файл index.php и в коде ищите класс, отвечающий за вывод всех анонсов записей на главной странице. В этот класс нужно вставить свойство:

itemscope itemtype=”http://schema.org/BlogPosting”

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

микроразметка главной страницы
КЛИКАБЕЛЬНО

Теперь нам нужно разметить название статей, для этого ищем в коде упоминание <?php the_title(); ?> После того как нашли, заключаем его в тег span со значением itemprop=”name”. Должно получиться примерно так:

микроразметка названия анонса
КЛИКАБЕЛЬНО

Следующий шаг это описание статей выводимых анонсом на главной странице. Размечаются описания статей на главной при помощи свойства itemprop=”description” Просто ищем в файле код <?php the_content(»); ?> и перед ним в spanвставляем значение itemprop=”description” Должно получиться примерно так:

ммикроразметка описания
КЛИКАБЕЛЬНО

Теперь необходимо сделать разметку автора статьи. Она делается при помощи свойства itemprop=”author”. Просто ищите в файле код, отвечающий за вывод автора. Чаще всего это <?php the_author(); ?> и придайте ему свойство. Должно получиться примерно так:

микроразметка автора
КЛИКАБЕЛЬНО

Микроразметка категорий для главной страницы отмечается свойством itemprop=”articleSection”. Ищем в код отвечающий за вывод категории. Называться может по разному, но всегда следует за словами «Рубрика», «Postedin» или другими в зависимости от того что видно на странице вашей темы. В выбранном мной шаблоне, код, выводящий название категории — category->cat_name. Смело заключаем его в <span> и ставим значение articleSection. Должно получиться так:

разметка категорий
КЛИКАБЕЛЬНО

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

главная страница в валидаторе
КЛИКАБЕЛЬНО

Яндекс прекрасно различает все анонсы на главной страницы, видит названия, категорию, дату публикации и автора.

Об авторе: Андрей Назыров

Приветствую Вас на своем блоге! Здесь Вы найдете всю необходимую информацию по созданию своего блога (сайта), его SEO оптимизации и последующего заработка.

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

  1. Вот это да!!!! Насколько я помню, ты говорил, что заказывал разметку своего блога за приличные деньги, а сейчас всем палишь фишки и все бесплатно? Ну ты молодец!
    Классная инструкция. Хорошо,что мне установили уже микроразметку ( очень дешево) а то я бы очень жалел об этом .

    Ответить
    • Привет, Игорь. Да, в свое время я заказывал микроразметку за приличные деньги, но когда-то же надо учиться и самому 🙂
      Если честно, мучился дня 4, зато теперь понял что к чему.

      Ответить
  2. Привет. А я заказывал микроразметку. Сам залез, посмотрел, за ухом почесал и пошел к профи 🙂

    Ответить
  3. Приветствую, Андрей!
    Большое спасибо за статью. Сам давно поглядываю на схемуорг, но никак руки не доходят. Думаю ты меня вдохновил 🙂

    Ответить
  4. Андрей, спасибо за подробную информацию про микроразметку. Инструкция достаточно понятна. Надо пробовать самому. А заказать всегда успеется.

    Ответить
  5. У кого как успехи? Видимость в ПС улучшилась?

    Ответить
  6. Андрей, у тебя в коде «dimox_breadcrumbs» получилось много пустого пространства, а пост получился классный. 🙂

    Ответить
    • Привет, Алексей. Да, я заметил, это все из-за плагина WP Syntax, который отображает код. Постоянно у меня с ним проблемы. Не посоветуешь какой-нибудь другой способ вывода кода?

      Ответить
      • Самый лучший, это не плагин, а теги pre. Видел как у меня выводиться код на блоге? Это они, только я немного стилей добавил и все. Работает, как часы, даже лучше.

      • А стилями синтаксис можно как-то подсветить? У тебя этого нет.

  7. Андрей, спасибо за статью. Я как раз собираюсь разметить свой блог. Долго созревала, но уже просто некуда тянуть. А по твоему примеру вижу, что не так страшен волк, как его малюют )

    Ответить
    • Пожалуйста, Надежда. да, волк не так страшен 🙂 я поначалу тоже не сразу разобрался, но оказывается не все так сложно.

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

      Ответить
  8. Тоже надо будет вплотную заняться на своем блоге микроразметкой, тайтлами, дескрипшнами, все руки никак не дойдут. Обязательно поставлю этот пункт в план на следующий месяц )

    Ответить
  9. Оказывается это все легко было сделать! А я заказывал:-D

    Ответить
    • Андрей, зато теперь уверен, что все сделано )) Я тоже заказывал для блога, а вот на развлекательном сайте сейчас буду делать сам.

      Ответить
    • У тебя шаблон сложный. Только бы измучился бы весь 🙂

      Ответить
  10. Сколько будет приблизительно стоить эта работа у фрилансеров: установить хлебные крошки и микрозаметку? Кто нибудь подскажет.

    Ответить
    • Олег, все зависит уровня фрилансера и сложности микроразметки. Кто-то и за 300 р. сделает, а кто и за 1 000 не возьмется. скиньте в личку ссылку на ваш сайт, посмотрим, что можно сделать.

      Ответить
  11. Микроразметка очень важна для сайта. Я как бы не пыталась, все рано ни чего не получилось. В результате обращалась к профессионалам.

    Ответить
    • Елена, конечно лучше обратиться к профессионалам. Это значительно секономит время. Но при желании, каждый может в этом разобраться.

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

    Ответить
  13. Привет, Андрей! Вставила код микроразметки картинок и увидела белый экран — блог перестал работать (((

    Ответить
    • Привет, Надежда. Скорее всего код был вставлен неправильно. Нужно было вставлять строго после открывающегося тега ? >

      Ответить
      • Андрей, код был вставлен верно. кстати, твой плагин добавляет нумерацию к скопированному тексту. очень неудобно. Я ее убрала, но это не помогло )

      • Надежда, попробуй сейчас скопировать код. При переключении с HTML в визуальный редактор, код был искажен. Сейчас все поправил.

  14. Вот теперь другое дело. Спасибо, Андрей! Попробую все-таки сделать микроразметку, пользуясь твоей статьей.

    Ответить
  15. Уррра! Сделала микроразметку постов и главной. Одно осталось: страницы рубрик. Как разметить динамические страницы рубрик?!!

    Ответить
    • Поздравляю, молодец! Cтраницы рубрик размечаются так же как и главная страница блога, чаще всего в файле category.php

      Ответить
      • Спасибо )) А про рубрики — уверен? Чтобы не получилось на блоге пара десятков главных страниц )))

      • Уверен 🙂 Микроразметка на это никак не влияет. Даже размечая главную страницу, мы ведь не указываем, что это главная, мы просто указываем какой кусок текста является анонсом статьи, какой датой и т. д.
        У каждой рубрики своя ссылка и свой тайтл.

  16. Приветствую! Вопрос:
    Почему для разметки главной используется itemscope itemtype=http://schema.org/BlogPosting , а для страницы статьи itemscope itemtype=http://schema.org/Article если BlogPosting это дочерний элемент Article?
    Как-то не логично получается. Я еще понимаю наоборот делать…

    Ответить
    • Привет. Совершенно верно, если смотреть на официальном сайте Schema иерархию разметки, BlogPosting является дочерним элементом Article. Но приходится подстраиваться под поисковые системы, у меня Яндекс выдавал ошибку.

      Ответить
  17. Fktrctq:

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

    image [ImageObject]:

    height: отсутствует (обязательное)

    url: отсутствует (обязательное)

    width: отсутствует (обязательное)

    Для image указан недопустимый URL.

    publisher: отсутствует (обязательное)

    dateModified: отсутствует (рекомендуется)

    mainEntityOfPage: отсутствует (рекомендуется)

    Ответить
    • Я не смогу помочь, пока не взгляну на исходный код. Вы бы скинули ссылку в подписи.

      Ответить
      • интересует как сделать без ошибок поля
        height
        width
        publisher:

  18. Здравствуйте! Делаю себе микроразметку, все получается хорошо, кроме комментариев! В гугле показывает все замечательно, а вот яндекс ругается, выдает ошибку:
    » microdata
    ОШИБКА: невозможно определить принадлежность данных полей. Возможны две причины: эти поля некорректно размещены, либо указан лишний атрибут itemprop
    itemType =
    comment
    comment
    itemType = http: //schema.org/Comment
    creator = Никанорыч
    text = Спасибо за интересную статейку, есть к чему присмотреться.
    datepublished = 2016-03-03
    comment
    comment
    itemType = http:// schema.org/Comment
    creator = admin Дмитрий
    text = Всегда пожалуйста!
    datepublished = 2016-03-03″

    С автоматической микроразметкой не выходит, выдает ошибку 500, белый экран!
    Прописал в ручную, вроде бы комменты отображаются в валидаторе, но с ошибкой!
    Подскажите пожалуйст, что можно сделать?
    Пробовал отключать все плагины, перемещал itemprop=»comment» itemscope=»itemscope» itemtype=»http://schema.org/UserComments» в разные блоки, также пробовал разделять его, все равно ошибка выскакивает!

    Ответить
    • Дмитрий, судя по структуре, скорее всего у вас неправильно размечена основа микроразметки комментариев или основа страницы блога. Я выслал вам на почту архив с этой темой, сравните файлы function.php и comments.php и single.php
      Только у меня там старый формат — schema.org/UserComment измените на schema.org/Comment

      Ответить
  19. Андрей, Спасибо! Разобрался. Оказывается блок комментариев надо было переместить внутрь блока Article. Повозившись с кодом у меня все получилось, яндекс не ругается! Кстати, интересный у вас блог, добавил в закладки…

    Ответить
    • Ну, хорошо, что все разрешилось 🙂
      Закладки это хорошо, заглядывайте иногда 🙂

      Ответить
  20. Добрый день! у меня функция работает, только с теми изображениями, которые добавлены в ручную. для добавления миниатюр в категории использовал Taxonomy Images. да вот беда, функция не проставляет разметку. Может есть какой-то выход? Спасибо заранее!

    Ответить
    • Артем:

      Вы эти картинки как выводили? В коде вывода и добавьте разметку. Другой момент, что для гугла надо по другому делать….

      Ответить

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

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