Здравствуйте, у WordPress есть встроенная функция для отображения даты в формате времени, прошедшего с момента написания поста (то есть, например “3 дня назад”), как в Twitter. Фрагмент кода, представленный ниже, можно вставить где угодно в Цикле (loop) чтобы отображать дату в этом формате.
Скачать исходники для статьи можно ниже
Давайте поэкспериментируем со стандартной wordpress темой Twenty Twelve.
Сделаем отображение даты следующим образом:
Для этого заходим в адммнку wordpress, в левом меню выбираем пункт “Внешний вид”, подпункт “Редактор тем” (“Редактор” в более ранних версиях wordpress), справой стороны выбираем (в поле “Файлы темы”) файл content.php и вставляем следующий код:
<?php echo '<br/>'; ?> <?php echo 'Запись опубликована:'; ?> <?php echo human_time_diff(get_the_time('U'), current_time('timestamp')) . ' назад'; ?>
Вот так это выглядит:
Данный код вставил сразу после отображения заголовка Записи, то есть после тега entry-title или следующего кода:
<h1 class="entry-title"><?php the_title(); ?></h1> <?php else : ?> <h1 class="entry-title"> <a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a> </h1>
Вариант 2: Если Вы хотите, чтобы дата записи отображалась только в формате Twitter, вот так:
Вместо вот этого:
То опять переходим в файл content.php и спускаемся в самый низ кода, а после перед тегом:
</footer><!-- .entry-meta -->
Вставляем наш код:
<?php echo 'Запись опубликована:'; ?> <?php echo human_time_diff(get_the_time('U'), current_time('timestamp')) . ' назад'; ?>
А далее удаляем отображение стандартной даты публикации статьи, для этого нужно найти вот эту строчку:
<?php twentytwelve_entry_meta(); ?>
И удалить её: