Исправляем ошибку OpenGraph «префикс article неизвестен валидатору»

Некоторые вещи не влияя на общее функционирование сайта вымораживают своим наличием. Это относиться и к такому заявлению валидатора Яндекса «ОШИБКА: префикс article неизвестен валидатору, укажите его явно атрибутом prefix».

префикс article неизвестен валидатору

Данная ошибка появляется, если в плагине Yoast SEO включить поддержку OpenGraph. Причем в Гугле все нормально, а вот Яндекс выдает такую ошибку. Эта ошибка никак не влияет ни на формирование сниппета, ни на общее продвижение, но раздражает.

Так поковыряв немного плагин Yoast SEO написал решение, которое исправляет эту ошибку. Решение элементарное, как валенок. Надо в тег html просто добавить нужный префикс

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

Но если просто так вставить. то ничего не выйдет, не позволит сам плагин. Потому будем применять штатные фильтры WordPress. В итоге получаем такую функцию

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);

Данную функцию надо добавить в файл functions.php и все, ошибка исчезнет…

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

Всегда ваш, Артем.

3.7 3 голоса
Рейтинг статьи

    Об авторе
    Артем Абрамович

    Автор и ведущий проекта «Финты WordPress». WordPress & WooCommerce разработчик. Четыре года создаю плагины и темы. В свободное время пишу статьи, видеообзоры, гайды.

    Подписаться
    Уведомить о
    guest
    78 комментарев
    Новые
    Старые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии
    78
    0
    Оставьте комментарий! Напишите, что думаете по поводу статьи.x