LinkForge 404
Enterprise-grade WordPress 404 management plugin — async logging, multi-stage rerouting (Exact → Regex → Fuzzy → AI), and GDPR-compliant privacy-by-design.
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/devdorado/linkforge-404/archive/refs/heads/main.zip
LinkForge 404
Enterprise-grade WordPress 404 Management
Built by Devdorado
🚧 Beta Notice: LinkForge 404 is currently in active beta. The plugin is being intensively tested and continuously improved. Feedback, bug reports and feature requests are very welcome — reach out at support@devdorado.com or open an issue on GitHub.
LinkForge 404 turns your WordPress 404 errors into seamless redirects. It intercepts every 404 request and runs it through a multi-stage rerouting cascade before logging it — keeping visitors on your site and protecting your SEO rankings.
Features
| Feature | Description |
|---|---|
| Zero-latency logging | Async buffer via Redis/Memcached (flat-file fallback) — zero DB writes in the frontend lifecycle |
| Multi-stage rerouting | Exact match → Regex patterns → Fuzzy matching (Phase 2) → AI-powered (Phase 3) |
| GDPR-compliant | IP anonymization with HMAC-SHA256 hashing; WordPress Privacy Tools integration |
| Dashboard analytics | At-a-glance stats, searchable 404 log, and one-click resolution |
| Server rules export | Generate Apache .htaccess or Nginx rewrite configs from your redirects |
| WP-CLI support | Full command-line management for developers and CI/CD pipelines |
| Rate limiting | Configurable per-IP limits protect against bot floods |
| Garbage collection | Automated log retention with batched deletion |
Rerouting Cascade
404 Request
│
├─ 1. Exact Match ──── O(log n) B-Tree indexed DB lookup
│
├─ 2. Regex Match ──── PCRE patterns with capture group substitution
│
├─ 3. Fuzzy Match ──── Jaro-Winkler similarity scoring (Phase 2)
│
├─ 4. AI Match ──────── OpenAI embeddings for semantic suggestions (Phase 3)
│
└─ 5. Log ───────────── Aggregated miss recording (async buffer)
Installation
Via ZIP Upload (recommended)
- Download the latest release from GitHub Releases
- In WordPress: Plugins → Add New Plugin → Upload Plugin
- Upload the ZIP, install, and activate
- Navigate to LinkForge 404 → Settings to configure
Via Composer
composer require devdorado/linkforge-404
Requirements
- PHP 8.1+
- WordPress 6.4+
- MySQL 8.0+ / MariaDB 10.6+
- Redis or Memcached recommended for optimal async logging
WP-CLI Commands
# Manage redirects
wp linkforge redirect list
wp linkforge redirect add /old-page /new-page --status=301
wp linkforge redirect add '^/blog/(\d+)' '/posts/$1' --type=regex
wp linkforge redirect delete 42
# Operations
wp linkforge flush # Force buffer flush to DB
wp linkforge gc # Run garbage collection
wp linkforge stats # Show plugin statistics
# Export server rules
wp linkforge export --format=apache
wp linkforge export --format=nginx --output=/tmp/redirects.conf
Architecture
linkforge-404.php ← Bootstrap, autoloader, activation hooks
├── includes/
│ ├── class-linkforge-core.php ← Central orchestrator, REST API
│ ├── class-linkforge-interceptor.php ← 404 intercept + rerouting cascade
│ ├── class-linkforge-logger.php ← Async logging (Redis + file fallback)
│ ├── class-linkforge-privacy.php ← IP anonymization, GDPR integration
│ ├── class-linkforge-redirects.php ← CRUD model + server rules export
│ ├── class-linkforge-garbage-collector.php ← Batched log retention cleanup
│ ├── class-linkforge-activator.php ← DB tables, defaults, cron scheduling
│ └── class-linkforge-deactivator.php ← Cron cleanup on deactivation
├── admin/
│ ├── class-linkforge-admin.php ← Menus, settings, asset enqueueing
│ ├── views/ ← Dashboard, Redirects, Settings pages
│ ├── css/linkforge-admin.css ← Admin styles
│ └── js/linkforge-admin.js ← REST API calls, bulk actions, UI logic
├── cli/
│ └── class-linkforge-cli.php ← WP-CLI commands
└── uninstall.php ← Clean removal (tables + options)
Privacy & GDPR
LinkForge 404 follows Privacy-by-Design principles:
- IP addresses are never stored. They are masked (last octet zeroed) and irreversibly hashed with HMAC-SHA256 before any persistence.
- Integrates with WordPress Privacy Tools (Export/Erase personal data).
- Configurable log retention with automated garbage collection.
- All processing happens server-side — no external API calls in Phase 1.
Roadmap
- [x] Phase 1 — Exact & Regex matching, async logging, admin dashboard, WP-CLI
- [x] Phase 2 — Fuzzy matching (Jaro-Winkler), broken link scanner on post save
- [ ] Phase 3 — AI-powered semantic matching (OpenAI embeddings), multisite support
Contributing
Contributions are welcome! Please open an issue or PR on GitHub.
License
GPL-2.0-or-later — see LICENSE for details.
Made with ❤️ by Devdorado