All Geo Controller Features

Geo Controller is a WordPress geolocation and geotargeting plugin designed to make visitor location useful throughout WordPress and WooCommerce. Instead of treating geolocation as a single feature, the plugin provides a broader set of tools for detecting visitor location, exposing geographic data, controlling content, managing redirects, localizing ecommerce experiences, working with maps, protecting websites from unwanted traffic and integrating geolocation into custom PHP or JavaScript logic.

The core concept is simple: Geo Controller detects the approximate geographic context of a visitor, primarily from the visitor’s IP address, and makes that information available to WordPress. The website can then use that context to decide what content to display, where a visitor should be redirected, which WooCommerce options should be available, or how custom code should behave. IP-based geolocation should always be treated as an approximate signal rather than proof of a visitor’s exact physical location, identity or legal residence.

This page provides an overview of the main Geo Controller features and the types of WordPress problems they are designed to solve.

Visitor Geolocation and IP Lookup

Visitor geolocation is the foundation of Geo Controller.

The plugin detects geographic and network-related information associated with a visitor and makes that data available throughout WordPress. This allows a website to use more than a simple country value when building location-aware content or application logic.

Geo Controller currently provides data including:

  • IP address and IP version
  • DNS, DNS host and DNS provider information
  • Country and country code
  • Region or state
  • City
  • Continent and continent code
  • Latitude and longitude
  • Timezone
  • Locale and language context
  • Currency and currency symbol
  • Base currency information
  • VAT information
  • EU membership information
  • Current date and time
  • Hostname and host IP
  • Country flag information

These values can be used through Geo Controller shortcodes, PHP functions and JavaScript, allowing the same geographic context to be used both by site administrators and developers.

The important distinction is that this information is not collected simply for display. Its real value is that it can become part of WordPress logic.

For example, a website may detect that a visitor is connecting from Germany and use that country context to display specific content, offer a particular WooCommerce payment method or redirect the visitor to a regional page. Another site may use the visitor’s timezone or currency information inside a custom integration.

Geo Controller therefore treats visitor geolocation as reusable WordPress data rather than as an isolated lookup result.

Location-Based Content and Geotargeting

Detecting location becomes useful when WordPress can act on it.

Geo Controller includes tools for displaying or hiding content according to geographic conditions. This makes it possible to create different experiences for visitors from different countries, regions or cities without maintaining completely separate websites.

Location-based content can be used for many practical situations, including regional notices, product availability information, legal notices, delivery information, local offers or market-specific content.

A simple example would be displaying one message to visitors from the United States and a different message to visitors from Germany.

Another example could be hiding an offer from countries where a particular service is not available.

Geo Controller shortcodes are one of the primary ways to build this logic. The current shortcode system supports geographic conditions as well as additional contextual checks such as VAT status, EU membership, proxy status, TOR traffic and device type.

The result is a flexible geotargeting layer that can be added to ordinary WordPress content without requiring every location-based condition to be implemented through custom PHP.

This is also an important distinction between geolocation and geotargeting.

Geolocation determines geographic context.

Geotargeting uses that context to make a decision.

Geo Controller provides both parts of that workflow.

Geo Banner and Dynamic Content

Geo Controller includes Geo Banner functionality for displaying dynamic content according to visitor location.

This can be useful when a geographic condition needs to control a complete content block rather than a single value.

For example, a website may want to display:

  • a regional promotion
  • an announcement for visitors from one country
  • a localized image or banner
  • different HTML content for different markets
  • a country-specific service notice

The banner content itself is not limited to plain text. Location-aware content can include standard WordPress content, images and other supported markup depending on the implementation.

This allows location-based personalization to remain part of the normal WordPress content workflow rather than requiring a separate application for each regional variation.

Geo Banner functionality is part of the current Geo Controller feature set and can be enabled from the plugin settings.

Include and Exclude Content by Location

Not every geolocation rule requires separate content for every country.

Sometimes the requirement is simply to include content in one geographic area or exclude it from another.

Geo Controller supports both approaches.

A website can display a section only when a visitor matches a selected location, or prevent a section from appearing when the visitor matches an excluded location.

This can be more practical than building multiple copies of the same page.

Typical examples include:

  • displaying local contact information only to visitors from the relevant market
  • hiding a promotion in regions where it does not apply
  • displaying country-specific availability information
  • showing different support information by region
  • restricting geographically sensitive content

This kind of conditional output is one of the main ways visitor geolocation becomes useful inside ordinary WordPress pages.

Geo Redirects

Geo Controller can redirect visitors according to geographic conditions.

A geo redirect combines visitor location with URL routing. After the visitor’s location is detected, WordPress can send that visitor to a different URL or regional section according to the configured rule.

This can be useful for multilingual or regional websites, country-specific landing pages, localized offers or products that are available only in particular markets.

For example:

A visitor from Canada may be redirected to a Canadian landing page.

A visitor from Germany may be directed to a German regional section.

Visitors from a country where a service is unavailable may be redirected to an availability notice instead of the main sales page.

Geo Controller includes both post-level SEO redirection functionality and site-level redirection options. The current plugin settings also include controls for redirection modes, bot handling and CSV import/export for site redirection rules.

Geo redirects should still be implemented carefully. Search engines, users and automated systems do not always behave like ordinary visitors, and redirect logic should reflect the actual structure and purpose of the website rather than being used simply as an SEO shortcut.

WooCommerce Geolocation

WooCommerce is one of the areas where visitor geolocation can have a direct operational impact.

Geo Controller integrates with WooCommerce and allows geographic context to be used as part of the store experience. The official documentation currently describes location-aware behavior including product visibility, localized prices and currency symbols, payment options, shipping-related behavior and geographic tax context.

This creates several practical use cases.

Localized Prices and Currency

A WooCommerce store can use visitor location as context for localized currency display and conversion.

Instead of presenting the same currency context to every visitor, Geo Controller can determine location information and use the configured currency model to provide a more relevant display.

This is especially useful for stores serving customers across multiple countries.

Currency conversion should still be treated as part of the store’s pricing and display strategy. The store owner remains responsible for configuring appropriate base prices, payment processing and financial rules.

Payment Methods by Location

Geo Controller can also use visitor geography to control supported WooCommerce payment methods.

This is useful because payment providers are often market-specific.

A payment option available in one country may be irrelevant or unavailable in another.

Instead of displaying every payment method to every customer, the store can use geographic conditions so that customers see only the options appropriate to their location.

This reduces checkout clutter and can prevent customers from selecting a payment method that the store cannot actually support for their market.

Product Visibility

WooCommerce products can also be included or excluded according to location-based conditions.

That can be useful when:

  • a product is sold only in certain markets
  • distribution agreements vary by country
  • shipping restrictions make a product unavailable in particular regions
  • regional catalogs differ
  • a store wants to expose different offers to different markets

Geo Controller’s current geolocation concept documentation explicitly includes showing or hiding products and payment methods according to country or region.

Currency Conversion

Currency functionality is not limited to WooCommerce.

Geo Controller provides currency information as part of its geographic dataset and includes currency conversion functionality that can be used through the plugin’s tools and shortcodes.

The plugin exposes values such as visitor currency, currency symbol, base currency and related conversion information.

This makes currency data available for location-aware content outside the checkout process as well.

For example, a website may display regional price information, use currency data in a custom calculator or expose converted values through a shortcode.

As with all currency conversion systems, converted values should be treated according to the application’s requirements. Exchange rates, payment-provider rates, taxes and final transaction values may differ depending on the commerce system being used.

WordPress Shortcodes

Shortcodes are one of the central Geo Controller integration methods.

They provide a way to display geographic values and apply location logic directly inside WordPress content without writing custom PHP.

The current shortcode collection includes tools for:

  • returning individual geolocation properties
  • displaying conditional content
  • Google Maps
  • currency conversion
  • GPS-related functionality
  • country flags
  • VAT checks
  • EU membership checks
  • proxy checks
  • device checks
  • TOR checks

The available shortcode family includes [cfgeo], property-specific shortcodes, [cfgeo_map], [cfgeo_converter], [cfgeo_gps], country flag tools and multiple conditional shortcodes.

The value of this system is that site administrators can use the same geolocation data that developers use, but without building every condition manually.

A page can therefore contain location-aware output while remaining manageable through the normal WordPress editor.

PHP Integration

Developers can access Geo Controller information directly from PHP.

This makes geolocation data available inside custom themes, plugins, WooCommerce extensions or application-specific logic.

Instead of relying only on rendered shortcodes, developers can retrieve structured geographic information and use it inside WordPress conditions.

Typical PHP use cases include:

  • selecting a template based on country
  • modifying custom plugin behavior by region
  • controlling availability logic
  • adding location information to custom data structures
  • integrating geolocation with an internal business system
  • building custom WooCommerce rules

This is particularly useful when location-based behavior needs to happen before content is rendered or when the result must participate in backend WordPress logic.

Geo Controller maintains dedicated PHP integration documentation for these developer use cases.

JavaScript Integration

Geo Controller also exposes geolocation data to JavaScript.

When JavaScript integration is enabled, visitor information can be accessed through global browser objects including window.wp.geo and window.cfgeo, while a legacy object remains available for older implementations.

This gives frontend developers direct access to geographic context.

JavaScript integration is useful when a page needs to react dynamically without requiring a complete page reload.

For example, a frontend script may use visitor location to:

  • modify interface elements
  • trigger a custom interaction
  • adapt content loaded through AJAX
  • pass geographic values to another JavaScript component
  • display a location-aware message
  • change frontend behavior after the page has loaded

JavaScript access is particularly valuable on modern WordPress websites where parts of the page may be rendered or updated dynamically.

REST API

Geo Controller includes REST API functionality for supported configurations.

This allows geolocation data to be exposed through JSON-based endpoints and used outside the ordinary WordPress page-rendering process.

A REST interface is useful when another application needs geographic context but does not operate directly inside the WordPress PHP environment.

Potential use cases include:

  • custom frontend applications
  • external services
  • headless WordPress implementations
  • integrations with internal systems
  • remote location lookups

REST functionality is documented separately because authentication, licensing and endpoint behavior require more precise configuration than ordinary shortcode usage.

Google Maps Integration

Geo Controller includes Google Maps integration.

A map can be embedded using the

shortcode without requiring a separate plugin for basic single-point map output.

By default, the map can use visitor location, but it can also be configured with a custom static location.

Available options include coordinates, zoom level, custom markers, dimensions and other basic map settings. A valid Google Maps API key is required.

This functionality is useful when the website needs to visualize a detected or predefined location without introducing a complete directory or proximity-search system.

That distinction is important.

Geo Controller’s Google Maps feature is designed for displaying geographic locations. It should not be confused with a full store-locator, radius-search or directory platform.

Country Flags

Geo Controller can display country flags based on visitor location or a specified country.

This can be useful for lightweight visual localization, regional navigation, country selectors or location-aware interface elements.

Country flag support is available through dedicated shortcode functionality and is included in the current feature set.

As with all location-aware elements, a flag should be used when it helps the visitor understand the interface rather than simply as decoration.

VAT and EU Information

Geo Controller exposes geographic information that can help an implementation determine whether a location belongs to the European Union and provides VAT-related contextual values.

This information can be useful as part of custom ecommerce or localization logic.

For example, a website may use EU membership information when deciding which notice to display or which internal business rule to apply.

However, geolocation should not be treated as a replacement for tax validation, legal advice or customer-provided billing information.

IP geolocation identifies approximate network location, not legal residence or tax status.

The plugin therefore provides useful geographic context, while final tax and compliance decisions remain the responsibility of the website and its commerce configuration.

Proxy, VPN and CDN Awareness

IP geolocation depends on correctly identifying the network address associated with the visitor.

This becomes more complicated when the website operates behind a reverse proxy, CDN or similar infrastructure.

Geo Controller includes proxy-related functionality and specific support for environments such as Cloudflare.

The plugin also includes dedicated documentation covering IP detection, proxies, VPNs and CDNs.

This matters because the IP address directly visible to the WordPress server is not always the visitor’s original address.

A CDN, load balancer or proxy may sit between the visitor and WordPress.

Correct IP handling is therefore an important part of reliable geolocation.

VPNs introduce another limitation. A visitor using a VPN may appear to be connecting from the VPN exit location instead of their actual physical location.

That does not make geolocation unusable, but it is one reason IP-based location should always be considered approximate.

TOR Network Control

Geo Controller includes TOR-related detection and control functionality.

The shortcode system provides conditions for identifying TOR traffic, and the plugin settings contain TOR network control options.

This can be useful when a website needs to treat TOR connections differently from ordinary traffic.

Possible policies may include additional verification, restricted access or simply different handling inside custom application logic.

TOR detection should still be used according to the actual security requirements of the website. A TOR connection alone does not prove malicious intent.

Anti-Spam Protection

Geo Controller includes anti-spam protection features that can use geographic and network context when controlling access.

The current feature set includes blocking unwanted geographic regions or suspicious IP-related traffic, while plugin settings include spam protection and automatic blacklist functionality.

This can provide another layer of control for websites receiving unwanted automated traffic or repeated abuse from known network sources.

It should not be considered a replacement for a complete WordPress security stack.

Geolocation and IP reputation are signals that can contribute to access-control decisions, but security should normally combine multiple techniques including WordPress hardening, authentication controls, updates, server security and application-level protection.

Geographic Access Control

Geo Controller can also be used to control access according to location.

This is broader than simply hiding a paragraph.

A geographic rule can determine whether particular content or functionality should be available to a visitor from a selected country, region or city.

Practical examples include:

  • services available only in selected countries
  • regional promotions
  • restricted downloads
  • market-specific content
  • compliance notices
  • country-specific ecommerce functionality

This can help reduce unnecessary exposure of content that is not relevant or available in a visitor’s market.

Because IP geolocation is approximate, critical legal or identity-related restrictions may still require stronger verification methods.

Cloudflare Support

Many WordPress websites use Cloudflare or similar proxy infrastructure.

In these environments, the web server may see the proxy’s IP address rather than the original visitor address unless forwarded IP information is handled correctly.

Geo Controller includes Cloudflare geolocation support and related proxy configuration options.

This allows the plugin to operate more reliably in websites where traffic passes through Cloudflare before reaching WordPress.

Correct configuration remains important because proxy headers and server environments can differ.

DNS Lookup

Geo Controller includes DNS lookup functionality.

When enabled, DNS-related visitor information can become part of the data available to WordPress.

This includes fields such as DNS, DNS host and DNS provider information where available.

DNS information is generally more useful for technical analysis and custom application logic than for ordinary content personalization.

For that reason, it should normally be enabled only when the website actually needs the additional network context.

Caching Support

Dynamic geolocation and WordPress caching can conflict if they are not configured carefully.

A traditional full-page cache stores generated HTML and may later serve that same HTML to another visitor.

If the cached page contains country-specific content, a visitor from one country could theoretically receive content generated for a previous visitor from another country.

Geo Controller includes cache support and dedicated configuration intended to make location-aware content work with common WordPress caching environments. Cache support is listed as a current plugin feature, and the documentation includes dedicated material on dynamic content and caching.

This is particularly important on high-traffic websites where caching is necessary for performance.

Location-aware output should therefore be designed with the site’s caching architecture in mind instead of assuming that every request is dynamically rendered from scratch.

SEO Integration and Geo-Aware Metadata

Geo Controller can also participate in SEO-related workflows.

The official geolocation concept documentation includes geo-aware SEO metadata and social previews, while the plugin documentation lists integrations with major WordPress SEO plugins including Yoast SEO, All in One SEO, Rank Math and The SEO Framework.

This allows geographic context to be incorporated into supported metadata scenarios where appropriate.

Geo Controller also includes a Geo Tag Generator for adding geographic metadata to WordPress content and supported post types.

These features should be used carefully.

Geographic metadata can help describe content, but it does not guarantee higher rankings and should not be used to manufacture artificial location relevance.

SEO decisions should still reflect the real purpose, audience and content of the page.

Geo Tags

Geo Controller supports geographic tags that allow location information to be inserted into supported areas of WordPress.

This creates another bridge between raw visitor location data and dynamic WordPress output.

Geo tags can be used where supported to provide contextual geographic values without repeatedly rebuilding the same logic.

They are particularly useful in templates, metadata and other structured locations where shortcodes may not be the most appropriate integration method.

Device-Aware Conditions

The current Geo Controller shortcode system also includes device checks for mobile and desktop contexts.

These are not geolocation data by themselves, but they can be combined with geographic conditions.

For example, a website may want to show a specific regional message only to mobile users from a selected country.

Combining geographic and device context allows more precise conditions without requiring a separate personalization platform.

GPS and Browser Location

Geo Controller includes GPS-related shortcode functionality through [cfgeo_gps].

GPS or browser-based location should be understood separately from IP geolocation.

IP geolocation estimates where the visitor’s connection appears to originate.

Browser or device geolocation can provide more precise coordinates, but it depends on browser support, device capabilities and visitor permission.

The two methods therefore solve related but different requirements.

For many WordPress use cases, country or regional IP geolocation is sufficient because the website needs geographic context rather than an exact physical position.

When precise coordinates are required, browser-based location may be more appropriate.

Fallback and Default Behavior

Geolocation does not always return perfect information.

A location provider may be temporarily unavailable, a field may not exist for a particular IP range, or a visitor’s network may provide only limited geographic information.

For this reason, Geo Controller documentation includes dedicated fallback and default behavior concepts.

A well-designed location-aware website should always have a sensible default state.

For example, if the visitor’s city cannot be determined, the website should still function normally rather than showing an error or blocking the visitor unnecessarily.

Fallback behavior is especially important when geolocation controls ecommerce, redirects or essential page content.

Performance Considerations

Geolocation introduces additional logic into the WordPress request lifecycle.

That does not mean a geolocation website must be slow, but it does mean that lookups, caching and dynamic output should be configured sensibly.

Geo Controller documentation includes specific performance guidelines and caching concepts for this reason.

The most efficient implementation is usually the one that retrieves the geographic context once and reuses it rather than performing unnecessary repeated lookups.

Developers should also avoid adding geographic conditions where they provide no practical benefit.

Geolocation should improve the user experience, not become an excuse to make every piece of content dynamic.

Privacy and Accuracy

Visitor geolocation should always be implemented with an understanding of its limitations.

Geo Controller uses approximate IP-based geographic context for its primary geolocation workflow. That information can be extremely useful for country, region and broader location decisions, but it is not proof of the visitor’s physical address, nationality, identity or legal residence.

VPN services, proxies, mobile networks, corporate networks and internet routing can all affect the geographic location associated with an IP address.

Websites using geolocation should also consider the privacy requirements that apply to their jurisdiction, data processing activities and business model.

Geo Controller provides the technical tools for working with geographic context. The website owner remains responsible for determining how that information should be collected, disclosed, stored and used.

One Geolocation Layer for WordPress and WooCommerce

The main advantage of Geo Controller is not any single feature.

Its value comes from making the same visitor location context available across multiple parts of WordPress.

The country detected for a visitor can be used in content.

The same location can participate in redirects.

WooCommerce can use geographic context for store behavior.

Developers can access the data from PHP.

Frontend applications can read it through JavaScript.

External integrations can use supported REST functionality.

Shortcodes make much of the same information accessible to site administrators without requiring custom code.

This creates a common geolocation layer instead of forcing every part of the website to solve visitor location independently.

For websites serving multiple countries or regions, that can simplify both implementation and long-term maintenance.

Geo Controller was previously known as CF Geo Plugin, but the current product has developed into a broader WordPress geolocation and geotargeting platform focused on turning visitor location into practical WordPress and WooCommerce behavior.

For a broader explanation of the underlying concept, see WordPress Geolocation, and use the Geo Controller documentation when you need exact configuration instructions, shortcode parameters or developer integration details.

About the author

Login

Lost your password? Register

Register


Your personal data will be used to support your experience throughout this website, to manage access to your account, and for other purposes described in our privacy policy.


Lost your password? Login