get_posts – получить все сообщения по id автора

Я хочу получить все сообщения определенного идентификатора автора (текущего пользователя). Позже я хочу выбрать первое сообщение, сделанное этим пользователем (ASC). Думаю, я не использую правильные аргументы в get_posts, не так ли? $ current_user_posts всегда содержит массив со всеми сообщениями в блоге в нескольких разных объектах WP_Post.

global $current_user; get_currentuserinfo(); $args = array( 'author' => $current_user->ID, // I could also use $user_ID, right? 'orderby' => 'post_date', 'order' => 'ASC' ); // get his posts 'ASC' $current_user_posts = get_posts( $args ); 

Я немного смущен. Если вы хотите получить только один элемент из массива posts, вы можете получить его так:

  • сброс ($ current_user_posts) – первое сообщение
  • end ($ current_user_posts) – сообщение lat

Но если вы хотите получить только одну запись с помощью get_posts() вы можете использовать аргумент posts_per_page чтобы ограничить результаты.

 $args = array( 'author' => $current_user->ID, 'orderby' => 'post_date', 'order' => 'ASC', 'posts_per_page' => 1 ); 

Подробнее о параметрах, которые вы можете получить на странице справки класса WP Query ( get_posts() принимает те же параметры, что и запрос WP).

 global $current_user; $args = array( 'author' => $current_user->ID, 'orderby' => 'post_date', 'order' => 'ASC', 'posts_per_page' => -1 // no limit ); $current_user_posts = get_posts( $args ); $total = count($current_user_posts); 

и просто зациклируйте текущие сообщения пользователя