Redirect user based on role when they try access a particular page

function redirect_non_vendors() { global $wp; $user = wp_get_current_user(); $role_needed = ‘vendor’; $page_to_check = ‘secret/page/url’; $redirect_url = home_url( ‘/go-here/’ ); if ( ! in_array( $role_needed, (array) $user->roles ) && $page_to_check === $wp->request ) { wp_redirect( $redirect_url ); exit; } } add_action( ‘template_redirect’, ‘redirect_non_vendors’ ); You’ll want to replace three things here: vendor: the role that someone … Read more

Extend user search in the Wp backend area on the users.php page to allow for searching by email domain and role from the “users search” input box

You can do this more simply by using the pre_get_users hook, grab the search string extract the role from it and add that as a role parameter for WP_User_Query. Edited my original code, here’s a refined version, bit cleaner. Additional edit: Scroll further down for update (see follow-up). class wpse_410251_user_search { private $role = false; … Read more