[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fe4eGlWny59jb2K-F6paFxqbrfnoV3-DXZoOA7DkozJE":3,"$fwTPUgOZzHYlwdGvi_wZnUaHHpxuif_FuxNB1-Yt6yIs":217,"$f5lUh5RoapqwdfpqR8H_t2t36fsSE_m47qUU1_wvqdXU":222},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"discovery_status":30,"vulnerabilities":31,"developer":32,"crawl_stats":28,"alternatives":37,"analysis":146,"fingerprints":201},"geo-data-store","Geo Data Store","2.0.3","Scott Cariss","https:\u002F\u002Fprofiles.wordpress.org\u002Fl3rady\u002F","\u003Cp>This plugin is meant to be used by other developers and to be used together with themes and other plugins. Many themes and plugins use WordPress meta data table to store longitude and latitude co-ordinates for posts. While this works fine the meta data table cannot be indexed very well. Let’s take for example you have made a custom post type called ‘properties’. You create 100,000 posts all attached with latitude and longitude co-ordinates. You want your users to search for those properties in a 50 mile radius for example. Because of the method of which WordPress stores the meta data the query is slow especially when dealing with large amounts of data.\u003C\u002Fp>\n\u003Cp>This plugin has been made to retro fit your current WordPress install. You as the developer select, using filters, what meta data you want to start capturing and this plugin will put the data in a table better optimized for storing latitude and longitude co-ordinates. Upon plugin activate existing data will be index and any data from then on.\u003C\u002Fp>\n\u003Cp>Usage:\u003Cbr \u002F>\nBefore activating set what meta keys you want this plugin to capture by using the filter ‘sc_geodatastore_meta_keys’. Your latitude and longitude values have to be stored in a single meta field like: \u003Ccode>51.507334,-0.127682\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>Example usage of the filter:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'sc_geodatastore_meta_keys', 'homes_for_sale_geodata' );\nfunction homes_for_sale_geodata( $keys )\n{\n    $keys[] = \"properties_address_coords\";\n    return $keys;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Notice:\u003Cbr \u002F>\nThis plugin is currently limited to only allowing one pair of co-ordinates per post. Maybe in a later version I will allow multiple pairs per post, but since this plugin was made to serve my purpose and it serves it well I see no reason to build upon it yet.\u003C\u002Fp>\n","Stores lng\u002Flat co-ordinates in a better optimized table. This plugin is meant for the use of other WordPress theme and plugin authors",30,4051,90,2,"2013-01-11T14:27:00.000Z","3.4.2","3.2","",[20,21,22,23],"geo","latitude","location","longitude","http:\u002F\u002Fl3rady.com\u002Fprojects\u002Fgeo-data-store\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.2.0.3.zip",85,0,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":34,"avg_security_score":26,"avg_patch_time_days":11,"trust_score":35,"computed_at":36},"l3rady",30030,84,"2026-05-20T02:06:08.099Z",[38,57,76,94,120],{"slug":39,"name":40,"version":41,"author":42,"author_profile":43,"description":44,"short_description":45,"active_installs":46,"downloaded":47,"rating":48,"num_ratings":49,"last_updated":50,"tested_up_to":51,"requires_at_least":52,"requires_php":18,"tags":53,"homepage":18,"download_link":56,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"address-geocoder","Address Geocoder","1.0.1","Marty Spellerberg","https:\u002F\u002Fprofiles.wordpress.org\u002Fmartyspellerberg\u002F","\u003Cp>The Address Geocoder plugin lets you attach coordinates to your posts, pages, and custom post types. On your edit screens, simply enter an address into the metabox and hit “Geocode”.\u003C\u002Fp>\n\u003Cp>This plugin uses Google Maps API v3 to translate an address to lat\u002Flng coordinates. A Google Maps API key is required.\u003C\u002Fp>\n\u003Ch3>Fequently Asked Questions\u003C\u002Fh3>\n\u003Ch4>How do I retrieve the coordinates?\u003C\u002Fh4>\n\u003Cp>Access your data in the loop using the following functions, with the post ID passed as a parameter. For the full coordinates (in brackets):\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo get_geocode_latlng( $post->ID ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For the Latitude:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo get_geocode_lat( $post->ID ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For the Longitude:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo get_geocode_lng( $post->ID ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>For the Address:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php echo get_geocode_address( $post->ID ); ?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Add location coordinates to your post types.",500,14723,100,7,"2019-01-23T13:14:00.000Z","5.1.22","4.8",[54,55,21,22,23],"coordinates","geocode","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Faddress-geocoder.zip",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":48,"downloaded":65,"rating":48,"num_ratings":66,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":18,"tags":70,"homepage":74,"download_link":75,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"simple-fields-map-extension","Simple Fields Map extension","1.3.4","Pär Thernström","https:\u002F\u002Fprofiles.wordpress.org\u002Feskapism\u002F","\u003Cp>Adds a new field type to \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fsimple-fields\u002F\" rel=\"ugc\">Simple Fields\u003C\u002Fa> that let you choose a location.\u003C\u002Fp>\n\u003Cp>The coordinates (lat\u002Flng) of that location is saved\u003Cbr \u002F>\nand easily retrieved in for example your theme.\u003C\u002Fp>\n\u003Cp>Happy geocoding!\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Easily add maps to any post, page or custom post type\u003C\u002Fli>\n\u003Cli>Integrates seamlessly into Simple Fields\u003C\u002Fli>\n\u003Cli>You can have multiple maps with separately settings\u003C\u002Fli>\n\u003Cli>Each map can have it’s own:\n\u003Cul>\n\u003Cli>zoom level\u003C\u002Fli>\n\u003Cli>map type (Roadmap, Satellite, Hybrid, Terrain)\u003C\u002Fli>\n\u003Cli>default location\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Search location of address by using built in search box\u003C\u002Fli>\n\u003Cli>Search location by enter its latitude and longitude coordinates\u003C\u002Fli>\n\u003Cli>Supports Repeatable Fields – have any amount of maps connected to each post\u003C\u002Fli>\n\u003Cli>From each saved position you can get\n\u003Cul>\n\u003Cli>Latitude and Longitude\u003C\u002Fli>\n\u003Cli>Address information, including store\u002Fshop name if that was what the user searched for when adding this location\u003C\u002Fli>\n\u003Cli>Preferred zoom level\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>To add a map to a field group programmatically\u003C\u002Fh4>\n\u003Cp>Slug for this field extension is “googlemaps”.\u003C\u002Fp>\n\u003Cp>Full example using register field group:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C?php\n\n\u002F\u002F Add a field group with a Google Map-field\nsimple_fields_register_field_group('sf_map_test_field_fg',\n    array(\n        'name' => 'My map',\n        'slug' => \"mu_map\"\n        'repeatable' => 1,\n        'fields' => array(\n            array(\n                \"type\" => \"googlemaps\",\n                \"slug\" => \"sf_map\",\n                \"name\" => \"Test map\",\n                \"options\" => array(\n                    \"defaultZoomLevel\" => 10,\n                    \"defaultMapTypeId\" => \"HYBRID\", \u002F\u002F ROADMAP | SATELLITE | HYBRID | TERRAIN\n                    \"defaultLocationLat\" => 40.71435,\n                    \"defaultLocationLng\" => -74.00597,\n                    \"defaultZoomLevel\" => 10\n                )\n            )\n        )\n    )\n);\n\n?>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Translations\u002FLanguages\u003C\u002Fh4>\n\u003Cp>This plugin is available in the following languages:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Col>\n\u003Cli>(Make sure you have Simple Fields installed)\u003C\u002Fli>\n\u003Cli>Install the Simple Fields Maps Extension plugin\u003C\u002Fli>\n\u003Cli>You will find the Map field in the usual settings page of Simple Fields\u003C\u002Fli>\n\u003C\u002Fol>\n","Extension to Simple Fields that adds a field type for selecting a location on a Google Map.",5833,4,"2013-12-18T10:47:00.000Z","3.7.41","3.8",[71,72,21,23,73],"geolocation","google-maps","simple-fields","http:\u002F\u002Fearthpeople.se\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-fields-map-extension.1.3.4.zip",{"slug":77,"name":78,"version":79,"author":80,"author_profile":81,"description":82,"short_description":83,"active_installs":84,"downloaded":85,"rating":27,"num_ratings":27,"last_updated":86,"tested_up_to":87,"requires_at_least":88,"requires_php":18,"tags":89,"homepage":92,"download_link":93,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"quick-location-maps","Quick Location Maps","1.0.0","Shashikanta","https:\u002F\u002Fprofiles.wordpress.org\u002Fsashikanta\u002F","\u003Cp>This Plugin insert a location map in your posts\u002Fpages using the iFrame based Google Maps without any Api.\u003Cbr \u002F>\nThe user can set the exact coords (latutude or longitudes) or insert the location address. If you want to insert a map in a posts you must to generate two personalized fields (called ‘latitude’ and ‘longitude’) with the coordinates or a personalized field called ‘location’ with the address.\u003C\u002Fp>\n\u003Cp>This is good for Real Estate type of Blog as shown in the pics and Custom filed type location. It is very lightweight tested in wordpress 3.3.2 version, custom template ready, Google API free.\u003C\u002Fp>\n","This Plugin insert a google map in to your posts using the Google Maps Api Free.",10,1826,"2012-11-10T19:44:00.000Z","3.3.2","2.8",[90,71,21,23,91],"custom-templates","maps","http:\u002F\u002Fwww.anidipta.blogspot.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fquick-location-maps.zip",{"slug":95,"name":96,"version":97,"author":98,"author_profile":99,"description":100,"short_description":101,"active_installs":102,"downloaded":103,"rating":104,"num_ratings":105,"last_updated":106,"tested_up_to":107,"requires_at_least":108,"requires_php":109,"tags":110,"homepage":115,"download_link":116,"security_score":117,"vuln_count":118,"unpatched_count":27,"last_vuln_date":119,"fetched_at":29},"wp-slimstat","SlimStat Analytics","5.4.9","VeronaLabs","https:\u002F\u002Fprofiles.wordpress.org\u002Fveronalabs\u002F","\u003Cp>Track returning customers and registered users, monitor Javascript events, detect intrusions, analyze email campaigns. Thousands of WordPress sites are already using it.\u003C\u002Fp>\n\u003Ch4>Main Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Real-Time Access Log\u003C\u002Fstrong>: measure server latency, track page events, keep an eye on your bounce rate and much more.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin Bar Stats\u003C\u002Fstrong>: view real-time site stats directly from the WordPress admin bar — online visitors, pageviews, and top pages at a glance.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shortcodes\u003C\u002Fstrong>: display reports in widgets or directly in posts and pages.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customize Reports\u003C\u002Fstrong>: Customize all pages—Real-time, Overview, Audience, Site Analysis, and Traffic Sources—to fit your needs easily!\u003C\u002Fli>\n\u003Cli>\u003Cstrong>GDPR\u003C\u002Fstrong>: fully compliant with GDPR European law. Integrates seamlessly with WP Consent API. Consent banner translatable with WPML and Polylang.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Filters\u003C\u002Fstrong>: exclude users from statistics collection based on various criteria, including user roles, common robots, IP subnets, admin pages, country, etc.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export to Excel\u003C\u002Fstrong>: download your reports as CSV files, generate user heatmaps or get daily emails right in your mailbox (via Pro).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cache\u003C\u002Fstrong>: compatible with W3 Total Cache, WP SuperCache, CloudFlare and most caching plugins.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy\u003C\u002Fstrong>: hash IP addresses to protect your users’ privacy.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Geolocation\u003C\u002Fstrong>: identify your visitors by city and country, browser type and operating system (courtesy of \u003Ca href=\"https:\u002F\u002Fwww.maxmind.com\u002F\" rel=\"nofollow ugc\">MaxMind\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fbrowscap.org\" rel=\"nofollow ugc\">Browscap\u003C\u002Fa>).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>World Map\u003C\u002Fstrong>: see where your visitors are coming from, even on your mobile device (courtesy of \u003Ca href=\"https:\u002F\u002Fgithub.com\u002F10bestdesign\u002Fjqvmap\" rel=\"nofollow ugc\">JQVMap\u003C\u002Fa>).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Pro Pack Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Network Analytics\u003C\u002Fstrong>: Enable a network-wide view of your reports and settings.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Email Reports\u003C\u002Fstrong>: Receive your reports directly in your mailbox with customizable column mappings and HTML tables.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export to Excel\u003C\u002Fstrong>: Download your reports as CSV files.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Heatmap\u003C\u002Fstrong>: Display a heatmap layer of the most clicked areas on your website.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Overview\u003C\u002Fstrong>: Monitor your registered users by tracking their activities and time on site.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>User Avatars\u003C\u002Fstrong>: Gravatar integration in the User Overview report for quick visitor identification.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>MaxMind Integration\u003C\u002Fstrong>: Connect to MaxMind’s Geolocation API to retrieve detailed information about your visitors.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom DB\u003C\u002Fstrong>: Use an external database to store all the information about your visitors.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Extended Overview\u003C\u002Fstrong>: Add custom columns to the User Overview widget and export file.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 5.6+\u003C\u002Fli>\n\u003Cli>PHP 7.4+\u003C\u002Fli>\n\u003Cli>MySQL 5.0.3+\u003C\u002Fli>\n\u003Cli>At least 5 MB of free web space (240 MB if you plan on using the external libraries for geolocation and browser detection)\u003C\u002Fli>\n\u003Cli>At least 10 MB of free DB space\u003C\u002Fli>\n\u003Cli>At least 32 Mb of free PHP memory for the tracker (peak memory usage)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Please note\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>If you decide to uninstall Slimstat Analytics, all the stats will be \u003Cstrong>PERMANENTLY\u003C\u002Fstrong> deleted from your database. Make sure to setup a database backup (wp_slim_*) to avoid losing your data.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Report Bugs\u003C\u002Fh4>\n\u003Cp>Having trouble with a bug? Please \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwp-slimstat\u002Fwp-slimstat\u002Fissues\u002Fnew\" rel=\"nofollow ugc\">create an issue\u003C\u002Fa> on GitHub. Kindly note that \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwp-slimstat\u002Fwp-slimstat\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> is exclusively for bug reports; other inquiries will be closed.\u003C\u002Fp>\n\u003Cp>For security vulnerabilities, please report them through the \u003Ca href=\"https:\u002F\u002Fpatchstack.com\u002Fdatabase\u002Fwordpress\u002Fplugin\u002Fwp-slimstat\u002Fvdp\" rel=\"nofollow ugc\">Patchstack Vulnerability Disclosure Program\u003C\u002Fa>. The Patchstack team will validate, triage, and handle any security issues.\u003C\u002Fp>\n","The leading web analytics plugin for WordPress",80000,7116699,96,817,"2026-04-03T17:44:00.000Z","6.9.4","5.6","7.4",[111,71,112,113,114],"analytics","reports","statistics","tracking","https:\u002F\u002Fwp-slimstat.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-slimstat.5.4.9.zip",88,24,"2026-03-18 00:00:00",{"slug":121,"name":122,"version":123,"author":124,"author_profile":125,"description":126,"short_description":127,"active_installs":128,"downloaded":129,"rating":130,"num_ratings":131,"last_updated":132,"tested_up_to":133,"requires_at_least":134,"requires_php":135,"tags":136,"homepage":141,"download_link":142,"security_score":143,"vuln_count":144,"unpatched_count":27,"last_vuln_date":145,"fetched_at":29},"geoip-detect","Geolocation IP Detection","5.6.1","Benjamin Pick","https:\u002F\u002Fprofiles.wordpress.org\u002Fbenjaminpick\u002F","\u003Cp>Provides geographic information detected by an IP adress. This can be used in themes or other plugins, as a shortcode, or via CSS body classes. The city & country names are translated in different languages (\u003Ca href=\"https:\u002F\u002Fdev.maxmind.com\u002Fgeoip\u002Fgeoip2\u002Fweb-services\u002F#Languages-8\" rel=\"nofollow ugc\">supported languages\u003C\u002Fa>).\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>You can use one of these data sources (see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FFAQ#which-data-source-should-i-choose\" rel=\"nofollow ugc\">comparison\u003C\u002Fa>):\n\u003Cul>\n\u003Cli>Free (default source): \u003Ca href=\"http:\u002F\u002Fwww.hostip.info\u002F\" rel=\"nofollow ugc\">HostIP.info\u003C\u002Fa> (IPv4 only)\u003C\u002Fli>\n\u003Cli>Free with registration: \u003Ca href=\"http:\u002F\u002Fdev.maxmind.com\u002Fgeoip\u002Fgeoip2\u002Fgeolite2\u002F\" rel=\"nofollow ugc\">Maxmind GeoIP2 Lite City\u003C\u002Fa>, automatically updated weekly\u003C\u002Fli>\n\u003Cli>Commercial: \u003Ca href=\"https:\u002F\u002Fwww.maxmind.com\u002Fen\u002Fgeoip2-country-database\" rel=\"nofollow ugc\">Maxmind GeoIP2 City\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Fwww.maxmind.com\u002Fen\u002Fgeoip2-city\" rel=\"nofollow ugc\">Maxmind GeoIP2 Country\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Commercial Web-API: \u003Ca href=\"https:\u002F\u002Fwww.maxmind.com\u002Fen\u002Fgeoip2-precision-services\" rel=\"nofollow ugc\">Maxmind GeoIP2 Precision\u003C\u002Fa> (City, Country or Insights)\u003C\u002Fli>\n\u003Cli>Hosting-Provider dependent: \u003Ca href=\"https:\u002F\u002Fsupport.cloudflare.com\u002Fhc\u002Fen-us\u002Farticles\u002F200168236-What-does-CloudFlare-IP-Geolocation-do-\" rel=\"nofollow ugc\">Cloudflare\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Faws\u002Fenhanced-cloudfront-customization\u002F\" rel=\"nofollow ugc\">Amazon AWS CloudFront\u003C\u002Fa> (Country)\u003C\u002Fli>\n\u003Cli>Free or Commercial Web-API: \u003Ca href=\"https:\u002F\u002Fipstack.com\" rel=\"nofollow ugc\">Ipstack\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Commercial Web-API via AWS Marketplace: \u003Ca href=\"https:\u002F\u002Faws.amazon.com\u002Fmarketplace\u002Fpp\u002Fprodview-k5gjowexrefl2\" rel=\"nofollow ugc\">Fastah\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Provides these 5 functions (see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FAPI:-PHP\" rel=\"nofollow ugc\">API Documentation\u003C\u002Fa>):\n\u003Cul>\n\u003Cli>\u003Ccode>geoip_detect2_get_info_from_ip($ip, $locales = array('en'), $options = array())\u003C\u002Fcode>: Lookup Geo-Information of the specified IP\u003C\u002Fli>\n\u003Cli>\u003Ccode>geoip_detect2_get_info_from_current_ip($locales = array('en'), $options = array())\u003C\u002Fcode>: Lookup Geo-Information of the current website user\u003C\u002Fli>\n\u003Cli>\u003Ccode>geoip_detect2_get_current_source_description(...)\u003C\u002Fcode>: Return a human-readable label of the currently chosen source.\u003C\u002Fli>\n\u003Cli>\u003Ccode>geoip_detect2_get_external_ip_adress()\u003C\u002Fcode>: Fetch the internet adress of the webserver\u003C\u002Fli>\n\u003Cli>\u003Ccode>geoip_detect2_get_client_ip()\u003C\u002Fcode>: Get client IP (even if it is behind a reverse proxy)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>For the property names, see the results of a specific IP in the wordpress backend (under \u003Cem>Tools > Geolocation IP Detection\u003C\u002Fem>).\u003C\u002Fli>\n\u003Cli>You can include these properties into your posts and pages by using the shortcode \u003Ccode>[geoip_detect2 property=\"country.name\" default=\"(country could not be detected)\" lang=\"en\"]\u003C\u002Fcode> (where ‘country.name’ can be one of the other property names as well, and ‘default’ and ‘lang’ are optional).\u003C\u002Fli>\n\u003Cli>You can show or hide content by using a shortcode \u003Ccode>[geoip_detect2_show_if country=\"FR, DE\" not_city=\"Berlin\"]TEXT[\u002Fgeoip_detect2_show_if]\u003C\u002Fcode>. See \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FAPI:-Shortcodes#show-or-hide-content-depending-on-the-location\" rel=\"nofollow ugc\">Shortcode Documentation\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>When enabled on the options page, it adds CSS classes to the body tag such as \u003Ccode>geoip-province-HE\u003C\u002Fcode>, \u003Ccode>geoip-country-DE\u003C\u002Fcode> and \u003Ccode>geoip-continent-EU\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>If you are using a page cache, it is recommended to use the AJAX mode (see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FAPI:-AJAX\" rel=\"nofollow ugc\">AJAX\u003C\u002Fa>)\u003C\u002Fli>\n\u003Cli>When enabled on the options page, the client IP respects a reverse proxy of the server.\u003C\u002Fli>\n\u003Cli>If you are using \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcontact-form-7\u002F\" rel=\"ugc\">Contact Form 7\u003C\u002Fa>, you can use these shortcodes:\n\u003Cul>\n\u003Cli>A select input with all countries, the detected country being selected by default: \u003Ccode>[geoip_detect2_countries mycountry]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>A text input that is pre-filled with the detected city (or other property): \u003Ccode>[geoip_detect2_text_input city property:city lang:fr id:id class:class default:Paris]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Geolocation information for the email text: \u003Ccode>[geoip_detect2_user_info]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>If you are using \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwpforms-lite\u002F\" rel=\"ugc\">WP Forms\u003C\u002Fa>, you can use this shortcode:\n\u003Cul>\n\u003Cli>Geolocation information for the email text: \u003Ccode>[geoip_detect2_user_info]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Together with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsvg-flags-lite\u002F\" rel=\"ugc\">SVG Flags\u003C\u002Fa> you can show the flag of the detected country: \u003Ccode>[geoip_detect2_current_flag]\u003C\u002Fcode> (see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FAPI:-Shortcodes#add-a-flag-of-the-visitors-country\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>See \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> for more info.\u003C\u002Fp>\n\u003Ch4>How can I use these functions?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>You could choose the currency of the store based on the country name\u003C\u002Fli>\n\u003Cli>You could pre-fill the shipping country\u003C\u002Fli>\n\u003Cli>You could show the store nearest to your customer\u003C\u002Fli>\n\u003Cli>You show or hide content specific to a geographic target group\u003C\u002Fli>\n\u003Cli>Etc. … You tell me! I’m rather curious what you’ll do with this plugin!\u003C\u002Fli>\n\u003Cli>Be careful to comply to the applicable laws. For example Regulation (EU) 2018\u002F302 …\u003C\u002Fli>\n\u003Cli>If you need to get the user’s timezone, it is more accurate to use JS solutions.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>System Requirements\u003C\u002Fstrong>: You will need at least PHP 7.2.5 . Also, if you use the plugin WooCommerce, you’ll need at least WooCommerce 3.9.0 .\u003C\u002Fp>\n\u003Cp>\u003Cem>GDPR: See \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FFAQ#is-this-plugin-gdpr-compliant\" rel=\"nofollow ugc\">Is this plugin GDPR-compliant?\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cem>This extension is “charity-ware”. If you are happy with it, please \u003Ca href=\"https:\u002F\u002Fwww.paypal.com\u002Fcgi-bin\u002Fwebscr?cmd=_s-xclick&hosted_button_id=BSYUZHS8FH3CL\" rel=\"nofollow ugc\">leave a tip\u003C\u002Fa> for the benefit of \u003Ca href=\"http:\u002F\u002Fwww.jmem-hainichen.de\u002Fhomepage\" rel=\"nofollow ugc\">this charity\u003C\u002Fa>. (See \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FFAQ#what-you-mean-by-this-plugin-is-charity-ware\" rel=\"nofollow ugc\">FAQ\u003C\u002Fa> for more infos.)\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cem>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fblob\u002Fmaster\u002FCONTRIBUTING.md\" rel=\"nofollow ugc\">Here are other ways to contribute to the development of this plugin.\u003C\u002Fa>\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cem>This product can provide GeoLite2 data created by MaxMind, available from http:\u002F\u002Fwww.maxmind.com.\u003C\u002Fem>\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Does \u003Ccode>geoip_detect2_get_info_from_current_ip()\u003C\u002Fcode> return the same country, regardless of where you are visiting the site from? \u003C\u002Fli>\n\u003Cli>Maybe your server has a reverse proxy configured. You can check this: Go to the options page and look for “reverse proxy”. Are there 2 IPs listed there? If so, which one corresponds to your \u003Ca href=\"https:\u002F\u002Fwww.whatismyip.com\u002F\" rel=\"nofollow ugc\">public IP\u003C\u002Fa>?\u003C\u002Fli>\n\u003Cli>Or maybe you are using a site cache plugin. Then enable the option \u003Ccode>Disable caching a page that contains a shortcode or API call to geo-dependent functions.\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fyellowtree\u002Fgeoip-detect\u002Fwiki\u002FTroubleshooting\" rel=\"nofollow ugc\">More Troubleshooting Hints\u003C\u002Fa>\u003C\u002Fp>\n","Provides geographic information detected by an IP adress.",20000,563102,94,59,"2025-10-29T20:59:00.000Z","6.8.5","5.0","7.2.5",[137,71,138,139,140],"geoip","ipstack","locator","maxmind","http:\u002F\u002Fwww.yellowtree.de","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeoip-detect.5.6.1.zip",99,1,"2025-09-22 00:00:00",{"attackSurface":147,"codeSignals":189,"taintFlows":196,"riskAssessment":197,"analyzedAt":200},{"hooks":148,"ajaxHandlers":185,"restRoutes":186,"shortcodes":187,"cronEvents":188,"entryPointCount":27,"unprotectedCount":27},[149,155,159,162,165,169,173,178,181],{"type":150,"name":151,"callback":152,"file":153,"line":154},"action","sc_geodatastore_reindex","reindex","geo-data-store.php",45,{"type":150,"name":156,"callback":157,"priority":84,"file":153,"line":158},"added_post_meta","after_post_meta",48,{"type":150,"name":160,"callback":157,"priority":84,"file":153,"line":161},"updated_post_meta",49,{"type":150,"name":163,"callback":157,"priority":84,"file":153,"line":164},"updated_postmeta",50,{"type":150,"name":166,"callback":167,"priority":84,"file":153,"line":168},"deleted_post_meta","delete_post_meta",53,{"type":150,"name":170,"callback":171,"priority":84,"file":153,"line":172},"deleted_postmeta","delete_postmeta",54,{"type":174,"name":175,"callback":176,"priority":144,"file":153,"line":177},"filter","sc_geodatastore_meta_keys","setup_keys",57,{"type":174,"name":179,"callback":179,"priority":84,"file":153,"line":180},"plugin_action_links",67,{"type":150,"name":182,"callback":183,"file":153,"line":184},"init","things_to_do",68,[],[],[],[],{"dangerousFunctions":190,"sqlUsage":191,"outputEscaping":193,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":144,"bundledLibraries":195},[],{"prepared":49,"raw":27,"locations":192},[],{"escaped":144,"rawEcho":27,"locations":194},[],[],[],{"summary":198,"deductions":199},"Based on the provided static analysis and vulnerability history, the 'geo-data-store' plugin version 2.0.3 exhibits a very strong security posture. The absence of any identified attack surface, dangerous functions, unsanitized taint flows, and vulnerability history is highly commendable. All SQL queries are prepared, and output is properly escaped, indicating good development practices for handling data and preventing common web vulnerabilities like SQL injection and Cross-Site Scripting. The presence of a capability check further reinforces its security by ensuring that actions are authorized.",[],"2026-04-16T11:19:57.676Z",{"wat":202,"direct":208},{"assetPaths":203,"generatorPatterns":205,"scriptPaths":206,"versionParams":207},[204],"\u002Fwp-content\u002Fplugins\u002Fgeo-data-store\u002Flanguages\u002Fgeo-data-store.pot",[],[],[],{"cssClasses":209,"htmlComments":210,"htmlAttributes":212,"restEndpoints":214,"jsGlobals":215,"shortcodeOutput":216},[],[211],"\u003C!-- Re-Index Table -->",[213],"data-sc_geodatastore_reindex",[],[],[],{"error":218,"url":219,"statusCode":220,"statusMessage":221,"message":221},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fgeo-data-store\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":223,"versions":224},6,[225,231,238,245,252,259],{"version":6,"download_url":25,"svn_tag_url":226,"released_at":28,"has_diff":227,"diff_files_changed":228,"diff_lines":28,"trac_diff_url":229,"vulnerabilities":230,"is_current":218},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F2.0.3\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgeo-data-store%2Ftags%2F2.0.2&new_path=%2Fgeo-data-store%2Ftags%2F2.0.3",[],{"version":232,"download_url":233,"svn_tag_url":234,"released_at":28,"has_diff":227,"diff_files_changed":235,"diff_lines":28,"trac_diff_url":236,"vulnerabilities":237,"is_current":227},"2.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.2.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F2.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgeo-data-store%2Ftags%2F2.0.1&new_path=%2Fgeo-data-store%2Ftags%2F2.0.2",[],{"version":239,"download_url":240,"svn_tag_url":241,"released_at":28,"has_diff":227,"diff_files_changed":242,"diff_lines":28,"trac_diff_url":243,"vulnerabilities":244,"is_current":227},"2.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgeo-data-store%2Ftags%2F1.2&new_path=%2Fgeo-data-store%2Ftags%2F2.0.1",[],{"version":246,"download_url":247,"svn_tag_url":248,"released_at":28,"has_diff":227,"diff_files_changed":249,"diff_lines":28,"trac_diff_url":250,"vulnerabilities":251,"is_current":227},"1.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.1.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F1.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgeo-data-store%2Ftags%2F1.1&new_path=%2Fgeo-data-store%2Ftags%2F1.2",[],{"version":253,"download_url":254,"svn_tag_url":255,"released_at":28,"has_diff":227,"diff_files_changed":256,"diff_lines":28,"trac_diff_url":257,"vulnerabilities":258,"is_current":227},"1.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.1.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F1.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgeo-data-store%2Ftags%2F1.0&new_path=%2Fgeo-data-store%2Ftags%2F1.1",[],{"version":260,"download_url":261,"svn_tag_url":262,"released_at":28,"has_diff":227,"diff_files_changed":263,"diff_lines":28,"trac_diff_url":28,"vulnerabilities":264,"is_current":227},"1.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgeo-data-store.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgeo-data-store\u002Ftags\u002F1.0\u002F",[],[]]