User Debug page. */ public function register_debug_page() { add_management_page( esc_html__( 'User Debug', 'user-id' ), esc_html__( 'User Debug', 'user-id' ), 'manage_options', 'user-id-debug', array( $this, 'render_page' ) ); } /** * Render the User Debug page. */ public function render_page() { if ( ! current_user_can( 'manage_options' ) ) { return; } // phpcs:ignore WordPress.Security.NonceVerification.Recommended $search_query = isset( $_GET['user_search_query'] ) ? sanitize_text_field( wp_unslash( $_GET['user_search_query'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended $target_user_id = isset( $_GET['user_id'] ) ? intval( wp_unslash( $_GET['user_id'] ) ) : 0; $user_list = false; // Perform deep search if query provided and no distinct target yet OR target provided if ( ! empty( $search_query ) && ! $target_user_id ) { $user_list = $this->perform_deep_search( $search_query ); // If only 1 user found, auto select them if ( count( $user_list ) === 1 ) { $target_user_id = $user_list[0]->ID; $user_list = false; // clear list mode since we mapped to a single user } } echo '
' . esc_html__( 'User not found.', 'user-id' ) . '
' . esc_html__( 'Enter a user ID, email, username, or search term to discover users.', 'user-id' ) . '
'; } echo '' . esc_html__( 'No users found matching that query.', 'user-id' ) . '
'; return; } echo '| ' . esc_html__( 'ID', 'user-id' ) . ' | '; echo '' . esc_html__( 'Username', 'user-id' ) . ' | '; echo '' . esc_html__( 'Email', 'user-id' ) . ' | '; echo '' . esc_html__( 'Roles', 'user-id' ) . ' | '; echo '' . esc_html__( 'Actions', 'user-id' ) . ' | '; echo '
|---|---|---|---|---|
| ' . esc_html( $u->ID ) . ' | '; echo '' . esc_html( $u->user_login ) . ' | '; echo '' . esc_html( $u->user_email ) . ' | '; echo '' . esc_html( $roles ) . ' | '; echo '' . esc_html__( 'Inspect User', 'user-id' ) . ' | '; echo '
allcaps ) ? array_keys( array_filter( $user->allcaps ) ) : array();
if ( empty( $caps ) ) {
esc_html_e( 'No specific capabilities.', 'user-id' );
} else {
$caps_list = array_map(function($cap) { return '' . esc_html($cap) . ''; }, $caps);
echo wp_kses_post( implode( ', ', $caps_list ) );
}
?>
' . esc_html__( 'No meta found.', 'user-id' ) . '
'; return; } echo '| ' . esc_html__( 'Meta Key', 'user-id' ) . ' | ' . esc_html__( 'Meta Value / Data', 'user-id' ) . ' |
|---|---|
| ' . esc_html( $key ) . ' | '; echo '' . wp_kses_post( $display_value ) . ' | '; echo '