Микроразметка – ОШИБКА: префикс article неизвестен Яндекс!

Микроразметка – Яндекс валидатор нашел “ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix”

Здравствуйте, уважаемые друзья и гости блога! Сегодня пойдет разговор серьезный, как Вы уже наверное догадались по заголовку статьи?! Ведь Яндекс валидатор не любит шутить и ему очень трудно угодить, но мы сегодня с вами постараемся это сделать и у нас все получится на 100% – Я вам обещаю!

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

Вот и давайте поговорим о том, как нам преодолеть все трудности и исправить вот такую хитрую и часто встречающуюся у всех практически вебмастеров погрешность в микроразметке Яндекса – ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix!

И так, приступим к исправлению данного казуса в микроразметке сайта …

ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix – ИСПРАВЛЯЕМ!

Микроразметка что это?

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

Вот в двух словах о том, что такое микроразметка и для чего она нужна на сайте.

Раньше, когда я только увлекся сайтостроением, а затем стал блоггером, я не придавал особого значения вопросам поисковой оптимизации сайта. Но теперь я понял, что микроразметка очень важна для поисковой оптимизации сайта и если она хромает, то срочно нужно ее исправлять!

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

После проверки Вы с точностью на 100% будете знать, есть ли она у Вас на сайте и правильно ли она создана!

Когда я только начал заниматься вопросом микроразметки на своих сайтах, мне приходилось лопатить очень много материала по этому вопросу в интернете. И мне стало интересно! Люди, которые написали кучу статей про микроразметку и пытаются в них учить уму-разуму других, а статей по поводу внедрения на сайте микроразметки я нашел в интернете множество и прочел их, они сами на своих ресурсах применили ее? И я стал ради спортивного интереса проверять их сайты на микроразметку. Что бы Вы думали? Большинство из проверенных мной сайтов были неправильно размечены и у них вылезали такие же ошибки, о которых они писали и учили других как нужно их исправлять! Абсурд!!!

Ну, не столь важно!

И все же не зря было мной потрачено уйма времени и сил, все же я научился правильно внедрять микроразметку на сайтах и примером может служить мой блог. Можете проверить его в валидаторах как Яндекс, так и Google, чтобы Вы смогли убедиться,что я не вру вам!

И вот теперь я имею полное право, с моей точки зрения, написать статью о микроразметке, а в частности об исправлении очень распространенной ошибке в микроразметке Яндекса …

ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix

Ну теперь о главном …

Данная ошибка возникает чаще у тех, кто использует плагин Yoast Seo в WordPress, коим и я являюсь. Поэтому наверное я и взялся за написание статьи об этой ошибке?!

И так, Вы проверили свой сайт в валидаторах Гугла и Яндекса. В Гугле вроде бы все впорядке и ни каких ошибок не найдено, а вот Яндекс выдает – ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix!

И как бы Вы не бились и что бы Вы не делали, ничего не выходит и эта злополучная ошибка опять и опять вылезает. Мало того, но и другие появляются после наших неправильных действий с внедрением микроразметки. Что делать? Как нам быть? Все оказывается до смешного просто!

При использовании плагина Yoast Seo на WordPress происходит один казус. При при настройке плагина Yoast Seo, а именно на вкладке “Социальные сети” в разделе “Facebook“. Вот скриншот на всякий случай:

yoast seo
yoast seo

Вы включаете, добавить метаданные OpenGraph в раздел <head> вашего сайта. Facebook и другие социальные сети используют эти данные, когда делятся вашей страницей. Далее Вы добавляете ссылки на ваши социальные сети и так далее, если кому-то это нужно и интересно, настройка плагина Yoast Seo, то я об этом уже писал и Вы сможете прочесть в статье “Плагин Yoast SEO настройка и сео продвижение“, но сейчас не об этом.

После этих действий у Вас на сайте внедряется микроразметка плагином Yoast Seo, которую хорошо понимает Гугл валидатор, но не очень хорошо понимает Яндекс и выдает нам – ОШИБКА: префикс article неизвестен валидатору укажите его явно атрибутом prefix

Я долго бился, но все же нашел выход! И как всегда он был довольно простым и лежал на поверхности. Вот он!

Для Яндекса вам нужно всего лишь указать вот такой префикс, который вставляется в код вашей активной темы сайта в HTML файл header.php

prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile# fb: http://ogp.me/ns/fb#"

Возникает встречный вопрос – В какое место нужно вставить данный код? Показываю на примере своего сайта!

Вам нужно найти вот такой код (это мой кусок кода из файла header.php , он находится прямо вверху!):

<html <?php language_attributes(); ?> class=no-js> <!--<![endif]-->

У Вас он может немного отличаться, но это не столь важно. Просто найдите его. Затем нужно внедрить ранее предоставленный мной код префикса в этот HTML кусок кода. Смотрите сейчас я вам даю свой код, который уже исправлен:

<html <?php language_attributes(); ?> prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile# fb: http://ogp.me/ns/fb#" class=no-js> <!--<![endif]-->

Не трудно определить, куда вставлен префикс?! Просто сравните два кода и Вы сразу во всем разберетесь!

Теперь вставьте исправленный код на свое место в файл header.php вашей темы.

Но это еще не все!

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

function artabr_opengraph_fix_yandex($lang) {
 $lang_prefix = 'prefix="og: http://ogp.me/ns# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile# fb: http://ogp.me/ns/fb#"';
 $lang_fix = preg_replace('!prefix="(.*?)"!si', $lang_prefix, $lang);
 return $lang_fix;
 }
add_filter( 'language_attributes', 'artabr_opengraph_fix_yandex',20,1);

Вставьте ее в самом конце в файле function.php перед вот таким значком “?>“. Теперь все!

Обязательно сохранитесь и обновите кэш в админке сайта!

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

Благодарю Вас друзья за внимание и что посетили мой блог. Заходите еще. Очень буду вам рад!

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

Спасибо вам!

2.7/5 - (7 голосов)
Понравилась статья? Поделиться с друзьями:
Комментарии: 14
  1. Александр

    Валерий, спасибо за статью. Попробовал, сделать как вы описали в статье, но… не нашел именно 1. таких кодов у себя куда именно вставлять.. и 2. во втором файле function.php я не нашел у себя в конце такого значка.. “?>” Поэтому рисковать и экспериментировать не стал. Я просто зашел в плагин и отключил соц сети.. И проверка валидатора в Яндекс не нашла ошибки=)) Хотя до этого проверка показала что именно та описанная выше в статье ошибка присутствовала.

    1. Валерий Бородин (автор)

      Да Александр, эта ошибка именно из-за соцсетей, которые подключены в плагине. Но отключив и этот сервис, Вы не выигрываете, так как соцсети играют важную роль в seo. Так, что советую Вам еще раз покопаться в коде своего сайта. Удачи и спасибо, что следите за новостями на блоге!

  2. Grigoriy

    Все понятно! Но возник один нюанс – в статьях и на главной все в порядке,
    а вот на отдельных страницах блога эта ошибка остается:
    “префикс article неизвестен валидатору, укажите его явно атрибутом prefix”
    Не подскажешь – что еще можно сделать?

    1. Валерий Бородин (автор)

      Здравствуйте, Grigoriy! Дело еще может быть в специфике вашей темы оформления. Многое зависит от ее верстки. Мой Вам совет, если у Вас не выходит с микроразметкой, то попробуйте другую тему оформления для сайта. Например в моем случае было именно так!

  3. Михаил Васильцев

    Во, мне ваша статья помогла, на одном сайте ошибка исчезла.

    1. pribylwm

      Очень рад Михаил, что помог Вам! Удачи! заходите в гости!

  4. Ольга

    Я тоже соц сети отключила и эта ошибка исчезла. Но другая осталась вот ее копия ПРЕДУПРЕЖДЕНИЕ: Не выполнено обязательное условие для структурированных сниппетов Яндекс.Справочника: кажется, ваша разметка hCard описывает не организацию (поля fn и org не совпадают). В данный момент такая разметка не поддерживается Яндексом
    Это серьезная ошибка или нет Валерий ?

    1. Валерий Бородин (автор)

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

  5. Светлана

    Здравствуйте, Валерий.
    Сделала всё по вашим советам, хотя тоже не нашла такого знака «?>», сама добавила). Прежняя ошибка исчезла, появилась вот эта: поле http://ogp.me/ns#image отсутствует или пусто. А может она и была уже. Подскажите, пожалуйста, что делать?

    И ещё там предупреждение: поле https://schema.org/query-input не определено в спецификации http://schema.org/SearchAction. Это значит, что на сайте нет разметки шема? А плагин уост seo её не делает?

  6. Алексей

    Вы бы хоть с кода убрали свой копирайт! Зачем такие неудобства создаете?

  7. Гармония

    А как быть с плагином Rank Math, яндекс тоже это пишет, я отключила соц сети, но не помогло. Может соц сети еще где-то зарыты в плагине, не подскажите?

    1. Валерий Бородин (автор)

      А вот с плагином Rank Math нужно еще разбираться. Сейчас еще не готов ответить.

  8. Александр

    Подскажите, пожалуйста, если просто отключить в плагине соцсети? Ничего же страшного не произойдет. Просто я не пользуюсь Facebook.

    1. Валерий Бородин (автор)

      Страшного ничего не произойдет.

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