Приветствую! В этой статье я расскажу вам о том, зачем нужно скрывать даты публикации постов и комментариев. А так же о том, как мне удалось подружить плагин «Hide My Dates» и тему «Twentytwelve», которую я использую на своем сайте.
Создавая свой первый сайт на WordPress, мне пришлось перечитать не мало статей касательно его самого и популярных к нему плагинов. И как-то само, собой попадалась информация затрагивающая тему СЕО. И вот, наткнулся я на статью посвященную датам, а так же том, что эти даты влияют на поисковую выдачу сайта при запросе в google (а возможно и в яндексе, тут я не в курсе). Т.е. дата отвечает за актуальность статьи. К примеру, если пост был создан 2010 года, то он будет не такой актуальный чем пост созданный в 2014 году, с той же тематикой. Конечно же дата поста не играет самую важную роль в поисковой выдаче. Это как один из немногих факторов, но который так же лучше учесть. Чем не учесть — а потом жалеть.
В своей статье (адреса к сожалению не помню), автор рекомендовал не использовать в ссылках даты, а также спрятать даты создания постов, и даты комментариев. Т.к. не найдя дату поста, поисковая система будет считать за дату поста, дату первого комментария который встретиться на странице. А спрятав все даты — мы обманываем поисковую систему, и статья является якобы актуальной и по сей день. Интересно, не выйдет ли это в перспективе боком, скажем, года так через два?
Прошвырнувшись по десятку популярных блогов на WP, я специально начал изучать данный вопрос. И что вы думали? Да, действительно, многие спрятали свои даты. Некоторые вообще удалили все даты (и поди-угадай какого года эта статья и насколько ее информация соответствует действительности, такое ужасно раздражает)! А практически все, даже не популярные блоги, имеют следующий URL формат статей — «/название-категории/название-поста» или просто «/название-поста».
Честно сказать — не знаю, возможно это случайное совпадение, но я решил так же предостеречься, чем потом кусать локти. Ну и так как на сайте, автор рекомендовал плагин «Hide My Dates», я начал использовать именно его.
Установив плагин. Прешел к просмотру статьи, глянул на дату — класс, дата видна! Включил инспектор firefox, проверил, в коде даты нет. Еще помню подумал — интересно, как это сделано, думал что через JavaScript (а оказалось что через css, но об этом уже в следующий раз напишу). Прокрутил статью ниже, к комментариям — черт! Там была испорчена верстка, причиной которой стал плагин. Скриншот прилагается:
В подробности вдаваться не буду, но чтобы решить данную проблему, нам нужно отредактировать атрибут тега title, в ф-и формирования списка комментариев темы «Twentytwelve».
Для этого, открываем файл «/wp-content/themes/twentytwelve/functions.php», ищем функцию «twentytwelve_comment», нас интересует следующий код:
printf( '<a href="%1$s"><time datetime="%2$s">%3$s</time></a>', esc_url( get_comment_link( $comment->comment_ID ) ), get_comment_time( 'c' ), /* translators: 1: date, 2: time */ sprintf( __( '%1$s at %2$s', 'twentytwelve' ), get_comment_date(), get_comment_time() ) );
заменяем его на следующий:
printf( '<a href="%1$s"><time>%2$s</time></a>', esc_url( get_comment_link( $comment->comment_ID ) ), sprintf( __( '%1$s at %2$s', 'wp2fl-ext' ), get_comment_date(), get_comment_time() ) );
после чего, даты комментариев отображаются без нарушения верстки:
Вот и все!
Ну а в следующей статье, я напишу как устроен плагин «Hide My Dates» и почему возникает такой баг.
Здравствуй, интересно будет прочитать, как это реализовать кодом, а не плагином. Буду ждать публикации.
Обязательно напишу
Я короче закомментировал даты.
Вот эта штука накаляет на валидаторе
Line 152, Column 464: The text content of element time was not in the required format: The literal did not satisfy the time-datetime format.
Сколько комментов столько и ошибок. А на главной если выводишь 10 анонсов, считай + 10 лишних ошибок на главной. Нервоз. Я сейчас немного просто решил привести код в порядок, исправить явные ошибки и наткнулся на эту проблему.
Оставил самописный вывод даты в анонсах (календарь назвал), туда еще год можно добавить и норм будет, код валидный получается.
Вот как быть? Валидатор ругается еще на микроразметку shema, которая в плагине ceo pak.
>Вот как быть?
Вопросами валидации я не интересовался. Возможная причина ошибок - неправильная вложенность элементов. Как вариант, можно оставить ссылки, поместив их в noindex, и добавить к ссылкам nofollow
>ceo pak
Данным плагином не интересовался, поэтому ответить ничего не могу.
Я использую плагин "WordPress SEO"
Проверил на валидаторе текущую статью, одна из ошибок:
Здесь, как раз говориться о неправильной вложенности. Тэг time должен содержать не строковой тип данных, а дату.
Чтобы исключить ошибки валидатора. Лучше наверное делать это не через JavaScript функцию а через атрибут data и JQuery. Хотя даже не знаю, пройдет ли валидацию атрибут data, раньше кажется не проходил.