CF GeoPlugin

plugin banner

The Geo plugin allows you to attach geographic coordinate information to posts by shortcodes. It also lets you specify a default geographic location f

Author:INFINITUM FORM (profile at
WordPress version required:6.0
WordPress version tested:6.5.3
Plugin version:8.6.7
Added to WordPress repository:21-12-2015
Last updated:21-05-2024
Rating, %:90
Rated by:26
Plugin URI:
Total downloads:126 782
Active installs:1 000+
plugin download
Click to start download

Geo Controller is a transformative WordPress plugin, previously known as CF Geo Plugin, that personalizes and enhances your website based on users’ geographic locations. By automatically determining visitors’ locations, it can display custom greetings and tailored content, significantly increasing user engagement and interaction.

The plugin also includes an advanced TOR network detection system, allowing website owners to manage visitors using the TOR network by blocking, hiding, or displaying specific content. Geo Controller integrates easily with geo tags, Google Maps, and various forms of content across posts, pages, widgets, and custom templates, requiring minimal coding knowledge.

It is fully compatible with popular plugins like WooCommerce, Contact Form 7, Yoast SEO, and WP Super Cache, ensuring a seamless user experience. Additionally, Geo Controller enhances SEO through geo tags and redirects, offers spam protection, and optimizes WooCommerce stores with features like geolocation, payment method control, and local currency display.

On the technical side, the plugin uses a Content Delivery Network (CDN) for optimal loading speed and leverages API use to reduce local data storage. Geo Controller also ensures legal compliance by filtering content based on regional laws, protecting your site from potential legal conflicts.

For more information, visit Geo Controller Plugin.


Geo Controller for WordPress is completely free! But, just like a superhero needs their trusty sidekick, Geo Controller also works with paid services that give you unlimited information about your website’s visitors. However, for the free users, the API services are limited to 1000 lookups per day. But don’t worry, if you want to take your location detection game to the next level, you can upgrade to UNLIMITED lookups by visiting our official website.

And the best part? We often have monthly promotions and discounts, so don’t forget to check out our pricing page on the official website for more information.

Geo Controller works as a service, so sit back, relax, and let the plugin do all the hard work for you.



  • There is no need to buy expensive and heavy databases
  • No effect on the site performances
  • Full support for the WooCommerce, Contact Form 7, Yoast SEO, WP Super Cache, and other most popular plugins
  • TOR network detection system


  • Redirects visitors to a blog page based on their geo information by SEO rules
  • Redirects visitors to a predefined URL based on their geo information by SEO rules
  • Allows you to configure multiple redirection rules as needed for the pages and entire website
  • Supports 301, 302, 303 & 304 HTTP redirection
  • Supports IPv4 and IPv6
  • Geo Tag Generator attaches Geo Tags in the head of your website for specific pages
  • Cache support


  • Create marketing campaigns targeted only at certain locations.
  • Create landing pages targeted only at certain locations.
  • Create banners, videos, and any other content targeted only at certain locations.

E-COMMERCE | WooCommerce

  • Geolocate for your customer location with Geo Controller API
  • Payments Control show or hide payment methods by country to prevent unwanted transactions
  • Geo Location logging of your customers during orders
  • Country Payment Control for your WooCommerce installation
  • Display local currency, local symbol, or converter
  • Use currency converter to calculate price in local currency
  • Use VAT to check if the current country is under the tax rate
  • Use EU to check if the country is from the European Union


  • Spam protection from dangerous visitors or spammers
  • Blocking access to the website from specific user-defined locations
  • Blocking IP Addresses from accessing the website


  • Redirect incoming traffic to content in the local language or currency.
  • Businesses with local branches can direct customers to a relevant physical location or local microsite.


  • Filter required legal notices, text, forms, etc., from countries for whom those contents may not be relevant.


This plugin is compatible with any WordPress installation and many available plugins. We also do special compatible functions with:

IMPORTANT: Geo Controller is compatible with most plugins, but occasional conflicts may occur due to the variety of WordPress setups. If you encounter issues, contact support. Keeping your plugins and WordPress updated often resolves problems.

All Geo Controller for WordPress 8.x.x Features

  • Geo Plugin – Allows you to attach geographical information inside your content via Shortcodes, PHP and JavaScript objects
  • Geo Banner – Allows you to place dynamic content, images, videos, and pages using shortcodes for specific audience targets by geolocation
  • Google Map – Allows you to attach Google Map inside content
  • Geo Tag – Allows you to generate precise Geo Tags for your pages and custom posts
  • Anti-Spam Protection – Allows you to block access to the blog from spam IP addresses and specific geo locations
  • Cloudflare Geolocation Support – Cloudflare support for visitor geolocation
  • DNS Lookup – Allows you to attach visitor DNS information
  • SSL Support – Keeps you safe
  • Cache Support – Allows other cache plugins to be integrated and supported
  • PROXY Settings – Allows you to use PROXY for the lookup
  • SEO Redirection – Allows you to redirect any page, post, or article
  • Country Flag Support – Allows you to attach visitor or custom country flags inside content
  • Include Content by Geolocation – Allows you to include content by geolocation
  • Exclude Content by Geolocation – Allows you to exclude content by geolocation
  • Plugin Autoupdate – Allows you to keep your plugin up to date automatically
  • REST API – Allows you to become geo information provider

Basic Usage and Examples

[cfgeo return="region"]
We just found shoes in [cfgeo_city] that you can buy for 50% discount.
[cfgeo ip="" return="area_code"]
[cfgeo exclude="Toronto"] This text is seen by everyone except Toronto people [/cfgeo]
[cfgeo include="New York"] This text is seen only by people from New York [/cfgeo]
[in_eu]You are from the European Union[/in_eu]
[not_in_eu]You are NOT from the European Union[/not_in_eu]
[is_vat]You are under VAT[/is_vat]
[is_not_vat]You are NOT under VAT[/is_not_vat]

Usage & Example

To best understand how shortcodes work, it’s best to read the documentation.

But here are some simple examples:

The Geo Controller allows you to add location-based functionality to your website. It is a simple plugin to use, after installation and activation, you just need to insert the shortcode [cfgeo] in your post or page. This shortcode returns and displays the IP address of the visitor.

You can also display different location-based information by using the return attribute in the shortcode. For example, to display the region of the visitor, you can use the shortcode [cfgeo return="region"]. By changing the return attribute, you can display any information from the list provided by the plugin. Each user visiting the site will see information related to their area.

Additionally, you can also track custom IP addresses and return information from that IP by adding an optional attribute called ip. For example, [cfgeo ip="" return="area_code"] will return the area code from that IP address.

If the plugin is unable to locate the information, you can add a default value to the shortcode by using the default attribute. For example, [cfgeo return="country_code" default="US"] will return “US” if the plugin is unable to locate the country code.

You can exclude or include content on your page based on the user’s location by using the exclude or include attribute. For example,

[cfgeo exclude="Toronto, Québec"] This text is seen by everyone except people from Toronto and Québec [/cfgeo]

will hide the content “This text is seen by everyone except people from Toronto and Québec” from the visitors that are located in Toronto or Québec.

Similarly, if you want to display some content only to specific locations you can use the include attribute like this:

[cfgeo include="New York, Miami, Germany"] This text is seen only by people from New York, Miami and Germany [/cfgeo]

this shortcode will only display the text “This text is seen only by people from New York, Miami and Germany” to the visitors that are located in New York, Miami, and Germany.

You can use the include and exclude attributes with country, region, or city codes. For example, [cfgeo include="US, GB, DE"] displays content only to visitors from the US, Great Britain, and Germany, while [cfgeo exclude="CA, ON, QUE"] hides content from visitors in California, Ontario, and Québec.

By using these attributes you can control the content visibility based on user location and personalize the user experience.

Please note that you need to use an accurate location name to include or exclude content and case-sensitive location name.

VAT CONTROL: If you need to show value-added tax (VAT) information on your website, there are 2 shortcodes that can help you with it.

[is_vat]You are under VAT[/is_vat]
[is_not_vat]You are NOT under VAT[/is_not_vat]

Both shortcodes have a default option that you can use as an alternative.

[is_vat default="You are NOT under VAT"]You are under VAT[/is_vat]
[is_not_vat default="You are under VAT"]You are NOT under VAT[/is_not_vat]

Generally, these two shortcodes show or hide everything inside it, depending on your needs.

EU CONTROL: If you need to display some content related to European Union (EU) countries, you can do it in two easy ways:

[in_eu]You are from the European Union[/in_eu]
[not_in_eu]You are NOT from the European Union[/not_in_eu]

Like many of our shortcodes, there are default options that you can use as an alternative:

[in_eu default="You are NOT from the European Union"]You are from the European Union[/in_eu]
[not_in_eu default="You are from the European Union"]You are NOT from the European Union[/not_in_eu]

These two shortcodes also show or hide everything inside it, depending on your needs.

GOOGLE MAP: If you want to place a simple Google Map in your post or page, you just need to place a shortcode [cfgeo_map] and your visitor will see their own location on Google Map by default.

For example, you can display your own company street address inside Google Map like this: [cfgeo_map longitude="-74.0059" latitude="40.7128" zoom="15"] and the pointer will show your street and place where you work.

Google Map also allows you to use HTML inside the map and display an info bar:

[cfgeo_map longitude="-74.0059" latitude="40.7128" zoom="15" title="My Company Name"] 
   <h3>My Company Name<h3> 
   <p>No Name Street 35, New York, USA</p> 
   <p>We have what you need</p> 

With this plugin, you can easily set up your Google Map.

GEO BANNER: With this plugin, you can create dynamic content (text, images, banners, videos) and target messages to specific regions, track IP addresses, and set up WordPress to work in the user’s timezone. This can increase conversions and support custom templates or plugins.

Simply create a new banner, add your content, select rules (country, region, city), save it, and place the banner shortcode in your page content.

COUNTRY FLAG You can display country flags in text or like images.

If you like to display the country flag in your text like an icon, you can do that simply like:

[cfgeo_flag] - and you will see a flag in your text.

If you like to display the country flag in your content like an image, you can do that also simply using img or image attributes like:

[cfgeo_flag img] - and you will see the image flag in your content.

You also can give custom sizes of flags in %, px, in, pt, or em using size attribute like this:

[cfgeo_flag size="32px"] - and you will see your flag in that size. You can use this size in image and normal text mode also.

You also can display a custom flag using the country attribute by placing the country code simply like:

[cfgeo_flag country="ca"] - and you will see a flag in your text or like an image.

We allow you also full control of these flags and you can place css, class, or id attributes to be able to use this in any kind of work like this:

[cfgeo_flag size="50" css="padding:10px;" class="your-custom-class custom-class custom" id="top-flag"]

Flags also support include & exclude attributes where you can control your flag view:

[cfgeo_flag exclude="ca,us"] - and you will hide the flag from the USA and Canada, for others it is visible


[cfgeo_flag include="ca,us"] - and you will show the flag only inside the USA and Canada, for others it is hidden

Info & Contact

Please visit our website and feel free to contact us. We will provide for you all services that you need.

Also, please inform us if any errors occur via the contact form on our website

Thank you for your concern!

~ Your Geo Controller Team

Plugin Links


Enjoy using Geo Controller? Please consider making a small donation to support the project’s continued development.



Please read these Terms and Conditions (“Terms”, “Terms and Conditions”) carefully before using the website and the Geo Controller WordPress application (the “Service”) operated by Geo Controller.

Read about Terms and Conditions


We respect your privacy and take protecting it seriously. This Privacy Policy covers our collection, use and disclosure of information we collect through our website and service, owned and operated by Geo Controller. It also describes the choices available to you regarding our use of your personal information and how you can access and update this information. The use of information collected through our service shall be limited to the purpose of providing the service for which our Clients have engaged us. Also we respect and take care about Europe General Data Protection Regulation (GDPR) and your freedom and private choices.

Read about Privacy Policy

For further questions and clarifications, do not hesitate to contact us and we will reply back to you within 12-48 hours.