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

B
На сайте с 27.05.2018
Offline
133
357

Парни такая делема, как выводить дату обновления контента в WP типа "Обновлено 29.09.024" и чтобы дата первоначальной публикации пропадала, но при этом она отображалась, когда нет обновления контента.

Вот примеры страницы: На этой обновление https://remontka.pro/download-windows-10-iso-microsoft/ на этой первоначальная публикация https://remontka.pro/kb5043064-install-error-fix/

Как это реализовать без плагинов? Спасибо!

B
На сайте с 27.05.2018
Offline
133
#1

В теме WP реализована пока что вывод двух сразу дат вот таким образом:

<span class="times" rel="published time" title="Опубликовано"><?php _e('&#128339;','shop'); the_time('d.m.Y'); ?></span>

<?php if (get_the_modified_time('d.m.Y') != get_the_time('d.m.Y')){ ?><span class="timesupdate" rel="modified time" title="Обновлено"><?php the_modified_time('d.m.Y'); } ?></span>

B
На сайте с 27.05.2018
Offline
133
#2

Парни помогите кто, наковырял код, который выводит обновление даты страницы, но если страница не обновлялась, то первоначальной даты публикации нет.

<?php if ( get_the_modified_time( 'd.m.Y' ) > get_the_time( 'd.m.Y' ) ) {  echo 'Обновлено:' . get_the_modified_time('d.m.Y');} ?>

D
На сайте с 02.02.2010
Offline
143
#3

Используйте только get_the_modified_time без всяких условий.

Функция get_the_modified_time( 'd.m.Y' ) -  если запись не редактировалась, то выводит дату публикации, тоесть тоже, что и  get_the_time('d.m.Y')

KH
На сайте с 08.12.2016
Offline
106
#4

Вот так скорее всего, может кто доверстает как обычно 

<?php if (get_the_modified_time('d.m.Y')){ ?><time><?php the_modified_time('d.m.Y'); } ?></time>
B
На сайте с 27.05.2018
Offline
133
#5
KeicH2O #:

Вот так скорее всего, может кто доверстает как обычно 

Хорошо, нео слово "Обновление" отображается при первоначальной публикации и обновленной. Как сделать теперь, чтобы при первоначальной просто была дата, а при обновленной "Обновлено" с датой???

D
На сайте с 02.02.2010
Offline
143
#6

Только из последнего сообщения стало понятно, что требуется.


<?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');
}
?>


Ymd - это сравнение с точностью до дня, тоесть если запись отредактирована в день ее публикации, то будет также выводится "Опубликовано".  можно добавить часы и минуты YmdHi, чтобы выводить "обновлено"

B
На сайте с 27.05.2018
Offline
133
#7
divv #:

Только из последнего сообщения стало понятно, что требуется.



Ymd - это сравнение с точностью до дня, тоесть если запись отредактирована в день ее публикации, то будет также выводится "Опубликовано".  можно добавить часы и минуты YmdHi, чтобы выводить "обновлено"

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

<time datetime="<?php the_modified_time('Y-m-d'); ?>">Обновлено: <?php the_modified_time('d.m.Y'); ?></time>

KH
На сайте с 08.12.2016
Offline
106
#8

Не силен в этом но вроде так исходя всего выше. Может кто подкорректирует:

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий