Developer Reference
Constants
| Constant | Value | Description |
|---|---|---|
SCRAPERBLOCK_PRO_VERSION | 1.0.0 | Pro version |
SCRAPERBLOCK_PLUGIN_FILE | __FILE__ | Plugin file path |
Pro Filters
| Filter | Arguments | Description |
|---|---|---|
scraperblock_pro_behavioral_signals | $signals (array), $request | Modify behavioral detection signals |
scraperblock_pro_is_geo_blocked | $blocked (bool), $country (string) | Override geo block decision |
scraperblock_pro_ip_is_blocked | $blocked (bool), $ip (string) | Override IP blocklist decision |
scraperblock_pro_ip_is_whitelisted | $allowed (bool), $ip (string) | Override IP allowlist decision |
scraperblock_pro_analytics_event | $event (array) | Modify or cancel analytics event; return false to skip |
Pro Actions
| Action | Arguments | Description |
|---|---|---|
scraperblock_pro_honeypot_triggered | $ip (string) | Fires when honeypot is visited |
scraperblock_pro_behavioral_blocked | $ip (string), $signals (array) | Fires on behavioral detection block |
scraperblock_pro_threat_feed_updated | $updated_at (string) | Fires after threat feed sync |
scraperblock_pro_alert_sent | $data (array) | Fires after email alert is sent |
Pro Settings Defaults
| Key | Default | Description |
|---|---|---|
behavioral_detection | yes | Enable behavioral analysis |
content_poisoning | no | Enable content poisoning |
honeypot_traps | yes | Enable honeypot traps |
geo_blocking | no | Enable country blocking |
blocked_countries | [] | Blocked country codes |
realtime_threat_feed | yes | Subscribe to threat feed |
email_alerts | no | Enable email notifications |
alert_email | '' | Alert recipient |
multisite_support | no | Network-wide management |
woocommerce_protection | no | WooCommerce endpoint protection |
woocommerce_strict_rate_limit | yes | Stricter WC rate limit |
woocommerce_requests_per_minute | 120 | WC rate limit threshold |
enable_ip_access_control | no | IP allowlist/blocklist |
blocked_ips | [] | Blocked IPs/ranges |
whitelisted_ips | [] | Allowed IPs/ranges |
block_scheduling | no | Time-based blocking |
active_hours_start | 00:00 | Block active start |
active_hours_end | 23:59 | Block active end |