=== IPGeolocationAPI Geo & Threat ===
Contributors: kmOasif
Tags: ip geolocation, geolocation, ip lookup, vpn, api
Requires at least: 5.8
Tested up to: 7.1
Stable tag: 1.0.3
License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Add a free IP geolocation API to your WordPress site. Look up any IP address or domain and show country, city, ASN, ISP, timezone, currency, and threat signals.

== External Services ==

This plugin calls third-party services:

* IPGeolocationAPI.io (IP geolocation and threat data): [Terms of Service](https://ipgeolocationapi.io/terms) and [Privacy Policy](https://ipgeolocationapi.io/privacy)
* OpenStreetMap (optional map embeds): [Terms](https://wiki.osmfoundation.org/wiki/Terms_of_Use) and [Privacy Policy](https://wiki.osmfoundation.org/wiki/Privacy_Policy)
* Google Maps (optional map embeds): [Terms](https://policies.google.com/terms) and [Privacy Policy](https://policies.google.com/privacy)

== Description ==

IP Geolocation API connects your WordPress site to a free IP geolocation API and puts the results anywhere on your site: posts, pages, sidebars, or your own code.

Every lookup returns country, region, city, postal code, latitude and longitude, ASN, ISP or organization, timezone, local currency, EU membership, and VPN, proxy, and Tor signals.

https://github.com/thebigasif/ipgeolocation-wordpress

**Front end**

* Shortcode: [ipgeo_lookup] with fields, placeholder, button text, and template attributes
* Gutenberg block: IP Geolocation Lookup
* Sidebar widget with a template selector
* Five display templates: card, table, compact, raw JSON, map
* Map display via OpenStreetMap or Google Maps

**Developer tools**

* REST API endpoints under /wp-json/ipgeo/v1/
* WP-CLI commands: wp ipgeo lookup, wp ipgeo stats, wp ipgeo bulk, wp ipgeo rules, wp ipgeo cache
* Server-side response caching with configurable TTL
* Optional API key gate for the REST endpoints
* Bulk CSV lookup: upload a list of IPs or domains, download the enriched results

**Automation**

* Visitor geolocation detection
* Geolocation content rules: show content, redirect, set headers, or run shortcodes based on the visitor country, region, city, timezone, currency, ASN, VPN or proxy status, and EU membership
* Lookup statistics dashboard with daily totals
* Privacy mode to disable all logging
* Full data cleanup on uninstall

**Free tier**

Basic lookups need no account and no API key. A free key from ipgeolocationapi.io raises the daily quota to 5,000 lookups.

== External services ==

This plugin sends IP addresses to the IP Geolocation API service (https://ipgeolocationapi.io) to retrieve geolocation data. Its Terms of Service (https://ipgeolocationapi.io/terms) and Privacy Policy (https://ipgeolocationapi.io/privacy) apply.

The map template can embed maps from OpenStreetMap (https://www.openstreetmap.org/copyright and https://wiki.osmfoundation.org/wiki/Privacy_Policy) or Google Maps (https://policies.google.com/terms and https://policies.google.com/privacy), depending on your settings.

== Installation ==

1. Upload the plugin folder to /wp-content/plugins/
2. Activate the plugin
3. Place [ipgeo_lookup] in a post or page, add the widget to a sidebar, or insert the Gutenberg block
4. Optional: go to Settings > IP Geolocation to add an API key and set default fields

== Frequently Asked Questions ==

= Is this IP geolocation API free? =

Yes. Lookups work with no account. A free API key raises the daily quota to 5,000 requests.

= What data does the IP geolocation API return? =

Country, country code, region, city, postal code, latitude, longitude, ASN, ISP or organization, timezone, currency, EU membership, and VPN, proxy, and Tor flags.

= How do I show IP geolocation data in a post? =

Add the shortcode [ipgeo_lookup] to any post or page. Use the template attribute to pick card, table, compact, raw, or map display.

= Does the plugin expose its own REST API endpoint? =

Yes. GET /wp-json/ipgeo/v1/lookup/{ip} returns geolocation data as JSON. Add an API key in settings to require it on the endpoint.

= Can I geolocate a list of IP addresses in bulk? =

Yes. Go to Settings > IP Geolocation > Bulk Lookup and upload a CSV with a column named query, ip, domain, or address. Download the enriched CSV when processing finishes.

= How do geolocation content rules work? =

Go to Settings > IP Geolocation > Geolocation Rules. Build conditions from the visitor location data, then attach actions: show content, redirect, send a header, or run a shortcode.

= Will this work on HTTP sites? =

The plugin queries the IP geolocation API over HTTPS. On sites served over plain HTTP, browsers may block the requests as mixed content.

== Changelog ==

= 1.0.0 =
* Initial release
