{"id":366859,"date":"2026-09-17T07:13:18","date_gmt":"2026-09-17T07:13:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/ip-geolocation-api\/"},"modified":"2026-09-17T07:12:46","modified_gmt":"2026-09-17T07:12:46","slug":"ipgeolocationapi-geo-threat","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/ipgeolocationapi-geo-threat\/","author":20395150,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.3","stable_tag":"1.0.3","tested":"7.1","requires":"5.8","requires_php":"","requires_plugins":null,"header_name":"IPGeolocationAPI Geo & Threat","header_author":"ipgeolocationapi.io","header_description":"Free IP geolocation API for WordPress. Look up any IP or domain and show country, city, ASN, ISP, timezone, currency, and VPN signals via shortcode, widget, block, REST, WP-CLI, or bulk CSV.","assets_banners_color":"f6821f","last_updated":"2026-09-17 07:12:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/ipgeolocationapi.io","header_author_uri":"https:\/\/github.com\/thebigasif","rating":0,"author_block_rating":0,"active_installs":0,"downloads":33,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"km0asif","date":"2026-09-17 07:12:46","revision":3699669}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128.png":{"filename":"icon-128.png","revision":3699669,"resolution":"128","location":"assets","locale":"","width":128,"height":128},"icon-256.png":{"filename":"icon-256.png","revision":3699669,"resolution":"256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3699669,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3699669,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"ipgeo\/lookup":{"name":"ipgeo\/lookup","title":"Ipgeo Lookup"}},"tagged_versions":["1.0.3"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[1556,4124,4167,47317,48992],"plugin_category":[49],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-366859","plugin","type-plugin","status-publish","hentry","plugin_tags-api","plugin_tags-geolocation","plugin_tags-ip-geolocation","plugin_tags-ip-lookup","plugin_tags-vpn","plugin_category-maps-and-location","plugin_committers-km0asif"],"banners":{"banner":"https:\/\/ps.w.org\/ipgeolocationapi-geo-threat\/assets\/banner-772x250.png?rev=3699669","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/ipgeolocationapi-geo-threat\/assets\/icon.svg?rev=3699669","icon":"https:\/\/ps.w.org\/ipgeolocationapi-geo-threat\/assets\/icon.svg?rev=3699669","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>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.<\/p>\n\n<p>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.<\/p>\n\n<p>https:\/\/github.com\/thebigasif\/ipgeolocation-wordpress<\/p>\n\n<p><strong>Front end<\/strong><\/p>\n\n<ul>\n<li>Shortcode: [ipgeo_lookup] with fields, placeholder, button text, and template attributes<\/li>\n<li>Gutenberg block: IP Geolocation Lookup<\/li>\n<li>Sidebar widget with a template selector<\/li>\n<li>Five display templates: card, table, compact, raw JSON, map<\/li>\n<li>Map display via OpenStreetMap or Google Maps<\/li>\n<\/ul>\n\n<p><strong>Developer tools<\/strong><\/p>\n\n<ul>\n<li>REST API endpoints under \/wp-json\/ipgeo\/v1\/<\/li>\n<li>WP-CLI commands: wp ipgeo lookup, wp ipgeo stats, wp ipgeo bulk, wp ipgeo rules, wp ipgeo cache<\/li>\n<li>Server-side response caching with configurable TTL<\/li>\n<li>Optional API key gate for the REST endpoints<\/li>\n<li>Bulk CSV lookup: upload a list of IPs or domains, download the enriched results<\/li>\n<\/ul>\n\n<p><strong>Automation<\/strong><\/p>\n\n<ul>\n<li>Visitor geolocation detection<\/li>\n<li>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<\/li>\n<li>Lookup statistics dashboard with daily totals<\/li>\n<li>Privacy mode to disable all logging<\/li>\n<li>Full data cleanup on uninstall<\/li>\n<\/ul>\n\n<p><strong>Free tier<\/strong><\/p>\n\n<p>Basic lookups need no account and no API key. A free key from ipgeolocationapi.io raises the daily quota to 5,000 lookups.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin calls third-party services:<\/p>\n\n<ul>\n<li>IPGeolocationAPI.io (IP geolocation and threat data): <a href=\"https:\/\/ipgeolocationapi.io\/terms\">Terms of Service<\/a> and <a href=\"https:\/\/ipgeolocationapi.io\/privacy\">Privacy Policy<\/a><\/li>\n<li>OpenStreetMap (optional map embeds): <a href=\"https:\/\/wiki.osmfoundation.org\/wiki\/Terms_of_Use\">Terms<\/a> and <a href=\"https:\/\/wiki.osmfoundation.org\/wiki\/Privacy_Policy\">Privacy Policy<\/a><\/li>\n<li>Google Maps (optional map embeds): <a href=\"https:\/\/policies.google.com\/terms\">Terms<\/a> and <a href=\"https:\/\/policies.google.com\/privacy\">Privacy Policy<\/a><\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>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.<\/p>\n\n<p>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.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to \/wp-content\/plugins\/<\/li>\n<li>Activate the plugin<\/li>\n<li>Place [ipgeo_lookup] in a post or page, add the widget to a sidebar, or insert the Gutenberg block<\/li>\n<li>Optional: go to Settings &gt; IP Geolocation to add an API key and set default fields<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20ip%20geolocation%20api%20free%3F\"><h3>Is this IP geolocation API free?<\/h3><\/dt>\n<dd><p>Yes. Lookups work with no account. A free API key raises the daily quota to 5,000 requests.<\/p><\/dd>\n<dt id=\"what%20data%20does%20the%20ip%20geolocation%20api%20return%3F\"><h3>What data does the IP geolocation API return?<\/h3><\/dt>\n<dd><p>Country, country code, region, city, postal code, latitude, longitude, ASN, ISP or organization, timezone, currency, EU membership, and VPN, proxy, and Tor flags.<\/p><\/dd>\n<dt id=\"how%20do%20i%20show%20ip%20geolocation%20data%20in%20a%20post%3F\"><h3>How do I show IP geolocation data in a post?<\/h3><\/dt>\n<dd><p>Add the shortcode [ipgeo_lookup] to any post or page. Use the template attribute to pick card, table, compact, raw, or map display.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20expose%20its%20own%20rest%20api%20endpoint%3F\"><h3>Does the plugin expose its own REST API endpoint?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"can%20i%20geolocate%20a%20list%20of%20ip%20addresses%20in%20bulk%3F\"><h3>Can I geolocate a list of IP addresses in bulk?<\/h3><\/dt>\n<dd><p>Yes. Go to Settings &gt; IP Geolocation &gt; Bulk Lookup and upload a CSV with a column named query, ip, domain, or address. Download the enriched CSV when processing finishes.<\/p><\/dd>\n<dt id=\"how%20do%20geolocation%20content%20rules%20work%3F\"><h3>How do geolocation content rules work?<\/h3><\/dt>\n<dd><p>Go to Settings &gt; IP Geolocation &gt; Geolocation Rules. Build conditions from the visitor location data, then attach actions: show content, redirect, send a header, or run a shortcode.<\/p><\/dd>\n<dt id=\"will%20this%20work%20on%20http%20sites%3F\"><h3>Will this work on HTTP sites?<\/h3><\/dt>\n<dd><p>The plugin queries the IP geolocation API over HTTPS. On sites served over plain HTTP, browsers may block the requests as mixed content.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"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 threa &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/366859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=366859"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/km0asif"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=366859"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=366859"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=366859"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=366859"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=366859"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=366859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}