Оптимизация даты страницы. Исправляем ошибку «Отсутствует: updated»

CMS WordPress «из коробки» поддерживает микроразметку hAtom . Эта заметка для тех, кому она не нужна.

В большинстве тем внутри основного цикла WordPress используется функция post_class() . Эта функция добавляет css классы к контейнеру, в котором выводится запись.

Класс hentry — это отправная точка для микроразметки hAtom. Парсер находит этот класс, и анализирует классы внутри него на предмет структурированных данных.

Вот такие ошибки выдает консоль Google Webmasters:

  • Отсутствует: author;
  • Отсутствует: entry-title;
  • Отсутствует: updated.

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

Если в вашей теме этот класс прописан вручную — тут все понятно. Вы удаляете его из верстки. Но в подавляющем большинстве случаев вы столкнетесь к функцией post_class() .

Откроем functions.php , добавить функцию в 4 строки и добавим ее к фильтру.

Функция избавления от hAtom разметки в WordPress

function hentry_class_remover ($classes ) {

$classes =array_diff ($classes , array ("hentry" ) ) ;

return $classes ;

add_filter ("post_class" , "hentry_class_remover" ) ;

Мы удаляем из массива с классами ячейку, в которой записано значение «hentry» и возвращаем массив уже без него.

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

P.S.:

Будте внимательны! Может случиться так, что в CSS файле описаны стили для класса hentry. Тогда придется повесить слетевшее оформление на другой селектор.

Микроразметка Google.Как исправить ошибки entry-title для WordPress

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

После многих поисков информации о проблеме в интернете, я наконец-то избавилась от этих ошибок Missing required field “entry-title”, Missing required field “updated”, Missing required hCard “author”. Надеюсь, что мои рекомендации помогут и вам исправить их. Рассмотрим подробней.

Ошибка: Missing required field “entry-title”.

Исправляем:

1. Заходим «Внешний вид» выбираем «Редактор»

2. Справа находим файл «Одна запись» single.php

3. Нажимаем Ctrl+F и вводим в поиск

Добавляем entry-title . В итоге получается:

4. Можете нажать Обновить файл . Так мы устраняем ошибку Missing required field “entry-title”

Ошибка: Missing required field “updated”.

1. В том же файле, находим тем же способом и добавляем updated. В итоге получается

В моей ситуации такого не было. Поэтому я внесла строку:

2. Нажимаем Обновить файл. Ошибка Missing required field “updated” отсутствует.

Ошибка: Missing required hCard “author”.

1. Там же находим

Меняем на:





2. Нажимаем Обновить файл. Ошибку Missing required hCard “author” убрали.

А теперь проверяем наличие ошибок, для этого заходим http://www.google.com/webmasters/tools/richsnippets?q=

Вносим url страницы в строку и нажимаем посмотреть.

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

Только сразу хочу предупредить, что на каждом сайте разные темы, а значит и разная реализация разметки. Поэтому не факт, что данный вариант подойдет вам, но мне он прекрасно подошёл, поэтому я делюсь с вами проверенным вариантом.

Вообще, я много времени потратил в поиске настройки микроразметки и хочу заверить, что вся эта куча вариантов кому-то да подходила, но только не мне.

Что значит микроразметка Schema.org?

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

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

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

На что влияет микроразметка у ПС?

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

На практике это выглядит так: поисковик при выдаче показывает не полную или неточную информацию вашего контента, потому, что он это делает на свое усмотрение, то есть как это понял робот. А если микроразметка есть, то ПС выдает вашу информацию заметнее, выделяя её среди других, что приводит к явному выбору пользователем вашего варианта. И как следствие приводит к увеличение посещаемости по целевым запросам. Эти слова воспринимайте серьезнее, т.к. это не пустые слова, а реальные показатели.

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

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

На данный момент является актуальной разметка Schema.org, и если у вас отличная от этой разметка(например Open Graf, Data Vocabulary), которые являются устаревшими, то нужно заморочаться и поменять её. Про устаревшие разметки рассказывать не буду(хотя в инете полно этой информации), но скажу точно, что её еще применяют и например гугл использует её. Может дальше вовсе откажется, но поживём, как говорится, увидим.

Вот кто-то скажет такое долгое вступление и все такое, но без оного никак, и если вы не утруждались изучением этой темы, то я вам точно скажу, что на сбор только этой информации(расписана выше), тратится в легкую несколько часов. Более того нужно пережевать и сделать выводы. А я вам даю уже готовую и осмысленную информацию + экономлю ваше время. Многие блогеры не рассказывают об этих тонкостях, да и у каждого свой опыт, не похожий на других.

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

То есть введя урл страницы, вы можете сделать проверку микроразметки сайта.

Как исправить ошибки: отсутствует: author, entry-title, updated

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

На своем примере, я вставил следующий код, который исправил данную ошибку.Найдите файл index.php или single.php или как у меня content.php, который выводит содержимое записей и страниц (я не зря выделил этот текст) в своей теме на сайте и открыв найдите код похожий на этот:

Или некоторые просто обворачивают тегом span, в атрибутах указывая класс, пример:

1

Хочу сразу добавить, что у меня был такой тег, я обернул его как положено, но всё равно ошибка не пропала. Я подробно занялся выяснением, оказалось, что сам title у меня выводился только на главной странице, а в записях и на страницах он (the_title) уже не участвовал, что может быть и у вас. Темы пишутся разными программистами и каждый видит свое детище по разному, поэтому и код может сильно отличаться. Если такое и у вас, тогда просто пропишите этот код вместе с автором и датой. Пусть отображается сразу всё вместе (тема, автор и дата), расположите эти коды в конце статьи, а если хотите, чтобы не бросались в глаза, то можно сделать маленьким шрифтом или совсем скрыть.

А сразу после этих строчек вставьте эти строки:

1 2

Часто бывает так, что в сложных шаблонах не удается решить проблему с entry-title, в таком случае можно пойти другим путем. Открывайте файл functions.php и туда скопируйте код который ниже:

function wpc_add_class($classes) { //этот цикл проверяет на каких страницах выполнять действие, если класс необходимо добавлять на все страницы, то проверку можно и убрать. if (is_single() || is_page()) { $classes = "entry-title"; } return $classes; } add_filter("post_class", "wpc_add_class");

Важная информация.

На многих сайтах установлено кеширование данных с помощью плагина, поэтому сначала удалите кеш вашего сайта, а затем проверяйте сайт на наличие ошибок. Более того нужно учитывать наличие кеша при любых исправлениях и проверках вашего кода. И если не чистить, то кеш будет выдавать вам старые данные, что будет путать вас.

Если посмотреть в валидаторе микроразметки яндекса, то мы обнаружим ошибку:

Которая говорит о том, что вывод даты не в формате стандарта iso 8601. Исправить проще простого, для этого в админке вордпресс открываем Настройки->Общие и в разделе Формат даты ставим галочку в строке где отображена дата такого вида 2017-01-18 Y-m-d. После чего опять сбрасываем кеш и проверяем, убеждаемся, что ошибка исчезла.

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

Используем плагин для создания микроразметки сайта

Так же можно найти способ установки микроразметки проще, т.е. установить плагин, например Schema Creator by Raven.

С его помощью не нужно править код, ведь всё за вас сделает этот плагин. После его установки, в админке появится кнопка, которая генерирует форму разметки.


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

В итоге у вас должны быть видны следующие результаты в валидаторе разметки Гугла и Яндекса:

Насколько я долго вычитывал о проблеме микроразметки, скажу, что нюансов великое множество, и как правило никто не даёт вам готовый ответ, так что если вы можете сами разобраться, то пожалуйста, а если нет — прямая дорога к профи по этому вопросу. Средняя цена исправления разметки от 300р. Так что дерзайте.

После всех исправлений и убедившись в валидаторе разметки, что ошибки исправлены, нужно подождать не меньше недели, а то и 2, чтобы убедиться, что ошибок entry-title, author, updated больше не возникает.

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

Если желаете посмотреть другие решения в WordPress, то можете пройти на страницу

Дату публикации статьи желательно указывать в любой тематике. Но не в каждой, как верно заметил Михаил Шакин , следует выводить её в сниппет. Пользователь поисковой системы откажется от перехода на сайт, если увидит дату прошедшего года. Он подумает, что материал уже устарел, даже если ищет как дрессировать собаку.

Откуда Яндекс и Google узнают, что эта дата именно дата публикации:

  • по , например, http://сайт/2010/07 /bez-dat.html
  • если указаны микроформаты, в т.ч. Schema.org
  • если дата присутствует на многих страницах в одном и том же месте, скажем, в начале или конце статьи
  • если дата индексации веб-документа, близка к дате, указанной на странице

Убрать дату из сниппета поисковых систем

На сайт URL формируется с датой. Вместо даты публикации под заголовком используется дата обновления основного содержимого. Прописаны hCard и Schema.org , что в коде выглядит так:

itemscope="itemscope" itemtype="http://schema.org/BlogPosting" >

Если дата в URL совпадает с датой в статье, то она довольно часто отображена в сниппете Яндекса, иначе отсутствует.

Гугл более настойчиво вычленяет дату и добавляет её в сниппет, понимает dateModified.

Как убрать ошибку Warning: Missing required field "updated"

У тега с датой (class="updated") обязательно должен быть родитель, указывающий схему разметки (class="hentry"). Например,

Заголовок статьи

Опубликовано , Автор NMitra Ярлыки: ярлык 1, ярлык 2
Текст статьи
Вариант ниже неправильный!
Опубликовано , Автор NMitra Ярлыки: ярлык 1, ярлык 2

Заголовок статьи

Текст статьи

Оптимизация даты страницы в Blogger

Что нужно сделать:

На вкладке "Дизайн" - "Сообщения блога" - "Изменить" - "Параметры страницы" установить галочку напротив первой даты.

Перейти на вкладку "Шаблон" (). Мобильный вариант затронут не будет.

Шаг 1. Удалить выделенное жирным шрифтом из примерно такого фрагмента

Шаг 2. Добавить выделенное жирным шрифтом

Шаг 3. Изменить один из вариантов (для каждой группы шаблонов свой)

Date-header span {/* содержимое */ } .main-inner .widget h2.date-header {/* содержимое */ } h2.date-header {/* содержимое */ } .main-inner h2.date-header {/* содержимое */ } на time.updated { /* содержимое */ display: block; }

Дату публикации сменить на дату последнего изменения

Не показывать дату на определённой странице

Оптимизированный код (см. выше)

обернуть в :

Удалить дату из сниппета

Шаг 1. Заменить

на

Шаг 2. Заменить

H2.date-header на.date-header

Шаг 3. Добавить перед ]]>

:before {content: attr(data-zakryt);}

Как появились ошибки

Странно, сайту каких-то две недельки и уже первые ошибки. Откуда? Подумал я. Захожу сегодня в Google инструменты, выбираю структурированные данные, дальше hentry (разметка: microformats) и вижу целых 19 ошибок!

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

Как исправить ошибки структурированных данных author, entry-title и updated

— копируем на компьютер файлы, в которых будем делать изменения (в данном случае, скорее всего бок в: single.php, search.php, index.php, archive.php). Так у меня было ;

— делаем еще одну копию этих файлов (их мы будем изменять, и заливать через Filezilla после внесения изменений).

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

Ошибка и решение проблемы entry-title. Нет сведений о заголовке статьи.

Теперь только начал понимать, что английский учить нужно было лучше. Здесь собственно все банально. Исправляется ошибка добавлением словосочетания entry-title.

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

Внимание ваш код может отличаться, но есть большая вероятность, что он аналогичен или очень похож. После того когда нашли, нам понадобиться добавить entry-title. Собственно как было и стало у меня видно на картинке:

Не пугайтесь, если entry-title надо будет прописать в немножко отдаленном месте от , хотя меня это, честно говоря смутило (боялся что не получиться), но, метод тыка) помог. Дальше будет легче.

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

Решение проблемы updated - нет сведений о дате публикации статьи.

Здесь нам надо будет добавить к части кода php the_time или php the_date (у кого как) class=»updated» и заключить конструкцию в тег . Кто не знает - смотрим на картинку:

Избавиться от проблемы структурированных данных author. Ошибка - пропал автор 🙂 .

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

Кстати, порадовало то, что сразу можно проверить устранена ли проблема. Вбивать ненужные символы не буду, просто рекомендую посмотреть на картинки.