Jak dodać dynamicznie zmieniający się czas pod wpisami na WordPressie?

  • Poziom trudności:

Ile ludzi tyle sposobów podawania daty od ostatniego wpisu. Niektórzy preferują dokładną datę z pełną nazwą miesiąca. Perfekcjoniści podają nie tylko dokładną datę ale również godzinę, minutę i sekundę publikacji. Ostatnio zacząłem się zastanawiać nad najlepszą formą prezentowania daty i jeśli posiadamy prywatnego bloga, a nie stronę urzędu to sympatycznym urozmaiceniem będzie modyfikacja daty standardowej na datę generowaną na bieżąco.

Taką datę możesz zobaczyć w tym wpisie pod tytułem. WordPress na bieżąco przelicza godziny i dni od ostatniej publikacji i aktualizuje tą pozycję dla wszystkich stron.

Modyfikacja daty w WordPressie jest banalnie prosta. Wystarczy wkleić do pliku functions.php (możesz go edytować z pozycji panelu administracyjnego wchodząc do Wygląd -> Edytor) poniższy kod:

add_filter('the_time', 'dynamictime');
 function dynamictime() {
   global $post;
   $date = $post->post_date;
   $time = get_post_time('G', true, $post);
   $mytime = time() - $time;
   if($mytime < 60){
     $mytimestamp = __('Przed chwilą');
   }else{
     $mytimestamp = sprintf(__('%s temu'), human_time_diff($time));
   }
   return $mytimestamp;
 }

W razie potrzeby linię 8 i 10 możesz modyfikować według własnych potrzeb. Domyślny komunikat „Przed chwilą” będzie się wyświetlał do minuty od publikacji. Po minucie metadane będą się wyświetlały według poniższego schematu:

  • 1 minutę temu
  • 1 godzinę temu
  • 1 miesiąc temu

UDOSTĘPNIJ