Думаю, что ни для кого не секрет, что поисковые системы любят частое обновление контента сайта. Существуют даже несколько теорий, основанных на опыте вебмастеров, о том, с какой периодичностью нужно публиковать контент. Поисковые системы не имеют инструкции для периодичности и частоты публикации, Яндекс, например, открыто о том, что публикации должны имеет периодичность заявленную на сайте, а обращение робота осуществляется каждые 5 минут (Яндекс Новости).
И если с публикаций всё достаточно просто: пишите и публикуйте полезный информативный контент постоянно, то что же делать со старыми материалами?
В большинстве тематик информации имеет свой период актуальности, так в теме seo моя статья о микроразметке, написанная 15 июня, была обновлена за два месяца дважды. И каждое обновление сообщало поисковым системам об актуальности информации.
Как сообщить поисковым системам, что контент обновился
Я разберу на примере блога на WordPress и предложу код, который поможет вам сообщать поисковым системам об обновлении.
За дату публикации контента в WordPress отвечает функция, которая время публикации поста в указанном формате:
<?php get_the_time() ?>
Дата обновления контента (при перезаписи материала в базе данных) выводится с помощью функции:
<?php the_modified_date() ?>
Следует отметить, что алгоритмы поисковых систем считывают информацию о датах с помощью дополнительных сведений, как даты в url или заголовках материала.
Статья «Авторство в Google» опубликована 22 марта 2015 года, последний комментарий 2015-07-19, Яндекс показывает дату 24 июня 2014 года, взятую из заголовка статьи.
Существует несколько эффективных способов оповестить поисковые системы о том, что контент обновился.
Sitemap.xml с выводом даты последнего комментария поста в Last modified
К сожалению данный способ оповещает поисковые системы о обновлении с периодичностью 2 — 3 недели. И если Google часто обращается к sitemap сайта, то Яндекс может узнать о изменениях в течение месяца.
Такая проблема наблюдается с плагином Google XML Sitemaps, который создаёт для каждого месяца собственный дочерний файл sitemap с момента публикации первого материала с начала месяца. Да и сам функционал плагина не позволяет выводить дату обновления с появлением комментария.
Функционал вывода даты последнего комментария в Last modified поддерживается в плагине Yoast WordPress SEO, но данная карта сайта считается невалидной для роботов Яндекс, которые отказываются обрабатывать сведения о медиа-контенте (дополнительный функционал плагина).
Остаётся либо создавать собственный sitemap.xml, либо же использовать другие инструменты.
Пинги поисковым системам
Многим из вас знаком плагин Яндекс.ПДС пингер, который отправляет роботам Яндекс информацию о обновлении контента. Такие же пинги получают роботы из rss вашего блога, если она корректно работает и участвуете в поиске по блогам Яндекс.
Свойства микроразметки datePublished и dateModified
Два свойства микрораметки, которые помогают поисковым системам узнать, когда контент обновился и был добавлен.
Указанные мной в начале статьи функции помогут вывести авторам блога на WordPress данные элементы:
Обязательное для сущностей Article, Blog и BlogPosting свойство datePublished выводится с помощью строчки, добавленной в single.php или page.php с подключенной микроразметкой:
<meta itemprop="datePublished" content="<?php get_the_time() ?>">
Свойство dateModified — дата обновления контента:
<meta itemprop="dateModified" content="<?php the_modified_date() ?>">
Обновление контента сайта с помощью даты последнего комментария
В своей микроразметке я использую хитрый трюк, с помощью которого вывожу дату обновления статьи с помощью функции:
global $post;
if( $comms = get_comments( array('post_id' => $post->ID, 'status' => 'approve' ) ) ){
$comm = array_shift( $comms );
$date = mysql2date('Y-m-d', $comm->comment_date );
echo $date;}
elseif( $pst = get_post() ){
$date = mysql2date('Y-m-d', $pst->post_date );
echo $date;}
Которая выводит дату последнего комментария (последняя дата обновления контента), если же комментариев нет, выводится дата публикации. Каждый новый комментарий сообщает поисковым системам о том, что мой контент обновился, и его следует переиндексировать.
Где обязательные аргументы:
'post_id' => $post->ID // пост, в котором опубликован комментарий
'status' => 'approve' // только одобренные (опубликованные) комментарии
Обнови, что пингер вроде больше не выпускается — Яндекс на новую систему перешел
Спасибо за статью. Я этими методами ещё не пользовался.Теперь, после прочтения, внедрил в свой сайт на вордпресс. Остается ждать и наблюдать, как яндекс отреагирует на эти нововведения.