Як показувати пости у WordPress по даті їх оновлення

За замовчуванням у WordPress всі пости сортуються за датою їх публікації. Наприклад, у віджетах, в архівах та категоріях. Але інколи потрібна можливість показувати пости блогу за датою їх оновлення. Наприклад, вам потрібно показувати блок із останніх 10 статей в певному блоці на сайті, але щоб ці статті сортувалися по даті їх останнього оновлення. Припустімо, що вам потрібен блок статей із умовною назвою типу «Останні оновлення статей». І в цьому блоці показувати статті, які ви публікували досить давно, але інформація в яких нещодавно оновилася.

Ручне редагування дати публікації статті у цьому випадку не є варіантом. Тож, якщо ви використовуєте в своїх шаблонах показ дати останньої зміни статті, ви можете окремо виводити список нещодавно оновлених публікацій на своєму сайті WordPress. І в цій статті ми покажемо вам, як це можна зробити.

 

 

Щоразу, коли ви оновлюєте публікацію (навіть якщо ви зробили невеликі коригування статті), WordPress зберігає дату та час цього оновлення в базі даних в якості останньої дати оновлення. Щоб показувати пости у WordPress по даті їх оновлення, нам потрібно буде зробити запит до бази даних, та потім відсортувати статті по цій даті оновлення. Для вирішення цієї задачі ви можете використовувати зовсім невеличкий шмат коду. Скопіюйте та вставте цей код у файл functions.php вашої активної теми:

 

function recentlyupdated_posts_list() {
 //аргументи запиту
 $recentlyupdated_args = array(
  'orderby' => 'modified',
  'ignore_sticky_posts' => '1'
 );

 //цикл для показу останніх 10 оновлених статей
 $recentlyupdated_loop = new WP_Query( $recentlyupdated_args );
 $counter = 1;
 $ullist .= '<ul>';
 while($recentlyupdated_loop->have_posts() && $counter < 10 ) : $recentlyupdated_loop->the_post();
  $ullist .= '<li><a href="' . get_permalink( $recentlyupdated_loop->post->ID ) . '"> ' . get_the_title( $recentlyupdated_loop->post->ID ) . '</a> (Оновлено: '. get_the_modified_date() .') </li>';
  $counter++;
 endwhile;
 $ullist .= '</ul>';
 return $ullist;
 wp_reset_postdata();
}
//додаємо шорткод (shortcode)
add_shortcode('recentlyupdated-posts', 'recentlyupdated_posts_list');

 

 

Оце й усе. Тепер, якщо ви хочете показувати останні оновлені статті на сайті, просто додайте наступний код у потрібний файл-шаблон (наприклад, category.php) вашої теми:

<?php
if (function_exists(recentlyupdated_posts_list)) :
  recentlyupdated_posts_list();
endif;
?>

 

А щоб вставляти блок останніх оновлених публікацій в постах, сторінках чи віджетах WordPress, ви можете використовувати шорткод [recentlyupdated-posts].

 

У WordPress існує багато різних способів сортування статей. Окрім сортування по даті публікації (у зростаючому, зворотному або випадковому порядку), ви також можете показувати статті з використанням сортування за датою останнього їх оновлення. І за допомогою цієї статті ви вже знаєте, як це можна зробити.

 

Чи була для вас ця стаття корисною? Чи є у вас певні питання чи зауваження? Дайте нам знати про це у коментарях нижче.

 

Recent Posts

Наомі Кемпбелл

Дуже багато людей недооцінюють те, що у них є, і переоцінюють те, чого у них…

4 дні ago

Волтер Дісней

Якщо ви можете це уявити, - ви можете це зробити Волтер Дісней  

6 днів ago

Теодор Рузвельт

Варто тільки повірити, що ви можете – і ви вже на півдорозі до цілі Теодор…

1 тиждень ago

Надійна інфраструктура для бізнесу: VPS і виділені сервери в Україні

Успішний бізнес у 2025 році неможливо уявити без стабільної ІТ-інфраструктури. Від корпоративного сайту до CRM-системи…

2 тижні ago

WordPress як Headless CMS 🧠 | практично з REST API

WordPress роками був неперевершеним "монолітом": він відповідав і за зручну адмін-панель, і за збереження даних,…

3 тижні ago

Тандем Nginx + Apache 🤝 Як поєднати швидкість та гнучкість

У світі веб-серверів часто говорять про протистояння Nginx vs Apache. Але що, якби я сказав…

3 тижні ago