Wordpress - 从每个用户获取最新的自定义帖子

Pet*_*ter 6 wordpress custom-post-type

如何从每个用户获取最新的自定义帖子?

$args = array(  'post_type'      => 'userdatax', 
                'post_status'    => 'publish', 
                'orderby'        => 'post_date',
                'order'          => 'DESC',    
                'posts_per_page' => 999999 );  

$query_res = new WP_Query($args);
Run Code Online (Sandbox Code Playgroud)

Aki*_*Aki 6

根据我下面的代码可以实现你的目标.

试试这段代码

function getUserPosts()
{
    $args = array(
    'order'        => 'ASC',
    ); 
    $users = get_users( $args );

    foreach ($users as $key => $value) {
        // WP_Query arguments
        $args = array(
        'post_type'              => array( 'userdatax' ),
        'post_status'            => array( 'publish' ),
        'author'                 => $value->ID,
        'posts_per_page'         => '-1',
        'order'                  => 'DESC',
        'orderby'                => 'date',
        );

        // The Query
        $query = new WP_Query( $args );

        // The Loop
        if ( $query->have_posts() ) {
        while ( $query->have_posts() ) {
            $query->the_post();
            // do something
            echo the_title();
        }
        } else {
        // no posts found
        }

        // Restore original Post Data
        wp_reset_postdata();
    }
}
add_action('init','getUserPosts');
Run Code Online (Sandbox Code Playgroud)


小智 3

只需将 posts_per_page 更改为 -1 即可

 $args = array(  'post_type'      => 'userdatax', 
            'post_status'    => 'publish', 
            'orderby'        => 'post_date',
            'order'          => 'DESC',    
            'posts_per_page' => -1);  

 $query_res = new WP_Query($args);
Run Code Online (Sandbox Code Playgroud)

  • 这不会对结果产生任何影响... -1 表示没有限制,与 999999 几乎相同。 (2认同)