{"id":300181,"date":"2026-04-26T12:05:07","date_gmt":"2026-04-26T12:05:07","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/afriregions-city-neighborhood-for-woocommerce\/"},"modified":"2026-04-28T14:41:16","modified_gmt":"2026-04-28T14:41:16","slug":"afriregions-city-neighborhood-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/afriregions-city-neighborhood-for-woocommerce\/","author":23468482,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.6","stable_tag":"1.0.6","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"AfriRegions City & Neighborhood for WooCommerce","header_author":"woonet237","header_description":"Structured address fields for WooCommerce \u2014 cascading regions, cities, and neighborhoods with zone-based shipping and address validation.","assets_banners_color":"fbf5f0","last_updated":"2026-04-28 14:41:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/afriregions.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":193,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.5":{"tag":"1.0.5","author":"woonet237","date":"2026-04-26 12:04:59"},"1.0.6":{"tag":"1.0.6","author":"woonet237","date":"2026-04-28 14:41:16"}},"upgrade_notice":{"1.0.6":"<p>Adds the Freemius upgrade flow and fixes the shipping rule highlight animation. Recommended for all users.<\/p>","1.0.5":"<p>Fixes typo-tolerant search at checkout and improves the upgrade page accuracy.<\/p>","1.0.4":"<p>Adds &quot;hide if no rule matches&quot; option. Improves accent-insensitive address search. Fixes shipping cost display in the admin order view.<\/p>","1.0.3":"<p>Stability fixes \u2014 recommended for all users.<\/p>","1.0.2":"<p>Improved address field loading on slow mobile connections.<\/p>","1.0.1":"<p>Recommended update. Fixes shipping calculation bugs, adds the cart neighborhood field, and improves the admin interface.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3515779,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3515779,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3515779,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3515779,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.5","1.0.6"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3515779,"resolution":"1","location":"assets","locale":"","width":1422,"height":1162},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3515779,"resolution":"2","location":"assets","locale":"","width":1500,"height":839},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3515779,"resolution":"3","location":"assets","locale":"","width":1500,"height":1755},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3515779,"resolution":"4","location":"assets","locale":"","width":1500,"height":1554},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3515779,"resolution":"5","location":"assets","locale":"","width":1500,"height":1351},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3515779,"resolution":"6","location":"assets","locale":"","width":500,"height":844}},"screenshots":{"1":"Checkout page with cascading Region \u2192 City \u2192 Neighborhood dropdowns","2":"Admin dashboard with setup guide and quick actions","3":"Geo Data management \u2014 accordion with regions, cities, and neighborhoods","4":"Zone-based shipping rules configuration","5":"Delivery restrictions with search and badge indicators","6":"Cart shipping calculator with neighborhood field for accurate rate estimation"}},"plugin_section":[],"plugin_tags":[32976,35402,45117,3546,286],"plugin_category":[45],"plugin_contributors":[258827],"plugin_business_model":[],"class_list":["post-300181","plugin","type-plugin","status-publish","hentry","plugin_tags-africa","plugin_tags-cities","plugin_tags-neighborhoods","plugin_tags-shipping","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-woonet237","plugin_committers-woonet237"],"banners":{"banner":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/banner-772x250.png?rev=3515779","banner_2x":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/banner-1544x500.png?rev=3515779","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/icon-128x128.png?rev=3515779","icon_2x":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/icon-256x256.png?rev=3515779","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-1.png?rev=3515779","caption":"Checkout page with cascading Region \u2192 City \u2192 Neighborhood dropdowns"},{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-2.png?rev=3515779","caption":"Admin dashboard with setup guide and quick actions"},{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-3.png?rev=3515779","caption":"Geo Data management \u2014 accordion with regions, cities, and neighborhoods"},{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-4.png?rev=3515779","caption":"Zone-based shipping rules configuration"},{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-5.png?rev=3515779","caption":"Delivery restrictions with search and badge indicators"},{"src":"https:\/\/ps.w.org\/afriregions-city-neighborhood-for-woocommerce\/assets\/screenshot-6.png?rev=3515779","caption":"Cart shipping calculator with neighborhood field for accurate rate estimation"}],"raw_content":"<!--section=description-->\n<p><strong>Documentation:<\/strong> https:\/\/afriregions.com\/docs\/<\/p>\n\n<p>AfriRegions City &amp; Neighborhood for WooCommerce adds structured geographic address fields to WooCommerce checkout, cart, and My Account pages:<\/p>\n\n<ul>\n<li><strong>Cascading dropdowns<\/strong>: Region \u2192 City \u2192 Neighborhood (with Select2 search)<\/li>\n<li><strong>Zone-based shipping rates<\/strong> with cascading priority: Neighborhood &gt; City &gt; Region &gt; Default<\/li>\n<li><strong>Cart shipping calculator<\/strong> with neighborhood field for accurate rate estimation<\/li>\n<li><strong>Multi-country support<\/strong> : data filtered by WooCommerce allowed countries<\/li>\n<li><strong>Address validation<\/strong> : verify region\/city\/neighborhood consistency at checkout<\/li>\n<li><strong>Delivery restrictions<\/strong> : block orders from specific regions or cities<\/li>\n<li><strong>Landmark field<\/strong> : optional \"Landmark \/ Directions\" for precise delivery instructions<\/li>\n<li><strong>Admin dashboard<\/strong> with setup guide and quick actions<\/li>\n<li><strong>Statistics<\/strong> : order breakdown by region and city with sortable leaderboard<\/li>\n<li><strong>Anti-duplicate shipping rules<\/strong> : visual indicators prevent assigning the same zone twice<\/li>\n<li><strong>REST API<\/strong> with rate limiting and pagination for mobile apps<\/li>\n<li><strong>HPOS compatible<\/strong> (Custom Orders Table)<\/li>\n<li><strong>Multilingual ready<\/strong> (English default, French included)<\/li>\n<\/ul>\n\n<h4>How it works<\/h4>\n\n<ol>\n<li>Activate the plugin and add a supported African country to your WooCommerce settings<\/li>\n<li>Regions, cities, and neighborhoods are automatically available at checkout<\/li>\n<li>Configure zone-based shipping rates in WooCommerce Shipping settings<\/li>\n<li>Optionally add custom cities\/neighborhoods via the Geo Data admin tab<\/li>\n<li>Optionally restrict delivery to specific zones<\/li>\n<\/ol>\n\n<h4>Supported countries<\/h4>\n\n<ul>\n<li>\ud83c\udde9\ud83c\uddff Algeria (DZ) \u2014 48 wilayas<\/li>\n<li>\ud83c\udde7\ud83c\uddef Benin (BJ) \u2014 12 departments<\/li>\n<li>\ud83c\udde7\ud83c\uddeb Burkina Faso (BF) \u2014 13 regions<\/li>\n<li>\ud83c\udde8\ud83c\uddf2 Cameroon (CM) \u2014 10 regions<\/li>\n<li>\ud83c\udde8\ud83c\uddee Cote d'Ivoire (CI) \u2014 14 districts<\/li>\n<li>\ud83c\udde8\ud83c\udde9 DR Congo (CD) \u2014 26 provinces<\/li>\n<li>\ud83c\uddea\ud83c\uddec Egypt (EG) \u2014 27 governorates<\/li>\n<li>\ud83c\uddec\ud83c\udde6 Gabon (GA) \u2014 9 provinces<\/li>\n<li>\ud83c\uddec\ud83c\udded Ghana (GH) \u2014 16 regions<\/li>\n<li>\ud83c\uddf0\ud83c\uddea Kenya (KE) \u2014 47 counties<\/li>\n<li>\ud83c\uddf2\ud83c\uddec Madagascar (MG) \u2014 22 regions<\/li>\n<li>\ud83c\uddf2\ud83c\uddfa Mauritius (MU) \u2014 10 districts<\/li>\n<li>\ud83c\uddf2\ud83c\udde6 Morocco (MA) \u2014 12 regions<\/li>\n<li>\ud83c\uddf3\ud83c\uddec Nigeria (NG) \u2014 36 states + FCT<\/li>\n<li>\ud83c\uddf7\ud83c\uddfc Rwanda (RW) \u2014 5 provinces<\/li>\n<li>\ud83c\uddf8\ud83c\uddf3 Senegal (SN) \u2014 14 regions<\/li>\n<li>\ud83c\uddff\ud83c\udde6 South Africa (ZA) \u2014 9 provinces<\/li>\n<li>\ud83c\uddf9\ud83c\uddff Tanzania (TZ) \u2014 31 regions<\/li>\n<li>\ud83c\uddf9\ud83c\uddf3 Tunisia (TN) \u2014 24 governorates<\/li>\n<\/ul>\n\n<p>Each country includes regions, cities, and neighborhoods for major urban areas.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>All geographic data (regions, cities, neighborhoods) is bundled locally within the plugin. No external API calls are made for checkout functionality.<\/p>\n\n<p>The optional REST API exposes local geographic data (regions, cities, neighborhoods) via WordPress REST endpoints (<code>\/wp-json\/scpwoo\/v1\/<\/code>).<\/p>\n\n<p>This plugin uses <strong>Freemius<\/strong> to manage licences, upgrades, and optional usage analytics. When the site administrator opts in, diagnostic data (WordPress version, PHP version, active plugins) and the administrator's email address are sent to Freemius servers at <code>https:\/\/freemius.com<\/code>. No data is collected without explicit opt-in. Opting out is available at any time from the plugin's account screen.<\/p>\n\n<ul>\n<li>Freemius Privacy Policy: https:\/\/freemius.com\/privacy\/<\/li>\n<li>Freemius Terms of Service: https:\/\/freemius.com\/terms\/<\/li>\n<\/ul>\n\n<h3>Third-Party Libraries<\/h3>\n\n<p>This plugin bundles the following third-party JavaScript library:<\/p>\n\n<ul>\n<li><strong>Fuse.js v7.3.0<\/strong> \u2014 Lightweight fuzzy-search library used for typo-tolerant matching in checkout dropdowns.\n\n<ul>\n<li>Source: https:\/\/www.fusejs.io\/<\/li>\n<li>License: Apache License 2.0 (compatible with GPLv2 or later via GPLv3)<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code><\/li>\n<li>Activate via the WordPress Plugins menu<\/li>\n<li>Add your target countries to WooCommerce Settings \u2192 General \u2192 Selling\/Shipping locations<\/li>\n<li>Go to WooCommerce \u2192 AfriRegions to configure<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20to%20add%20custom%20cities%20or%20neighborhoods%3F\"><h3>How to add custom cities or neighborhoods?<\/h3><\/dt>\n<dd><p>Go to WooCommerce \u2192 AfriRegions \u2192 Geo Data tab. Expand a region, then use the \"Add a city\" or \"Add\" button for neighborhoods. You can also use the <code>scpwoo_custom_places_{cc}<\/code> filter (e.g. <code>scpwoo_custom_places_cm<\/code> for Cameroon).<\/p><\/dd>\n<dt id=\"how%20to%20set%20shipping%20rates%20by%20zone%3F\"><h3>How to set shipping rates by zone?<\/h3><\/dt>\n<dd><p>Go to WooCommerce \u2192 Shipping \u2192 your zone \u2192 add \"Zone Shipping\" method. Configure a default rate, then add rules by region, city, or neighborhood. The most specific rule wins (Neighborhood &gt; City &gt; Region &gt; Default).<\/p><\/dd>\n<dt id=\"how%20to%20restrict%20delivery%20to%20certain%20zones%3F\"><h3>How to restrict delivery to certain zones?<\/h3><\/dt>\n<dd><p>Go to WooCommerce \u2192 AfriRegions \u2192 Restrictions tab. Enable restrictions, then check the regions or cities you want to block.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20cart%20shipping%20calculator%3F\"><h3>Does it work with the cart shipping calculator?<\/h3><\/dt>\n<dd><p>Yes. The neighborhood field appears in the cart shipping calculator when a city with neighborhoods is selected. Shipping rates update in real-time.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20hpos%20%28custom%20orders%20table%29%3F\"><h3>Is it compatible with HPOS (Custom Orders Table)?<\/h3><\/dt>\n<dd><p>Yes. The plugin fully supports both HPOS and classic post-based orders.<\/p><\/dd>\n<dt id=\"does%20the%20rest%20api%20expose%20my%20data%20publicly%3F\"><h3>Does the REST API expose my data publicly?<\/h3><\/dt>\n<dd><p>The REST API is enabled by default and exposes geographic data (regions, cities, neighborhoods) bundled in the plugin. Rate limiting (120 requests\/minute per IP) protects against abuse. The data itself is not sensitive \u2014 it is the same public geographic data available at checkout.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>New: Upgrade to Pro directly from the plugin \u2014 licence management and opt-in usage analytics via Freemius<\/li>\n<li>Fixed: Shipping rule highlight animation now replays correctly when the same rule is edited multiple times<\/li>\n<li>Improved: Keyboard navigation for sortable table columns and region\/city accordion (Enter and Space keys)<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Fixed: Typo-tolerant search now works correctly at checkout \u2014 it was included but not properly activated<\/li>\n<li>Fixed: The upgrade page now accurately describes what is available for free and what requires the Pro version<\/li>\n<li>Improved: Plugin translations load automatically on WordPress 6.7 and later<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>New: \"Hide if no rule matches\" option \u2014 hides the shipping method when no rate applies, instead of showing a default price<\/li>\n<li>Improved: Address dropdowns now work without accents \u2014 typing \"yaounde\" correctly finds \"Yaound\u00e9\"<\/li>\n<li>Improved: Typo-tolerant search now requires at least 4 characters to avoid unrelated results<\/li>\n<li>Fixed: Shipping cost details no longer appear as unreadable text in the admin order view<\/li>\n<li>Updated: French translations improved<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fixed: A crash that could occur when the free shipping threshold was set to zero<\/li>\n<li>Fixed: Shipping label prices now display correctly<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Improved: Address fields load more reliably on slow mobile connections<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>New: Neighborhood field added to the cart shipping calculator for accurate rate estimates before checkout<\/li>\n<li>New: Shipping rates refresh automatically when the neighborhood changes<\/li>\n<li>New: Setup guide on the dashboard with a progress checklist<\/li>\n<li>New: Statistics leaderboard with sorting, search, and medals<\/li>\n<li>Improved: Shipping rules editor highlights zones already in use to prevent duplicates<\/li>\n<li>Improved: Admin pages redesigned to match the standard WordPress look and feel<\/li>\n<li>Fixed: Neighborhood saved in the cart no longer overrides an empty selection at checkout<\/li>\n<li>Fixed: Shipping rates now recalculate correctly when only the neighborhood changes<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>19 African countries supported<\/li>\n<li>Cascading address fields: Region \u2192 City \u2192 Neighborhood<\/li>\n<li>Zone-based shipping with rates per region, city, or neighborhood<\/li>\n<li>Address validation at checkout<\/li>\n<li>Landmark and directions field<\/li>\n<li>Delivery zone restrictions<\/li>\n<li>Admin dashboard with order statistics<\/li>\n<li>REST API for mobile app integration<\/li>\n<li>Compatible with WooCommerce High-Performance Order Storage (HPOS)<\/li>\n<li>Available in English and French<\/li>\n<\/ul>","raw_excerpt":"Add structured address fields (Region, City and District) to WooCommerce with precise shipping rates per zone for African countries.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/300181","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=300181"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/woonet237"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=300181"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=300181"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=300181"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=300181"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=300181"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=300181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}