GET_USERS/WP_USER_QUERY在注销时返回空

时间:2019-12-19 作者:Benjamin Cuslidge

我有一个相当基本的用户查询,可以在我正在开发的网站上查询工作人员。当您登录WordPress时,它们会显示在前端。但当注销时,它们不会显示。我做了一个var\\u转储,它在注销时返回为空。我找不到任何合乎逻辑的理由。我尝试了不询问角色,但它也做了同样的事情。

<?php
$args = array(
    \'role__in\' => array(\'Staff\')
);

// The Query
$user_query = get_users( $args );
var_dump($user_query);

// User Loop
    foreach ( $user_query as $user ) { ?>

        <?php $job_title = get_field(\'job_title\', \'user_\'. $user->ID ); ?>

        <div class="each-staff">

            <a class="staff-image" href="<?php echo get_author_posts_url( $user->id ); ?>"><img src="<?php echo esc_url( get_avatar_url( $user->ID ) ); ?>" /></a>
            <div class="staff-info">
                <h4 class="staff-name"><a href="<?php echo get_author_posts_url( $user->id ); ?>"><?php echo $user->display_name; ?></a></h4>
                <h5><?php echo $job_title; ?></h5>
            </div>

        </div>

    <?php }
?>  

1 个回复
SO网友:Benjamin Cuslidge

我发现问题出在我们用来为员工创建自定义角色的插件Advanced Access Manager上。默认情况下有一个设置:

用户级过滤器扩展默认WordPress核心用户和角色处理,并确保用户级别较低的用户无法查看或管理级别较高的用户和角色。

这导致它们无法显示在前端。如果有人遇到同样的问题,希望这能有所帮助。

相关推荐