{"id":364854,"date":"2026-09-09T08:42:48","date_gmt":"2026-09-09T08:42:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/country-redirect-for-woocommerce\/"},"modified":"2026-09-09T08:42:34","modified_gmt":"2026-09-09T08:42:34","slug":"storeward-country-redirect-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/storeward-country-redirect-for-woocommerce\/","author":23561613,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Storeward Country Redirect for WooCommerce","header_author":"Markus Kuhn","header_description":"Redirect visitors of a WooCommerce product to a different URL based on the country they are browsing from.","assets_banners_color":"162549","last_updated":"2026-09-09 08:42:34","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","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.0":{"tag":"1.0.0","author":"markusegonkuhn","date":"2026-09-09 08:42:34","revision":3687921}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3687921,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3687921,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3687921,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3687921,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3687921,"resolution":"1","location":"assets","locale":"","width":1880,"height":976},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3687921,"resolution":"2","location":"assets","locale":"","width":1928,"height":1134},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3687921,"resolution":"3","location":"assets","locale":"","width":2880,"height":452}},"screenshots":{"1":"The \"Country redirect\" tab in the product data box, with one rule per country.","2":"Adding a rule: pick a country and enter the full target URL.","3":"The admin notice shown when WooCommerce geolocation is not returning a country yet."}},"plugin_section":[],"plugin_tags":[3751,4124,8379,727,286],"plugin_category":[45,49],"plugin_contributors":[279885],"plugin_business_model":[],"class_list":["post-364854","plugin","type-plugin","status-publish","hentry","plugin_tags-country","plugin_tags-geolocation","plugin_tags-marketplace","plugin_tags-redirect","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-maps-and-location","plugin_contributors-markusegonkuhn","plugin_committers-markusegonkuhn"],"banners":{"banner":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/banner-772x250.png?rev=3687921","banner_2x":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/banner-1544x500.png?rev=3687921","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/icon-128x128.png?rev=3687921","icon_2x":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/icon-256x256.png?rev=3687921","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/screenshot-1.png?rev=3687921","caption":"The \"Country redirect\" tab in the product data box, with one rule per country."},{"src":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/screenshot-2.png?rev=3687921","caption":"Adding a rule: pick a country and enter the full target URL."},{"src":"https:\/\/ps.w.org\/storeward-country-redirect-for-woocommerce\/assets\/screenshot-3.png?rev=3687921","caption":"The admin notice shown when WooCommerce geolocation is not returning a country yet."}],"raw_content":"<!--section=description-->\n<p>Some products cannot be sold everywhere. In one country you sell them yourself, in another an\nAmazon listing or a local distributor takes over. This plugin sends visitors of a product page to\nthe right place instead of showing them a product they cannot order.<\/p>\n\n<p>You add rules directly on the product: one country, one URL. Visitors from a country without a rule\nsee the product page exactly as before.<\/p>\n\n<p><strong>Example<\/strong><\/p>\n\n<ul>\n<li>Visitor from the United States: redirected to your Amazon US listing.<\/li>\n<li>Visitor from Australia: redirected to your Australian distributor.<\/li>\n<li>Visitor from Germany: sees your own product page. No rule, no redirect.<\/li>\n<\/ul>\n\n<p><strong>How it works<\/strong><\/p>\n\n<p>The country comes from the geolocation WooCommerce already includes, so there is no extra service,\nno account, and no external API. The plugin adds a \"Country redirect\" tab to the product data box\nand stores one list of rules per product. That is all it does.<\/p>\n\n<p><strong>Details that matter in practice<\/strong><\/p>\n\n<ul>\n<li>Search engine crawlers are never redirected, so your product stays indexed.<\/li>\n<li>Logged-in shop managers are never redirected, so you can still open your own products. Add\n  ?crwc_country=US to a product URL to see what a visitor from that country would get.<\/li>\n<li>Redirects use HTTP 302, because the target depends on the visitor and must not be cached as a\npermanent move.<\/li>\n<li>Product pages that have rules are excluded from full page caches. Pages without rules are not\ntouched, so your cache hit rate stays where it is.<\/li>\n<li>Rules that point back at the product itself are ignored, so a typo cannot create a redirect loop.<\/li>\n<li>Only <code>http:\/\/<\/code> and <code>https:\/\/<\/code> URLs are accepted.<\/li>\n<li>Uninstalling removes every value the plugin stored.<\/li>\n<\/ul>\n\n<p><strong>What it deliberately does not do<\/strong><\/p>\n\n<p>No analytics, no states or regions, no category or store-wide rules, no import\/export, no licence\nkey, no telemetry, no external service.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin. WooCommerce must be active.<\/li>\n<li>Go to WooCommerce &rsaquo; Settings &rsaquo; General and set \"Default customer location\" to\n\"Geolocate\" or \"Geolocate (with page caching support)\". WooCommerce then downloads the MaxMind\ndatabase it uses to detect countries. A free MaxMind licence key is entered on the same screen.<\/li>\n<li>Edit a product, open the \"Country redirect\" tab in the Product data box.<\/li>\n<li>Choose a country, enter the full target URL, and add more rules as needed.<\/li>\n<li>Update the product.<\/li>\n<\/ol>\n\n<p>If geolocation is not returning a country, the plugin shows a notice in the admin area and no\nredirect happens.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20account%20or%20an%20api%20key%20for%20this%20plugin%3F\"><h3>Do I need an account or an API key for this plugin?<\/h3><\/dt>\n<dd><p>No. The plugin uses the geolocation that ships with WooCommerce. WooCommerce itself needs a free\nMaxMind licence key to download its country database; that is configured in WooCommerce, not here.<\/p><\/dd>\n<dt id=\"i%20use%20cloudflare.%20do%20i%20still%20need%20the%20maxmind%20database%3F\"><h3>I use Cloudflare. Do I still need the MaxMind database?<\/h3><\/dt>\n<dd><p>No. WooCommerce also reads the country header that CDNs such as Cloudflare send, and this plugin\nuses whatever WooCommerce resolves. If your CDN sends that header, geolocation works without the\nMaxMind database.<\/p><\/dd>\n<dt id=\"nothing%20is%20redirected.%20what%20is%20wrong%3F\"><h3>Nothing is redirected. What is wrong?<\/h3><\/dt>\n<dd><p>Check three things. First, \"Default customer location\" in WooCommerce must be set to a geolocate\noption and the MaxMind database must have been downloaded. Second, you are probably logged in as a\nshop manager, and shop managers are never redirected. Third, the country you are testing needs a\nrule on that specific product.<\/p><\/dd>\n<dt id=\"how%20do%20i%20test%20a%20rule%20without%20a%20vpn%3F\"><h3>How do I test a rule without a VPN?<\/h3><\/dt>\n<dd><p>While logged in as a shop manager, add <code>?crwc_country=US<\/code> to the product URL. The rule for that\ncountry is applied to your own request. Visitors cannot use this parameter.<\/p><\/dd>\n<dt id=\"does%20this%20break%20my%20page%20cache%3F\"><h3>Does this break my page cache?<\/h3><\/dt>\n<dd><p>Only for product pages that actually have rules. Those pages set <code>DONOTCACHEPAGE<\/code> and send no-cache\nheaders, which the common caching plugins respect. Every other page, including products without\nrules, stays cached as before.<\/p><\/dd>\n<dt id=\"will%20this%20hurt%20my%20seo%3F\"><h3>Will this hurt my SEO?<\/h3><\/dt>\n<dd><p>Crawlers are excluded from the redirect, so search engines still see and index the product page.\nThe redirect itself is a 302, not a 301, so nothing is recorded as a permanent move.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20variable%20products%3F\"><h3>Does it work with variable products?<\/h3><\/dt>\n<dd><p>Yes. Rules belong to the product, so they apply to the product page including all of its variations.<\/p><\/dd>\n<dt id=\"can%20i%20redirect%20a%20whole%20category%20or%20the%20entire%20store%3F\"><h3>Can I redirect a whole category or the entire store?<\/h3><\/dt>\n<dd><p>No. Rules are set per product. That is intentional for this version.<\/p><\/dd>\n<dt id=\"how%20do%20i%20stop%20a%20redirect%20temporarily%20to%20look%20at%20the%20page%3F\"><h3>How do I stop a redirect temporarily to look at the page?<\/h3><\/dt>\n<dd><p>Add <code>?crwc_no_redirect=1<\/code> to the product URL.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens when I delete the plugin?<\/h3><\/dt>\n<dd><p>All rules, the dismissed-notice flag and the cached geolocation check are removed from the database.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Send visitors of a WooCommerce product to a different URL depending on the country they are browsing from.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/364854","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=364854"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/markusegonkuhn"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=364854"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=364854"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=364854"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=364854"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=364854"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=364854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}