Scoring Formula
The health score (0–100) is the weighted sum of 4 category scores:
| Category | Weight | Checks |
|---|---|---|
| Environment | 35% | PHP/WP version, SSL, memory, disk, extensions, cron |
| Plugins | 25% | Update status, vulnerabilities, orphaned tables |
| Performance | 25% | TTFB, DB table sizes, autoload options, transients, revisions |
| Content | 15% | Posts without images, orphaned media, stale drafts, excerpts |
Each check returns one of: pass (full points), warning (partial deduction), fail (full deduction).
Environment Checks (OIntel_Checks)
phpOIntel_Checks::check_php_version(): array // pass if PHP >= 8.0
OIntel_Checks::check_wp_version(): array // pass if WP >= 6.0
OIntel_Checks::check_ssl(): array // checks HTTPS + cert expiry
OIntel_Checks::check_memory_limit(): array // pass if >= 256MB
OIntel_Checks::check_disk_space(): array // warning at <1GB, fail at <100MB
OIntel_Checks::check_php_extensions(): array // curl, openssl, mbstring, etc.
OIntel_Checks::check_cron(): array // WP-Cron enabled and not blocked
OIntel_Checks::check_file_permissions(): array // wp-config.php perms
Performance Checks
phpOIntel_Checks::check_ttfb(): array // HTTP request to home URL
OIntel_Checks::check_db_table_sizes(): array // flags tables > 100MB
OIntel_Checks::check_autoload_options(): array // warn if autoload total > 1MB
OIntel_Checks::check_transients(): array // warn if expired transients > 500
OIntel_Checks::check_post_revisions(): array // warn if revisions > 1000