繁体   English   中英

如何从最新的 10 个 wordpress 中随机获得 5 个帖子?

[英]How to get random 5 posts from latest 10 wordpress?

我正在尝试从最近的 10 个随机帖子中获取 5 个随机帖子,但我仅以随机顺序获得最后 5 个帖子

我的代码是:

    $args = array(
        'numberposts' => 10,
        'offset'      => 0,
        'post_type'   => job_listing,
        'orderby'     => 'post_date',
        'order'       => 'DESC',
        'posts_per_page' => 5,
        'post_status' => 'publish'
    );

    $Latest = wp_get_recent_posts( $args, ARRAY_A );
    shuffle($Latest);

    return $Latest;

我是否遗漏了一些不会给我最近 10 个随机帖子的内容,而只是从最后 5 个中随机排序的内容?

谢谢,

'posts_per_page' => 10,

改变回报

return array_slice($Latest, 0, 5); 

因为posts_per_page = 5,所以你只有最后5个。

尝试像这样改变它

posts_per_page => 10

而不是使用shuffle ,请参阅以下代码,您将从最近的 10 个中随机获得 5 个。

  $args = array(
        'numberposts' => 10,
        'offset'      => 0,
        'post_type'   => job_listing,
        'orderby'     => 'post_date',
        'order'       => 'DESC',
        'posts_per_page' => 10,
        'post_status' => 'publish'
    );

    $Latest = wp_get_recent_posts( $args, ARRAY_A );

    $new_array_latest = [];
    do {
       $new_array_latest[] = $Latest[array_rand($Latest ,1)];
    }while(count(array_unique($new_array_latest)) < 5);


    return array_unique($new_array_latest);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM