
The plugin detects the visitor’s location and redirects them when the rules match.
The plugin detects the visitor’s location and redirects them when the rules match.
It only takes a minute to set up: simply select the locations and set your geo redirect using our shortcode generator.
Here are some common ways to use geo redirects on your site:
.com) to a local domain such as .co.uk or .com.au.There are three types of redirects you can use when creating a WordPress geo redirect:
Note: 301 and 302 redirects are PHP-based and cannot run when the trigger is loaded with Ajax. If you are using Ajax loading, either add ajax="no" to the trigger shortcode or use a JavaScript redirect instead.
This option works by giving the redirect a name and adding the do_once_per parameter. The value of do_once_per can be either the word session (to prevent the redirect for the entire browser session) or a numeric value that represents the number of seconds during which the redirect should not occur again.
Example:
[ifso-redirect url="https://example.com" code="301" name="geo-redirect-example" do_once_per="86400"]
In this example, the visitor will be redirected to https://example.com once every 24 hours (86,400 seconds). If they visit the page again within that time, the redirect will not run.
The “Redirect once per user” option relies on a cookie to work. The cookie name is based on the name you assign to your redirect, starting with ‘ifso-rdr-‘ followed by your chosen name (i.e., ifso-rdr-yourname).
A simple setup to redirect users from any page on your WordPress site to an equivalent page on a parallel website.
.com → .co.uk

.com/… → .com/uk/…

Click here to learn more about Geolocation Redirect Templates.
The setup involves two steps: (1) creating a trigger with a geolocation condition, and (2) adding a redirect shortcode that sends matching visitors to the target URL.


If your redirect doesn’t fire immediately, the issue is usually related to how the trigger is loaded. Here’s how to ensure the redirect runs as quickly and smoothly as possible:
When a trigger loads with Ajax, the dynamic content is fetched after the static part of the page has already loaded from the cache. This means the redirect can only occur once the Ajax request finishes — resulting in a short delay.
Strong caching paired with inefficient site construction can cause redirects to feel slower.
To make the redirect fire instantly:
If your conditional redirect isn’t working as expected, don’t worry – follow the steps below to identify the issue and get it resolved quickly.
Paste the redirect shortcode directly into the main content field of a new test page (without using a trigger).
Did it work?
✅ Yes → The redirect code works. Move on to checking your condition.
❌ No → The issue is likely with the redirect setup. Jump to the “Redirect shortcode issues” section.
Does it work?
✅ Yes → If you the correct version the issue is either the redirect type or a caching issue.
❌ No → If you don’t see the correct version → The condition may be misconfigured, or caching is preventing the dynamic version from loading.
Works? The issue is likely related to the redirect shortcode itself, or a caching conflict.
❌ Didn’t work? The condition may be misconfigured or the content might be blocked by caching.
Caching is the most common reason redirects don’t fire as expected.
[ifso-redirect url='https://example.com' type='js']
If JavaScript redirection works, the issue is almost certainly caching-related.
Try loading the content with and without Ajax (Page Caching Compatibility) to determine if caching is interfering. How to enable/make sure the Ajax loading is enabled.
If the issue persists, please contact our support and share the following:
We’re happy to take a look and help troubleshoot further. Contact support
We're sorry couldn’t be more helpful ☹️