Releases: nadimtuhin/Facebook-Request-Throttle-WordPress-Plugin
v3.0 — WordPress Auto-Update Integration
What's new
Auto-update from WordPress admin
The plugin now plugs into WordPress's native update system — no more manual download-and-replace.
Minor/patch releases (3.0 → 3.1, 3.1 → 3.2…) apply automatically via WP's background updater — same as plugins from wordpress.org.
Major releases (3.x → 4.x) require a manual tap: an admin notice appears and the Plugins dashboard shows an "Update now" link.
How it works
- Hooks
pre_set_site_transient_update_pluginsto inject the GitHub release into WP's update check - Hooks
auto_update_pluginto allow minors, block majors - GitHub API response cached for 12 hours via WP transient — no repeated API calls
- Fails silently if GitHub is unreachable
Tests
54 PHPUnit tests, all passing. PHPCS 0 errors.
v2.9 — GitHub Update Checker
What's new
GitHub Update Checker
- Admin notice appears when a newer release is available on GitHub
- Checks GitHub releases API with a 12-hour transient cache (no repeated API calls)
- Only visible to users with
update_pluginscapability - Links directly to the latest release page
- Fails silently on network errors — no noise if GitHub is unreachable
Compatibility
- Tested up to WordPress 7.0
- PHP 7.4 – 8.3 supported (8.2/8.3 recommended)
Tests
- 8 new PHPUnit tests for the update checker (44 total, all passing)
Upgrade
No breaking changes. Drop in and activate — update notices will appear automatically when future releases are published.
v2.8 — npm/pnpm/yarn convenience scripts
What's Changed
package.jsonadded for Node package manager convenience:npm test/pnpm test/yarn test→ PHPUnit via Composernpm run lint→ PHPCS WordPress standardnpm run lint:fix→ PHPCBF auto-fixnpm run check→ lint + test
Upgrade Notice
No plugin behaviour changes. Developer tooling only.
v2.7 — WP-CLI support
What's Changed
- WP-CLI command group
wp fb-throttle:wp fb-throttle status— show throttle duration and log summarywp fb-throttle log [--limit=N] [--status=allowed|throttled] [--format=table|json|csv|yaml]wp fb-throttle clear— clear the hit logwp fb-throttle duration [seconds]— get or set throttle duration
.phpcs.xmlruleset for consistent PHPCS runs- 36/36 PHPUnit tests passing
Upgrade Notice
No breaking changes. WP-CLI commands only register when WP-CLI is present.
v2.6 — Dashboard-configurable throttle duration
What's Changed
- Throttle duration configurable from Settings → FB Throttle Log
- Priority: dashboard setting →
FACEBOOK_REQUEST_THROTTLEconstant → 60s default Retry-Afterheader reflects actual configured durationnt_sanitize_throttle_duration()clamps input 1–86400s- 29/29 PHPUnit tests passing
Upgrade Notice
Fully backward compatible. Existing FACEBOOK_REQUEST_THROTTLE defines in wp-config.php still work — dashboard value takes priority.
v2.5 — WordPress coding standards + multi-UA support
What's Changed
- Applied full WordPress coding standards (snake_case, Yoda conditions, tab indent)
- Multi-UA throttle array — both
facebookexternalhitandmeta-externalagentthrottled - Configurable
$nt_user_agents_to_throttleglobal for custom agents - 22/22 PHPUnit tests passing
Upgrade Notice
No breaking changes.
v2.4 — Admin hit log + testbot URL fix
What's Changed
- Admin hit log page under Settings → FB Throttle Log
- Fixed testbot URL override (filter by custom UA in dev)
- Added meta-externalagent to default throttled user agents
Upgrade Notice
No breaking changes.