User Login History
The plugin helps you to track any visitor’s login details with the following attributes: Login – Login Date-Time Logout – Logout Date-Time Last Seen – Last Seen Date-Time Login Status – Logged in/Logged out/Failed Online Status – Online/Offline/Idle Session Duration – How long the user stayed on your website per session. User ID Username Current Role Old Role – The role while user gets logged in into your website. Browser Operating System IP Address Country Name and Country Code (Based on IP Address) Timezone (Based on IP Address) Mobile (Pro Feature) – Whether the user loggedin with a mobile (e.g. tablet and mobile phone) device. Proxy IP (Pro Feature) – Whether the user loggedin from a proxy IP. Features The User Login History Free Version plugin has all the basic features that will help you to know your website visitors. The User Login History Pro Version plugin has some more premium and useful features along with all the basic features. AUTO LOGOUT (Pro Feature) – Automatically logout idle users every ‘X’ minute. You can also specify roles. This feature is built on WordPress Cron Job. IP ADDRESS CONTROL (Pro Feature) – Allows you to control of masking and hiding of user’s IP address. EMAIL ALERT (Pro Feature) – Allows you to get notified via email for success/failed login. You can also specify roles and modify email templates. AUTO DELETE OLD RECORDS (Pro Feature) – Automatically delete the records older than ‘X’ days. You can also specify the roles. This feature is built on WordPress Cron Job. TRACK SPECIFIC ROLES (Pro Feature) – Allows you to track specific roles only. CSV SEPARATOR (Pro Feature) – Allows you to enter a CSV separator for CSV export. REPORT – TIMESHEET (Pro Feature) – Generate a timesheet report REPORT – NO LOGIN LIST (Pro Feature) – Generate a report of users who have not login for a given date range REPORT – LOGIN DEVICE (Pro Feature) – Generate report of login count based on IP address LOGIN TIME TRACKER – Tracks the date and time of user’s login, logout, last seen, etc. LOGIN STATUS TRACKER – Tracks user’s login status to check if the user is logged in, logged out, failed, etc. ONLINE STATUS TRACKER – Tracks user’s online status to check if the user is online, idle or offline. USER INFORMATION TRACKER – Tracks user’s old role, current role, username, etc. DEVICE INFORMATION TRACKER – Tracks user’s operating system and browser. GEO LOCATION TRACKER – Tracks user’s timezone and country based on IP address. ADVANCED SEARCH FILTER – Filters the records. CSV EXPORTER – Exports the records in csv format. CUSTOMIZABLE SHORTCODE – Renders the records on front-end. PREFERABLE TIMEZONE (DEPRECATED! Will be removed in 3.0) – You can select your preferred timezone to be used for the listing table. MULTISITE NETWORK – On the network admin area, you can see the listing table which shows all the records fetched from all the blogs of the current network. Translations You can download the language files from here. Do you want to translate this plugin to another language? I recommend using POEdit or if you prefer to do it straight from the WordPress admin interface use Loco Translate. When you’re done, post your file on this issue. . You can also translate the plugin online. How to use the plugin? To see all the tracked records in admin, click on the plugin menu shown in the left sidebar. To see all the tracked records of current logged in users in frontend, use the following shortcode: Basic Usage of Shortcode: In your template file: In your content: [user_login_history] Advanced Usage of Shortcode: In your template file: In your content: [user_login_history limit='20' reset_link='custom-uri' columns='ip_address,time_login' date_format='Y-m-d' time_format='H:i:s'] Shortcode Parameters You can use the shortcode to display the login list of the current user. It does not display the login list of other users. Here is the list of all the parameters that you can use in the shortcode. All the parameters are optional. title – Title of the listing table. Default is: empty string limit – Number of records per page. Default is: 20 reset_link – Custom URI of the listing page. For the input “my-login-history”, it will render a reset link with the following URL: www.example.com/my-login-history Default is the full permalink of the current post or page. date_format – A valid date format. Default is: Y-m-d time_format – A valid time format. Default is: H:i:s show_timezone_selector – Whether you want to show timezone selector or not. Any value other than “true” will be treated as “false”. Default is: true roles (Pro Feature): It allows you to set role(s) in the shortcode parameter so that you can see the login list of other users who belong to the role(s). [user_login_history roles=’administrator, editor’] columns – List of column keys used to render columns on the listing table. Default keys are: operating_system, browser, time_login, time_logout Available Column Keys: user_id, username, role, old_role, ip_address, country_name, browser, operating_system, timezone, user_agent, duration, time_last_seen, time_login, time_logout, login_status Geo Tracking The plugin uses a free third party service to detect country and timezone based on IP address. Many projects are using this free service due to which sometimes the server of the service provider becomes slow. This may affect the login functionality of your website. Hence it is recommended that you do not enable this functionality unless you have paid service or reliable service. If you have a paid service, you can contact us to integrate it. Login Statuses Logged in – If the user gets logged in successfully. Logged out – If the user clicks on logout button and gets logged out successfully. Failed – If the user enters invalid credentials. Blocked (DEPRECATED! Will be removed in 3.0) – This is used for the multisite network. By default, a user can login to any blog and then WordPress redirects to the blog on which the user is associated. The plugin saves login info at the blog on which the user logged in but cannot not save the information of the blog on which WordPress redirects the user. You can prevent this behavior by using the plugin setting. Please note that we already removed this status from the pro version plugin but not from the free version yet. Unknown (DEPRECATED! Will be removed in 3.0) – Since we have added a new column “Login Status” in the version 1.7.0, its value will be empty in the database table after upgrading to 1.7.0. To filter such records, you can use this status. Note – In case, a user log in with “Remember Me” and then closes his browser without doing logout, it will show the login status as “Logged in”. Bug Fixes If you find any bug, please create a topic with a step by step description to reproduce the bug. Please search the forum before creating a new topic. Keywords user log, log, logger, detector, tracker, membership, register, sign up, admin, subscriber, editor, contributor, geo location, profile, front end registration, manager, report, statistics, activity, user role editor
Top keywords
- user33×2.76%
- login30×2.51%
- pro14×1.17%
- logged12×1.00%
- ip11×0.92%
- status11×0.92%
- time11×0.92%
- address10×0.84%
- records10×0.84%
- role10×0.84%
- ip address9×0.75%
- logout9×0.75%
Web-Art Login Shield with reCAPTCHA
Web-Art Login Shield with reCAPTCHA protects WordPress authentication, Elementor Login widgets and Elementor Forms. It provides optional Google reCAPTCHA v2/v3, IP lockouts, Advanced login URL protection, IP blocking and REST/XML-RPC protection. It preserves WordPress core authentication logic. No ads, author telemetry or external dashboard. All modules are opt-in and disabled by default. Key Features reCAPTCHA v2/v3 selectable v2 checkbox or v3 score-based verification protection for wp-login.php, Elementor Login and Elementor Forms server-side token, action, score and hostname validation where applicable configurable v3 score threshold one active type at a time configuration verification before activation Elementor support protection for Elementor Login and Elementor Pro Forms native Elementor reCAPTCHA fields are skipped to avoid duplication v2 alignment controls login errors and lockouts remain inside the Login widget dynamic content and Elementor popup support Login Protect per-IP failed-attempt counting and temporary lockouts safe concurrent-request handling active-lockout countdown local security event log with bounded retention optional REST API, Application Password and XML-RPC protection independent operation with or without reCAPTCHA Advanced login URL optional custom login endpoint protection of default login routes while preserving required public actions logout and password-link compatibility emergency wp-config.php recovery constant IP allowlists and blocking separate reCAPTCHA allowlist and Login Protect trusted IP list permanent IP blocking for public site requests with HTTP 403 optional IP | reason notes XML-RPC hardening Optional blocking of: pingback.ping pingback.extensions.getPingbacks system.multicall Security Model Protected flows use fail-closed handling. If an enabled check cannot be completed safely, the request is rejected instead of bypassing protection. Login Protect preserves active lockouts and safely handles concurrent requests. Setting Maximum login attempts or Lockout duration to 0 disables lockout enforcement. All modules remain disabled until enabled. Recovery constants are available in wp-config.php for selected modules. External Services This plugin integrates with Google reCAPTCHA v2 and v3, services provided by Google LLC. reCAPTCHA is disabled by default. Google scripts or verification requests are used only after an administrator enables reCAPTCHA or runs a settings-page verification test. Google’s reCAPTCHA JavaScript (https://www.google.com/recaptcha/api.js) may load on protected wp-login.php requests, pages containing protected Elementor widgets or forms, and the settings page during a verification test. Allowlisted visitors bypass frontend loading where applicable. When reCAPTCHA runs, the visitor’s browser connects directly to Google. Google may process browser, device and interaction information and may set the necessary _GRECAPTCHA cookie under its policies. For server-side verification, the plugin sends the token, configured Secret Key and visitor IP address when available to Google’s siteverify endpoint. It does not include usernames, passwords, email addresses or form contents in that request. The plugin sends no telemetry, analytics or usage data to its author. Google policies: https://policies.google.com/privacy https://policies.google.com/terms Privacy Locally stored security data may include: IP addresses, failed-attempt counts and lockout timestamps a username or email associated with an IP lockout recent events containing an IP address, username or email, source, type and timestamp the latest reCAPTCHA configuration or transport error used for diagnostics permanent IP blocklist entries and optional notes Inactive Login Protect entries become eligible for deletion after seven days. Active lockouts remain until expiry. The event log is limited to 30 entries and 30 days. WordPress privacy tools export or erase records matched to the requested email address or associated account. Unmatched IP-only records remain subject to retention and administrator cleanup. Permanent blocklist entries remain until removed by an administrator. Plugin data can be removed during uninstall when uninstall cleanup is enabled. Legal reCAPTCHA is a trademark of Google LLC. Elementor is a trademark of Elementor Ltd. This plugin is not affiliated with, endorsed by, or sponsored by Google LLC or Elementor Ltd.