get_posts - получить все сообщения от автора id
-
-
get_currentuserinfo () устарел,начиная с версии 4.5.0.Заменить на: `$ current_user=wp_get_current_user ();`get_currentuserinfo() is deprecated since version 4.5.0. Replace with: `$current_user = wp_get_current_user();`
- 1
- 2017-05-15
- Christian Lescuyer
-
3 ответ
- голосов
-
- 2013-08-12
Я немного запуталась.Если вы хотите получить только элемент из массива сообщений,вы можете получить его так:
- reset ($ current_user_posts) - первое сообщение
- end ($ current_user_posts) - широта сообщения
Но если вы хотите получить только одно сообщение с помощью
get_posts()
,вы можете использовать аргументposts_per_page
для ограничения результатов.$args = array( 'author' => $current_user->ID, 'orderby' => 'post_date', 'order' => 'ASC', 'posts_per_page' => 1 );
Дополнительную информацию о параметрах вы можете получить на странице WP Query Class Reference (
get_posts()
принимает те же параметры,что и WP Query).I'm a bit confused. If you want to get onlya element from the posts array you can get it like this:
- reset($current_user_posts) - first post
- end($current_user_posts) - lat post
But if you want to get just one post with the
get_posts()
you can use theposts_per_page
argument to limit the results.$args = array( 'author' => $current_user->ID, 'orderby' => 'post_date', 'order' => 'ASC', 'posts_per_page' => 1 );
More info about parameters you can get on WP Query Class Reference page (
get_posts()
takes same parameters as WP Query).-
ваши $ args работают нормально,но я не получил вашего первого ответа.Как использовать $ current_user_posts.Не могли бы вы показать мне?your $args work fine but I don't get your first answer. How to use $current_user_posts. Could you show me?
- 1
- 2013-08-12
- kindo
-
Если вы хотите распечатать заголовок первого сообщения,вы должны использовать: `echo $ current_user_posts [0] ['title']`.«Заголовок» - это ключ к тому,что вам нужно от массива.Полный список ключей,которые вы можете получить с помощьюprint_r (array_keys ($ current_user_posts)). «Как использовать» зависит от того,что вы хотите с ним делать.If you want to print the title of the first post you should use: `echo $current_user_posts[0]['title']`. The 'title' is the key for what you need from array. The full list of keys you cang get with `print_r(array_keys($current_user_posts))`. "How to use" it depends on what you want to do with it.
- 0
- 2013-08-12
- Marin Bînzari
-
получитьid автора первого постаget the author's first post's id
- 0
- 2013-08-12
- kindo
-
Вы можете получить идентификатор с помощью: $ current_user_posts [0] ['ID']You can get the id with: $current_user_posts[0]['ID']
- 0
- 2013-08-12
- Marin Bînzari
-
@kindo,помогло?Это тот ответ,который вам нужен?@kindo, did it helped? Is this the answer you needed?
- 0
- 2013-08-12
- Marin Bînzari
-
$ current_user_posts [0] ['ID'] не работает.но первое решение с добавлением 'numberposts' или 'posts_per_page' (используется равно) работает нормально.ты$current_user_posts[0]['ID'] does not work. but the first solution with adding 'numberposts' or 'posts_per_page' (used equal) works fine. ty
- 0
- 2013-08-12
- kindo
-
@kindo,извини,забыл,что `get_posts ()` возвращает массив постовых объектов.Используйте `$ current_user_posts [0] -> ID`@kindo, Sorry, forgot that `get_posts()` returns array of post objects. Use `$current_user_posts[0]->ID`
- 0
- 2013-08-12
- Marin Bînzari
-
Последнее решение теперь тоже работает.The last solution now also works.
- 0
- 2013-08-12
- kindo
-
- 2016-09-09
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);
и просто зацикливайте сообщения текущего пользователя
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);
and just loop the current user posts
-
Можете ли вы также объяснить,что делает приведенный выше код помимо публикации кода,это будет полезно,спасибоCan you also explain what the above code does in addtion to posting the code, it will be helpful, thanks
- 0
- 2016-09-09
- bravokeyl
-
- 2018-07-08
его работа (wp4.9.7)
$user_id = get_current_user_id(); $args=array( 'post_type' => 'POSTTYPE', 'post_status' => 'publish', 'posts_per_page' => 1, 'author' => $user_id ); $current_user_posts = get_posts( $args ); $total = count($current_user_posts); wp_die( '<pre>' . $total . '</pre>' );
its work by (wp4.9.7)
$user_id = get_current_user_id(); $args=array( 'post_type' => 'POSTTYPE', 'post_status' => 'publish', 'posts_per_page' => 1, 'author' => $user_id ); $current_user_posts = get_posts( $args ); $total = count($current_user_posts); wp_die( '<pre>' . $total . '</pre>' );
Я хочу получать все сообщения определенного автора (текущего пользователя).Позже я хочу выбрать первое сообщение,сделанное этим пользователем (ASC). Полагаю,я не использую правильные аргументы вget_posts,не так ли?$ current_user_posts всегда содержит массив со всеми сообщениями в блоге в нескольких разных объектах WP_Post.