telegram
🪟windows

Как на сайте WordPress вывести дату публикации и обновления

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

Откройте файл шаблона записей single.php и вставьте в нужное место для вывода даты.

1. Данный ниже код будет отображать дату публикации на сайте и дату обновления контента, если он редактировался, и при этом, дата публикации будет убрана на обновленную дату. Как у меня на сайте в данный момент.

<time datetime="<?php the_modified_time('Y-m-d'); ?>"><?php
if ( get_the_modified_time( 'Ymd' ) != get_the_time( 'Ymd' ) ) {
echo 'Обновлено: ' . get_the_modified_time('d.m.Y');
} else {
echo 'Опубликовано: ' . get_the_time('d.m.Y');
}
?></time>

одна дата на сайте публикации
2. Кроме того, можно вывести дату и другим способом без datetime и <time>, но лучше для SEO выше вариант.

<?php
if ( get_the_modified_time( 'Ymd' ) != get_the_time( 'Ymd' ) ) {
echo 'Обновлено: ' . get_the_modified_time('d.m.Y');
} else {
echo 'Опубликовано: ' . get_the_time('d.m.Y');
}
?>

одна дата на сайте обновлено
3. Раньше у меня на сайте было отображения двух дат "Публикации" и "Обновления", где слова были в title. Чтобы отображалось две даты, публикации и обновления контента, то код будет следующим и слова отображались в title:

<span title="Дата публикации"><?php _e('&#128339;',''); the_time('d.m.Y'); ?></span>
<?php if (get_the_modified_time('d.m.Y') != get_the_time('d.m.Y')){ ?><span rel="modified time" title="Обновлено">&#128356;<?php the_modified_time('d.m.Y'); } ?></span>

Где вместо &#128339; и &#128356; можете удалить или добавить свой смайлик в виде юникода.

две даты на сайте

4. Чтобы отображалась просто одна дата редактирования контента, то код будет следующим. При этом, дата первоначальной публикации также будет отображаться, если контент не редактировался.

<time datetime="<?php the_modified_time('Y-m-d'); ?>">
<?php the_modified_time('d.m.Y'); ?></time>