Как вывести последние записи в любом месте сайта WordPress

Хотите отобразить последние записи в статье или на другой странице вашего сайта WordPress? Этого можно достичь с помощью шорткода. Давайте разберемся, как его создать и интегрировать.

Для начала вам нужно добавить пользовательский шорткод в файл вашей темы. Это можно сделать, используя файл functions.php вашей активной темы. Вот пример кода, который можно использовать:

function последние_записи($atts) {
$atts = shortcode_atts(array(
'количество' => '5', // Задайте количество записей для отображения
), $atts);
$args = array(
'posts_per_page' => intval($atts['количество']),
'post_status' => 'publish'
);
$query = new WP_Query($args);
$output = '
    '; if ($query->have_posts()) { while ($query->have_posts()) { $query->the_post(); $output .= '
  • ' . get_the_title() . '
  • '; } } else { $output .= '
  • Нет записей для отображения.
  • '; } $output .= '
'; wp_reset_postdata(); return $output; } add_shortcode('последние_записи', 'последние_записи');

После добавления этого кода вы сможете использовать шорткод [последние_записи количество="5"] на любых страницах или в записях вашего сайта, чтобы вывести последние 5 записей. Вы можете изменить значение параметра количество, чтобы отобразить нужное вам число записей.

Также вы можете стилизовать выводимые записи с помощью CSS, добавив классы к элементам списка или обернув их в дополнительные контейнеры. Это поможет сделать ваши записи более привлекательно выглядящими на сайте.

Зачем создавать шорткод?

В WordPress существует стандартный виджет под названием Свежие записи, но он применим только в виджетных зонах. Некоторые темы включают в себя встроенные функции для показа последних постов. Однако эти методы не сработают, если вам необходимо вывести записи в пределах контента, будь то записи, страницы или пользовательские типы.

Решением станет создание собственного шорткода, который можно использовать в любом месте. Благодаря шорткодам вы можете легко интегрировать динамический контент, такой как последние записи, галереи, формы и многое другое, просто добавляя короткую строку кода в редактор. Это не только упрощает процесс редактирования, но и позволяет избежать дублирования кода при использовании одного и того же элемента в нескольких местах сайта.

Создание шорткода позволяет вам также задавать параметры для настройки отображаемого контента, что делает его мощным инструментом для разработчиков и редакторов. Например, вы можете создать шорткод, который выводит только записи определенной категории, или сортирует записи по дате или популярности. Это дает вам больше контроля над тем, как именно будут отображаться материалы на вашем сайте.

Кроме того, использование шорткодов позволяет легко делать изменения и обновления, так как вы можете редактировать код шорткода в одном месте и тем самым обновлять контент сразу везде, где он используется. Это делает шорткоды идеальным решением для улучшения управляемости и гибкости вашего сайта на WordPress.

Как создать шорткод последних записей?

Далее нам предстоит редактировать файл functions.php, который является основным конфигурационным документом вашей WordPress-темы. Если вы не знакомы с редактированием этого файла, вам поможет плагин ProFunctions.

Рекомендуется использовать дочерние темы, чтобы не потерять все изменения после обновлений.

Вставьте следующий код в файл functions.php вашей темы:

Код совместим с любой темой WordPress или плагином.

Чтобы добавить последние записи на страницу или в пост, вставьте в нужном месте следующий шорткод:

[recent_posts num = «5» cat = «7»]

Таким образом, появится список из 5 записей из категории с ID=7. Вы можете изменять атрибуты по своему усмотрению. Шорткод также поддерживает несколько дополнительных атрибутов:

[recent_posts num = «10» cat = «» order = «asc» orderby = «rand»]

Теперь список будет включать 10 записей из любой категории, сортируемых в случайном порядке и отображаемых по возрастанию.

Для изменения отображения последних записей, например, для вывода миниатюр, вы можете дополнить вашу функцию следующим кодом:

function custom_recent_posts_shortcode($atts) {
$atts = shortcode_atts(array(
'num' => '5',
'cat' => '',
'order' => 'DESC',
'orderby' => 'date'
), $atts, 'recent_posts');
$args = array(
'posts_per_page' => $atts['num'],
'category' => $atts['cat'],
'order' => $atts['order'],
'orderby' => $atts['orderby']
);
$recent_posts = new WP_Query($args);
$output = '';
return $output;
}
add_shortcode('recent_posts', 'custom_recent_posts_shortcode');

С помощью этого кода вы сможете выводить не просто список последних записей, но и их миниатюры, заголовки и краткие аннотации с кнопкой «Читать далее».

Оставьте комментарий