About this plugin
ForgePress Country Choice Rules for Gravity Forms lets you define rules that remove specific choices (radio, dropdown, checkbox options) for visitors from selected countries. This happens server-side (secure), and you can configure a fallback choice to auto-select when an option is removed.
Highlights
- Per-country choice blocking for radio, dropdown, and checkbox fields
- Multi-form / multi-field rules (simple repeater UI)
- Fallback choice (optional) if a blocked option is removed
- Server-side filtering (not just CSS/JS hiding)
- Optional VPN/Proxy handling:
- Do nothing
- Show warning message
- Force a default country for rule evaluation
- Block submission with a custom message
- Cloudflare aware ( CF-IPCountry ) with 1h caching for IP lookups
- Lightweight and admin-friendly
>
This plugin is not affiliated with or endorsed by Gravity Forms. It simply integrates with Gravity Forms via its standard hooks.
How it works (in short)
- You add rules: Form ID + Field ID + Choice Text/Value + Countries (+ optional fallback).
- On render/validation, the plugin detects the visitor country.
- If a rule matches, the corresponding choice(s) are removed and an optional fallback is selected.
External Services & Data Flow (Guideline 6)
This plugin may use third-party services to determine the visitor’s country and (optionally) detect VPN/Proxy usage.
-
Cloudflare (if your site is on Cloudflare):
We read the CF-IPCountry header provided by Cloudflare. No outbound request is made by this plugin.
com/privacypolicy/
-
co (free) (default geolocation when Cloudflare is not present):
co/{IP}/json/ to map visitor IP → country.
Data sent: visitor IP only.
Retention: result cached in WordPress for 1 hour.
co/privacy/
-
Optional VPN/Proxy checks (opt-in by the site admin):
- ipregistry.co (if an API key is configured):
Data sent: visitor IP to check proxy/VPN indicators.
co/privacy
- ipapi.com PRO (if an API key is configured):
Data sent: visitor IP with security=1 to check VPN/Proxy/Tor.
com/privacy
No form entries or personal form fields are sent to these providers. Admins can disable optional VPN checks entirely.
GDPR/Privacy: Only an IP address may be sent to the selected provider(s) to derive country/VPN status. You should disclose this in your site privacy policy if enabled.
Notes on Naming / Trademarks
This is an independent plugin for Gravity Forms and is not affiliated with or endorsed by Gravity Forms. The name and readme make this relationship clear.
Features in Detail
- Rule builder UI under Settings → ForgePress Country Choice Rules
- Add multiple rows; each row targets a Form ID + Field ID, the choice label/value, and a list of countries (ISO-2).
- Optionally set a Fallback choice to auto-select if the blocked option is removed.
- Runtime enforcement
- Choices are removed on gform_pre_render and validated on gform_validation.
- If a blocked value is posted manually, validation fails with a clear message.
- VPN/Proxy handling
- Admin can choose: Do nothing, Show warning, Force country, or Block submission.
- Works without an API key (heuristics). With a key (ipregistry/ipapi PRO), detection is more accurate.