365i Queue Optimizer is an ultra-lightweight WordPress plugin designed to optimize ActionScheduler performance for faster image processing and background task execution. It automatically detects your server environment and recommends optimal settings. Perfect for sites using image optimization plugins, WooCommerce, or any plugin that relies on ActionScheduler.
What This Plugin Does
This plugin applies essential ActionScheduler optimizations with intelligent server detection:
- Time Limit Control - Sets how long ActionScheduler processes tasks (default: 60 seconds, configurable 10-300)
- Concurrent Batch Processing - Controls simultaneous background processes (default: 4 batches, configurable 1-10)
- Batch Size Control - Sets how many actions to process per batch (default: 50, configurable 25-200)
- Data Retention - Controls how long completed action logs are kept (default: 7 days, configurable 1-30)
- Image Processing Engine - Prioritizes your chosen image processor (ImageMagick by default, GD fallback)
Key Features
- Dashboard Widget - At-a-glance queue status on your WordPress dashboard with health indicators
- Server Detection - Automatically detects your hosting type (Shared, VPS, Dedicated) and recommends optimal settings
- One-Click Optimization - Apply recommended settings instantly based on your server environment
- Run Queue Now - Manually trigger queue processing when you need immediate results
- Ultra-Lightweight - Minimal server impact with no complex logging or debugging overhead
- Simple Configuration - Clean settings page under Tools > Queue Optimizer
- Instant Results - Optimizations apply automatically after activation
- WordPress Standards - Follows all WordPress coding and security standards
- ImageMagick-First Defaults - Prefers ImageMagick for better quality and stability when available
Perfect For
- Image Optimization - Faster processing with Elementor Image Optimizer, Smush, ShortPixel, etc.
- WooCommerce Sites - Better handling of product imports, order processing, and bulk operations
- High-Volume Sites - Improved performance for sites with large background task queues
- Plugin Compatibility - Works with any plugin that uses ActionScheduler
Philosophy
Simple, fast, and effective. This plugin does one thing well: optimize ActionScheduler performance with minimal overhead and maximum compatibility.
1.7.0 - 2025-01-20
Inline Help Documentation
- Added help popovers with detailed explanations for each setting
- Click the (?) icon next to any field to see what it does and recommended values
- Help content includes server-specific recommendations and tips
- Fully accessible with keyboard navigation and screen reader support
- Mobile-friendly design that works on all screen sizes
1.6.0 - 2025-01-20
Improved Settings UX
- Server type dropdown now auto-populates recommended settings immediately when changed
- No need to save first before applying recommendations - settings update instantly via AJAX
- "Apply Recommended Settings" button still works as a shortcut
- Streamlined workflow: select server type, adjust if needed, save once
1.5.0 - 2025-01-10
Server Detection Improvements
- Fixed server detection being too optimistic (shared hosting incorrectly detected as dedicated)
- Added manual server type override setting - choose Shared, VPS, or Dedicated manually
- More conservative auto-detection thresholds (requires 1GB+ for dedicated, 512MB+ for VPS)
- Lowered recommended settings to safer defaults that work better on shared resources
- Default fallback changed from VPS to Shared for unknown environments
Changed Recommended Settings:
- Shared: 30s time limit, 1 batch, 25 actions, 3 days retention
- VPS: 45s time limit, 2 batches, 35 actions, 5 days retention
- Dedicated: 60s time limit, 4 batches, 50 actions, 7 days retention
1.4.2 - 2025-01-10
- Added save notification that appears when settings are saved and auto-dismisses after 3 seconds
1.4.1 - 2025-01-10
- Added WordPress Playground blueprint.json for Live Preview support
- Fixed Contributors field to use valid WordPress.org username
1.4.0 - 2025-01-10
Dashboard Widget & Server Detection
Major feature update adding intelligent server detection and a dashboard widget for at-a-glance queue monitoring.
Added:
- Dashboard widget showing queue health, pending/running/failed counts
- Server environment detection (Shared, VPS, Dedicated hosting)
- Recommended settings based on detected server type
- "Apply Recommended Settings" one-click optimization button
- "Run Queue Now" button on both settings page and dashboard widget
- Batch size setting (25-200 actions per batch)
- Data retention setting (1-30 days for completed action logs)
- Queue status display with breakdown by action hook type
- Server environment info panel (PHP, WordPress, memory, image libraries)
-
Image processing capabilities display (WebP, AVIF support)
Changed:
-
Enhanced settings page with two-column layout
- Improved current settings display with recommended value indicators
-
Updated admin styling for better visual hierarchy
Fixed:
-
Plugin Check compliance (translators comments, variable prefixes, output escaping)
-
Removed deprecated load_plugin_textdomain() call (handled by WordPress 4.6+)
Technical:
-
New dashboard widget class with health status calculation
- Server type detection based on memory and execution time
- AJAX handlers for queue running and settings application
- Enhanced uninstall script to clean up all plugin data
1.3.1 - 2025-12-17
- Removed the Post-Upload Processing setting and associated upload completion trigger to avoid slowing uploads.
- Simplified the settings and status UI to match the streamlined feature set.
- Switched ImageMagick to the default/recommended image engine across settings and activation defaults.
- Cleaned uninstall logic to drop legacy upload-processing options.
1.3.0 - 2025-06-16
- Added capability checks to restrict upload-triggered queue runs to users who can upload files.
- Bound upload completion handling to the core uploader instead of overriding prototypes for WordPress 6.9 compatibility.
- Broadened admin screen detection (with a new filter) so CPT uploads trigger background processing.
- Loaded the plugin text domain for translations and tighter repository compliance.
- Throttled the fallback metadata hook to fire queue runs once per request.
- Tested up to WordPress 6.9 and raised minimum PHP to 8.0.
1.2.0 - 2025-06-16
Revolutionary JavaScript-Based Post-Upload Processing (removed in 1.3.1)
This major update introduces a groundbreaking approach to post-upload processing that completely eliminates upload slowdowns while maintaining instant ActionScheduler optimization.
Added:
- JavaScript-based upload detection using WordPress media uploader events
- Post-upload processing that triggers ActionScheduler after uploads complete
- AJAX handler for clean upload completion notifications
- Backward compatibility with automatic option migration
-
Enhanced security with WordPress-approved form data handling
Performance Improvements:
-
Eliminated upload slowdowns completely
- Precise detection using WordPress's native UploadComplete event
- Zero guesswork - no delays or rate limiting needed
-
Optimized for both single and bulk upload scenarios
Security:
-
Fixed WordPress Plugin Check security warnings
- Removed direct $_POST access for enhanced security
-
Added safer AJAX action detection methods
Technical:
-
New JavaScript file: assets/js/upload-complete-trigger.js (removed in 1.3.1)
- Enhanced main class with upload detection capabilities
- Updated settings terminology from "Immediate Processing" to "Post-Upload Processing"
- Smart script loading only on relevant admin pages
1.1.0 - 2025-06-15
WordPress Repository Preparation
Major restructuring to make the plugin ready for WordPress repository submission.
Added:
- Security files: index.php protection in all directories
- LICENSE.txt: Full GPL v2 license text for repository compliance
- uninstall.php: Proper WordPress uninstall script
- Translation support: languages/365i-queue-optimizer.pot template file
- Template system: Separated HTML from PHP with dedicated template files
- JavaScript enhancement: assets/js/admin.js for form validation and UX
- Filter hooks: Added extensibility filters around data arrays
-
Screenshots: Added screenshot-1.png and screenshot-2.png for WordPress repository
Changed:
-
Directory structure: Reorganized to use src/ for PHP logic, templates/ for HTML
- Code separation: Moved main class to src/class-queue-optimizer-main.php
- Template architecture: Created templates/admin/ and templates/partials/ structure
- Asset management: Enhanced CSS with form validation styles
-
Extensibility: Added filters for time_limit, concurrent_batches, and image_editors
Technical Improvements:
-
WordPress standards: Full compliance with WordPress coding standards
- PSR-4 structure: Proper autoloading-ready file organization
- Template partials: Reusable header.php and footer.php components
- Enhanced security: Directory protection and proper file structure
- Repository ready: All WordPress.org plugin directory requirements met
1.0.0 - 2025-06-15
Initial Release
A lightweight WordPress plugin designed to optimize ActionScheduler queue processing for faster image optimization and background tasks.
Features:
- ActionScheduler Time Limit Optimization (10-300 seconds, default: 60)
- Concurrent Batch Processing Control (1-10 batches, default: 4)
- Image Processing Engine Priority (GD/ImageMagick selection)
- Clean Settings Interface under Tools > Queue Optimizer
- Current Status Display showing optimization health
-
Ultra-Lightweight Architecture (only 5 files)
Core Functionality:
-
action_scheduler_queue_runner_time_limit filter
action_scheduler_queue_runner_concurrent_batches filter
-
wp_image_editors filter for engine prioritization
Technical Details:
-
WordPress 5.8+ and PHP 7.4+ required
- WordPress coding standards compliant
- Singleton pattern for efficient resource usage
- Proper settings validation and sanitization
- Complete cleanup on uninstall