随机用户总是显示相同的8个用户

时间:2021-01-27 作者:user8463989

我试图在页面上显示一些随机用户。它正在更改显示的用户顺序,但它只显示相同的用户,而不是随机显示数据库中的所有用户。

因此,它目前显示了8个用户,但总是相同的用户,只是顺序不同。我有100个用户,它不应该总是显示相同的8个。

    <?php $args = array(
            \'role__in\' => array( \'member\' ),
            \'exclude\' => array( 37, 1 ),
            \'orderby\' => \'rand\'
          );
        $wp_user_query = new WP_User_Query($args);
        $members = $wp_user_query->get_results();
    ?>

1 个回复
最合适的回答,由SO网友:cjbj 整理而成

事实上rand 不是的有效参数orderbyWP_User_Query 类(它位于WP-Query 类)。因此,它应该默认为user_login, 给你一个按字母顺序排列的列表。此外,您应该让所有符合memberexclude 来自此查询的条件,而不仅仅是8个。

这表明有其他代码干扰您的代码。

我的建议是从添加\'number\' => 100$args. 这应该推翻任何限制结果数量的其他代码。然后您可以使用shuffle 要随机化返回的数组或从数组中拾取一些随机元素,请使用array_rand.

相关推荐

GET_USERS/WP_USER_QUERY在注销时返回空

我有一个相当基本的用户查询,可以在我正在开发的网站上查询工作人员。当您登录WordPress时,它们会显示在前端。但当注销时,它们不会显示。我做了一个var\\u转储,它在注销时返回为空。我找不到任何合乎逻辑的理由。我尝试了不询问角色,但它也做了同样的事情。<?php $args = array( \'role__in\' => array(\'Staff\') ); // The Query $user_query = get_use