Як показувати пости у 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 існує багато різних способів сортування статей. Окрім сортування по даті публікації (у зростаючому, зворотному або випадковому порядку), ви також можете показувати статті з використанням сортування за датою останнього їх оновлення. І за допомогою цієї статті ви вже знаєте, як це можна зробити.
Чи була для вас ця стаття корисною? Чи є у вас певні питання чи зауваження? Дайте нам знати про це у коментарях нижче.