The plugin uses the pre_user_query action hook on line 231 of the file class-obenland-wp-approve-user.php
There is something going on in there that makes the unapproved users listing page to not work, and it even looks like it has to deal with some issues causing an infinite loop and the page not loading at all.
I have fixed it by adding this code to my site:
public function fix_wpau_filter( WP_User_Query $query ) {
if ( ! is_admin() ) {
return;
}
global $pagenow;
if ( $pagenow !== 'users.php' || ! isset( $_GET['role'] ) || $_GET['role'] !== 'wpau_unapproved' ) {
return;
}
$query->set( 'role', '' );
$query->set( 'meta_query', array(
array(
'key' => 'wp-approve-user',
'value' => false
)
) );
}
add_action( 'pre_get_users', 'fix_wpau_filter', 10, 1 );
With this, I can remove the plugin’s function code and the unapproved users page displays all unapproved users properly. The plugins function can be removed, but it will also work without removing it. This means that the developer should drop the use of the pre_user_query and use pre_get_users instead. He can make an adaptation of the code I’ve provided.
If you are someone experiencing this issue, just add the code I’ve provided to your functions.php, you don’t need to do anything else.
I hope the author of the plugin can fix this soon so that we don’t require this fix anymore.