Keep your Joomla site secure and tidy by automatically managing inactive user accounts with the free Task - Inactive Users plugin.
The Task - Inactive Users plugin empowers Joomla administrators to maintain a clean and secure user base by automating the management of inactive accounts. Commissioned by Andrew Berendts, who generously offered this tool to the Joomla community for free, it identifies users who haven’t logged in for a specified period and either deactivates them or triggers custom actions like notifications. Whether you run a community site, membership platform, or e-commerce portal, this free task plugin integrates with Joomla’s task scheduler, CLI, and event system to offer flexibility and extensibility for sites of all sizes.
Overview
Task - Inactive Users is a Joomla task plugin designed to handle inactive user accounts. It provides two tasks: deactivating users after a set period of inactivity and warning users via customizable events. With configurable options to exclude user groups and categorize user notes, it’s ideal for maintaining compliance with data retention policies while keeping your site secure. Tasks can be run via Joomla’s scheduler or triggered manually using the Joomla CLI. Released for free thanks to Andrew Berendts’ contribution, Task - Inactive Users reflects RicheyWeb’s commitment to open-source excellence.
v5.0.1
P
P
How It Works
- Task Configuration: Install the plugin and create a task in Joomla’s scheduler. Choose between Deactivate Inactive Users or Warn Inactive Users, and set the inactivity period (e.g., 1 year) using ISO 8601 duration format.
- User Identification: The plugin queries the Joomla database to find users who haven’t logged in or who registered long ago without activity.
- Task Execution:
- Deactivate Task: Blocks inactive users, adds a note to their account, and triggers the
onInactiveUserDeactivate
event. - Warn Task: Triggers the
onInactiveUserWarn
event, allowing other plugins to send notifications or perform actions.
- Deactivate Task: Blocks inactive users, adds a note to their account, and triggers the
- Execution Options: Run tasks automatically or manually via Joomla’s scheduler or manually using the Joomla CLI command:
php joomla.php scheduler:run -i <task id>
- Customization: Exclude specific user groups (e.g., administrators) and assign notes to a user category for better organization.
- Extensibility: Use the plugin’s events to integrate with notification plugins, logging systems, or other Joomla extensions.
Features
- Flexible Inactivity Periods: Define inactivity duration using ISO 8601 format (e.g., P1Y for 1 year, P6M for 6 months).
- Two Task Options: Deactivate users or warn them via events, giving admins control over account management.
- Event-Driven Design: Leverage
onInactiveUserDeactivate
andonInactiveUserWarn
events for custom actions like email notifications. - CLI Support: Execute tasks manually or via cron with
php joomla.php scheduler:run -i <task id>
for flexible automation. - User Group Exclusions: Protect specific groups (e.g., admins) from deactivation or warnings.
- User Notes: Automatically add categorized notes to deactivated users’ accounts for audit trails.
- Free and Open-Source: Available at no cost under the GPL license, thanks to Andrew Berendts’ commission.
- Joomla 5.x Integration: Built for Joomla’s task scheduler, CLI, and user management system, ensuring compatibility and performance.
You could do this job by hand, but how will the machines ever learn to hate us unless we make them do all of the boring tasks?