Много сайтов, специализирующихся на социальных сетях, каких как Twitter, Digg, Reddit используют формат отображения даты, который называют «времени прошло». То есть, если Вы поместили сообщение 1 июля, а сегодня 23 июля,
то дата будет отображаться так: «Прошло 22 дня». Чтобы сделать такой формат отображения времени на своем сайте, Вам нужно добавить следующую функцию к файлу темы functions.php.
function timeAgo($timestamp, $granularity=2, $format='Y-m-d H:i:s'){ $difference = time() - $timestamp; if($difference < 0) return '0 секунд прошло'; elseif($difference < 864000){ $periods = array('недель' => 604800,'дней' => 86400,'часов' => 3600,'минут' => 60,'секунд' => 1); $output = ''; foreach($periods as $key => $value){ if($difference >= $value){ $time = round($difference / $value); $difference %= $value; $output .= ($output ? ' ' : '').$time.' '; $output .= (($time > 1 && $key == 'дней') ? $key.'секунд' : $key); $granularity--; } if($granularity == 0) break; } return ($output ? $output : '0 секунд').' прошло'; } else return date($format, $timestamp); }
Теперь можно легко применять функцию отсчета дней везде. Нужно лишь размещать следующий код всюду в главном цикле, где необходимо выводить дату в формате «Времени прошло».
$time = timeAgo($dateRef);
Советую подписаться на очень интересный блог —- Блог о дизайне и сео



