Описание
Получает последние посты блога.
По умолчанию будут получены 10 последних постов.
wp_get_recent_posts() работает на базе get_posts().
Функция возвращает список постов в виде двумерного массива данных (не объекта).
Использование
<?php wp_get_recent_posts( $args ) ?>
Шаблон использования
$args = array(
'numberposts' => 10
,'offset' => 0
,'category' => 0
,'orderby' => 'post_date'
,'order' => 'DESC'
,'include' => ''
,'exclude' => ''
,'meta_key' => ''
,'meta_value' => ''
,'post_type' => 'post'
,'post_status' => 'draft, publish, future, pending, private'
,'suppress_filters' => true
);
$result = wp_get_recent_posts($args);
foreach($result as $post){
// вывод
}
Параметры
- $args (число)
Массив аргументов по которым нужно получить последние посты, какие аргументы можно использовать смотрите в описании query_posts(). Аргументы добавлены в версии 3.1, до этого в этот параметр передавалось число — сколько последних постов выводить.
По умолчанию: параметры по умолчанию
Примеры
1. Последние записи
Выведем список из 6-ти ссылок на последние уже опубликованные записи из категории 5:
<?php
$args = array(
'numberposts' => 6
,'category' => 5
,'post_status' => 'publish'
);
$result = wp_get_recent_posts($args);
foreach( $result as $p ){
?>
— <a href="<?php echo get_permalink($p['ID']) ?>"><?php echo $p['post_title'] ?></a><br />
<?php
}
?>
2. Для версий ниже 3.1
Работает для версий ниже 3.1. Это пример, показывает как использовать функцию wp_get_recent_posts, для того чтобы вывести список из 7 последних постов на экран. Список будет в виде ссылок на посты.
<ul>
<li>
<h2>Posts Recentes</h2>
<ul>
<?php
$recent_posts = wp_get_recent_posts(7);
foreach($recent_posts as $post){
echo '<li><a href="' . get_permalink($post["ID"]) . '" title="'.$post["post_title"].'" >' . $post["post_title"].'</a> </li> ';
} ?>
</ul>
</li>
</ul>
Данные, возвращаемые для каждого поста
- ID
- (число) Идентификатор записи.
- post_author
- (число) Идентификатор автора записи.
- post_date
- (строка) Дата записи в формате YYYY-MM-DD HH:MM:SS (с учетом исправления времени).
- post_date_gmt
- (строка) Дата записи в формате YYYY-MM-DD HH:MM:SS (время по Гринвичу (GMT)).
- post_content
- (строка) Текст записи.
- post_title
- (строка) Заголовок записи.
- post_excerpt
- (строка) Цитата записи.
- post_status
- (строка) Статут записи, может быть: publish|pending|draft|private|static|object|attachment|inherit|future|trash.
- comment_status
- (строка) Возможность комментирования для записи, может быть: open|closed|registered_only.
- ping_status
- (строка) Статус пингов/трэкбэков, может быть: open|closed.
- post_password
- (строка) Пароль записи.
- post_name
- (строка) Имя записи (слаг). Название которое обычно используется в УРЛ-е.
- to_ping
- (строка) УРЛ-ы из статьи, на которые нужно отправить уведомления при обновлении поста.
- pinged
- (строка) УРЛ-ы из статьи, которые уже получили уведомления.
- post_modified
- (строка) Дата изменения записи в формате YYYY-MM-DD HH:MM:SS (с учетом корректировки времени).
- post_modified_gmt
- (число/строка) Дата изменения записи в формате YYYY-MM-DD HH:MM:SS (время по Гринвичу (GMT)).
- post_parent
- (число) ID родительской страницы (отлично от нуля у прикрепленных типов записей).
- guid
- (строка) Ссылка на запись. Важно: использовать этот параметр в качестве постоянной ссылки для поста неправильно, если версия вашего WordPress выше 2.5. Это уникальный идентификатор записи, который позднее стал ссылкой на запись.
- menu_order
- (число) Порядковый номер для построения меню (используется для постоянных страниц).
- post_type
- (строка) Тип записи (post|page|attachment).
- post_mime_type
- (строка) Миме тип записи (jpg|png|zip|pdf и т.д.). Используется для прикрепленных записей.
- comment_count
- (число) Количество комментариев у записи.
wp_get_recent_posts()
из файла: /wp-includes/post.php WP 3.3.2function wp_get_recent_posts( $args = array(), $output = ARRAY_A ) {
if ( is_numeric( $args ) ) {
_deprecated_argument( __FUNCTION__, '3.1', __( 'Passing an integer number of posts is deprecated. Pass an array of arguments instead.' ) );
$args = array( 'numberposts' => absint( $args ) );
}
// Set default arguments
$defaults = array(
'numberposts' => 10, 'offset' => 0,
'category' => 0, 'orderby' => 'post_date',
'order' => 'DESC', 'include' => '',
'exclude' => '', 'meta_key' => '',
'meta_value' =>'', 'post_type' => 'post', 'post_status' => 'draft, publish, future, pending, private',
'suppress_filters' => true
);
$r = wp_parse_args( $args, $defaults );
$results = get_posts( $r );
// Backward compatibility. Prior to 3.1 expected posts to be returned in array
if ( ARRAY_A == $output ){
foreach( $results as $key => $result ) {
$results[$key] = get_object_vars( $result );
}
return $results ? $results : array();
}
return $results ? $results : false;
}Связанные Функции
Ещё из раздела
Смотрите также: Функции WordPress и Теги Шаблона.

Спасибо вам большое. Попалась красивая тема, которая не поддерживает виджеты. Для того чтобы вывести последние записи - использовал wp_get_recent_posts. Все получилось быстро, без шума и пыли. Код примера поставил прямо в код страницы боковой колонки. Запустилось сразу. Респект администрации.
На здоровье! Тут нет администрации, всего лишь я
Огромное спасибо...
Сам изучаю php но вот изменять вордпресс пока тяжко получается..
Вам признателен