GeoDirectory Location Manager - WordPress Plugin
If your directory website covers more than one city, you’ll need the Location Manager Add-on. The Core Plugin that we offer free on WordPress.org allows submitting listings only within 1 location (City, Town, or Village). With the Location Manager, you can expand your directory and go global!

Plugin Features
The plugin offers a comprehensive solution for managing locations efficiently within the GeoDirectory framework. It streamlines the process of handling various aspects related to locations on your WordPress site, enhancing user experience and site functionality. By utilizing this tool, users can easily organize, categorize, and display location-based information with precision and flexibility. With its robust features and intuitive interface, managing location-specific data becomes seamless and hassle-free.
Enhance your websites capabilities with this invaluable plugin that acts as an extension to your GeoDirectory setup. It provides essential tools to curate, edit, and update location information while maintaining the integrity and accuracy of your data. From geocoding to advanced location search functionality, this plugin empowers site owners to present location-based content effectively. Its versatility and customizable options make it a must-have for any GeoDirectory user looking to optimize their location management tasks.
The plugin boasts a user-friendly interface, ensuring ease of use for beginners and advanced users alike. Its intuitive design and straightforward navigation make it a valuable addition to any WordPress site utilizing GeoDirectory. By centralizing location data management, users can save time and effort in maintaining accurate location information, delivering a seamless and engaging user experience. With its efficient tools and features, this plugin transforms location management into a straightforward and streamlined process, enhancing the overall functionality of your website.
Unlock the full potential of your GeoDirectory setup by integrating GeoDirectory Location Manager, which serves as a robust location management solution. Whether you are creating a directory, map-based site, or any location-centric platform, this plugin offers the necessary tools to elevate your websites performance. Seamlessly integrate location data, customize maps, and optimize search functionalities to provide users with a dynamic and engaging experience. Its compatibility with GeoDirectory ensures smooth operation and maximizes the benefits of location-based content on your WordPress site.
Experience seamless location management within your GeoDirectory ecosystem with this essential plugin. It empowers site owners to optimize their location-related tasks efficiently, offering a range of functionalities to simplify data organization and display. From location categorization to advanced mapping features, this plugin equips users with the necessary tools to create a cohesive and user-friendly location-based platform. Elevate your GeoDirectory experience with this plugin and take control of your location management endeavors with confidence and ease.
Specifications:
| Release date: | 11-10-2020 | |
| Last updated: | 08-10-2026 | |
| Type: | Paid | |
| License: | GPL | |
| Subject: | Maps & Weather for GeoDirectory | |
| Compatibility: | W5.x W6.x | |
| Includes: | Plugin | |
| Language packs: |
|
|
| Developer: | GeoDirectory | |
| Rating: | ||
Share with your friends!
How to Configure GeoDirectory Location Manager for a Multi-Location Directory
GeoDirectory Location Manager becomes essential when a simple city directory is no longer enough and your site needs to display listings, businesses, places, or services across countries, regions, cities, and, when needed, neighborhoods. This guide does not cover the plugin's general marketing features. Instead, it focuses on the practical work after installation: how to prepare WordPress, which settings to open first, how to avoid breaking your URLs, how to add locations, display a city switcher, test search near the user, and troubleshoot common issues.
This guide is written for a directory administrator who already understands why they need GeoDirectory but wants to configure the extension without ending up with city chaos, duplicates, empty pages, or confusing map behavior. We will look separately at when locations are better created manually, when automatic creation through the listing submission form is safe to rely on, why HTTPS affects the Near Me feature, how to work with location descriptions, and what to do if Google Maps, OpenStreetMap, caching, or permalinks behave differently than expected.
This article uses future instructional visuals. They are not a replacement for the documentation. Their role is to show exactly where Location Manager changes the directory logic: from a single base point to a "country - region - city - neighborhood" structure, from an admin setting to a public location page, and from a map issue to a quick troubleshooting path.
What the Extension Solves and Where Its Limits Are
Core GeoDirectory can build a directory on WordPress, but its free core is designed around a single base location. That works well for a neighborhood site, a small city, a closed campus, or a local community directory. The problem starts when the directory needs to scale geographically: the same type of listing is needed in multiple cities, visitors need to switch between places quickly, and the administrator wants clean location pages with clear URLs and metadata.
GeoDirectory Location Manager adds exactly that geographic layer. It does not replace listing cards, categories, custom fields, detail templates, or monetization. Its job is narrower: connect every listing to a place, allow multiple countries, regions, cities, and neighborhoods, show the user the current location, give them a switcher, and help search work around "here," "near me," or "in the selected city." That is why this extension should not be evaluated as a standalone directory plugin, but as an add-on for a site already built on GeoDirectory.
The Core Logic: Location Becomes a Filter and Part of Navigation
In a standard directory, users often start with a category: restaurants, hotels, doctors, contractors, stores. In a multi-location directory, a category without location becomes too broad very quickly. People are not just looking for "a dentist" - they want a dentist in a specific city, neighborhood, or near their current location. Location Manager adds a layer that lets you narrow results by country, region, city, and neighborhood, while also using geolocation to find the nearest results.
It is important to understand the difference between a structural location and a map point. A structural location answers which country, region, city, or neighborhood a listing belongs to. A map point answers where the object is physically located. If an address is recognized incorrectly, the city may be created incorrectly or the map may point to the wrong place. That is why configuring Location Manager always goes hand in hand with checking your mapping provider, the listing submission form, and your permalink structure.
Who the Extension Is For
This extension is especially useful for directories that are designed to grow geographically from the start. That includes city guides, travel directories, regional service directories, branch-location sites, real estate databases, local classifieds, venue roundups, and professional directories. If visitors need to choose "where" before they decide "what," Location Manager becomes a central part of the user journey.
It is also a strong fit for administrators who need dedicated location pages. For a city, you can add a description, meta title, meta description, image, and text block on the public page. That makes it possible to manage geography inside the GeoDirectory structure instead of manually creating dozens of regular WordPress pages for each location.
Who Should Not Start with Location Manager
If the site covers one city and has no plans to expand beyond it, the extension may add unnecessary complexity. In that case, it usually makes more sense to first clean up your core listings, categories, archive templates, listing submission form, and search experience. Location Manager is most useful when you already have a real reason to divide the directory across multiple territories or when geography is a key filter from day one.
It is also not worth installing it just because "it might come in handy later" if you do not yet have a city structure, a permalink strategy, or a set of test listings. A multi-location directory is harder to maintain: you need to watch for duplicate cities, avoid changing permalinks without a plan, verify the map after caching, and teach editors how to enter addresses properly. The earlier you establish clear rules, the less cleanup you will have to do later.
| Scenario | Decision | What to Check in Advance |
|---|---|---|
| Directory across multiple cities | Enable multiple cities and display a location switcher | URL structure, test cities, and search behavior |
| Directory organized by neighborhoods within a city | Enable neighborhoods only after city setup is complete | Whether users and editors actually need neighborhoods |
| Search near the user | Use Near Me and HTML5 Geolocation |
HTTPS, browser permissions, and a manual map-point fallback |
| City pages for SEO | Fill in the location description, metadata, and image | Output template, uniqueness of descriptions, and URL indexation |
What to Check Before Installation
Preparation matters more with Location Manager than with many small add-ons. This extension changes navigation, permalinks, the listing submission form, and public search. If you enable it on a live directory without a testing plan, you can end up with duplicate cities, hard-to-explain 404s, broken near-user search, or a map that works for the admin but fails to load for visitors.
Core GeoDirectory and a Staging Copy of the Site
First, make sure core GeoDirectory is already installed, activated, and correctly displaying at least a few test listings. Check the archive page, detail page, listing submission form, map, and search. Location Manager should not be the first active component in an empty directory if you have not configured your post types and templates yet.
For a live project, it is safer to work on a copy of the site. This is especially important if the directory already contains real listings: once you add the location layer, you will be testing addresses, URLs, the map, filters, and widgets. On a staging copy, you can safely change the permalink structure, add a few cities, enable neighborhoods, and see how that affects existing pages.
Environment Requirements and the REST API
GeoDirectory uses the WordPress REST API for part of its interactive functionality, including map requests and AJAX-driven elements. If the REST API is blocked by a security plugin, server rules, or a WAF, interactive Location Manager elements can behave unpredictably: the switcher may not suggest cities, the map may not load markers, and search may fail to refresh results. Before configuring anything, open the GeoDirectory status page in the admin panel and clear any warnings.
Also check memory, PHP, the database, and HTTPS separately. For a small test site, the requirements may look modest, but a multi-location directory almost always grows in listings, queries, and mapping operations. HTTPS is required for full browser geolocation support: without it, users will not be able to reliably grant access to their coordinates, and the Near Me feature will fall back to manual map point selection much more often.
Maps: Google Maps or OpenStreetMap
Location Manager can work with mapping data through Google Maps or OpenStreetMap depending on your GeoDirectory settings. If you use Google Maps, prepare the key in advance, restrict it to the proper domain, and understand whether you also need server-side geocoding for imports. If the key is restricted to HTTP referrers only, some server-side operations that fill in missing address data may fail. If you want a simpler starting point or do not need a key, OpenStreetMap can be a practical option for initial testing.
Do not store secret keys in editor notes or pass them into automated text generators. For the article, it is enough to describe the principle: the map should load for visitors, administrators, and mobile users, and geocoding should return the expected country, region, and city. If the map works only in an admin session, the issue is likely related to caching, JavaScript minification, key restrictions, or security rules.
Permalinks and Your Future URL Structure
Permalinks are best planned before you publish a large number of listings. GeoDirectory lets you change the URL structure for its post types and taxonomies, and Location Manager adds a good reason to include the country, region, or city in the page URL. That can be helpful for both visitors and search engines, but it also changes the administrator's responsibility: if you publish hundreds of pages with short URLs first and only later add a location path, you will need to check redirects and broken links.
For a new project, it usually makes sense to choose a structure up front where the location helps explain the page context. For an existing project, export the list of important URLs first, check which pages already receive traffic, and only change permalinks after testing. Location Manager does not have to force location into every URL at any cost; the right decision depends on how important geography is to the user and how reliably you can maintain the location database over time.
Installation and the First Check After Activation
GeoDirectory Location Manager is installed as an add-on to the main GeoDirectory plugin. In a typical admin workflow, there are two standard options: install it through the GeoDirectory extensions screen or manually upload the ZIP file through the standard WordPress screen at Plugins - Add New - Upload Plugin. There is no need to build separate authentication into the site or write code to connect the extension. Use the standard WordPress and GeoDirectory installation flow.
After activation, do not jump straight into importing all cities. Start with a short initial check: has the GeoDirectory - Settings - Locations section appeared, are the location tabs visible, does the settings page open without errors, is the GeoDirectory status page working, and does the map still display on an existing listing. If there are warnings at this stage, it is better to resolve them before adding dozens of listings.
A Safe First Order of Operations
- Create a backup or work on a staging copy of the site.
- Make sure the main map and the basic GeoDirectory pages work without Location Manager.
- Install and activate the extension using the standard WordPress method or the GeoDirectory extensions screen.
- Open
GeoDirectory-Settings-Locationsand review the settings without changing everything at once. - Create or verify one test location, then add one test listing inside that location.
- Check the public city page, search, map, and location switcher as a guest user.
That sequence may feel slow, but it saves time. If you import hundreds of listings first and only then discover that regions were recognized incorrectly, permalinks were chosen poorly, or the map does not work for guests, the fix will take much longer. In a multi-location directory, your first test should validate the entire chain: setting - listing - URL - search - map - public result.
What Should Appear in the Admin Panel
Inside the Locations area, you should see settings for URLs, country, region, and city restrictions, neighborhood support, manual location creation, and lists of existing countries, regions, cities, and neighborhoods. This is not a separate WordPress area but part of the GeoDirectory settings. The interface works much like an operational table: you can search locations, see how many listings belong to them, add data for the location page, and merge duplicates when needed.
If the Locations tab is missing, check whether the extension is activated, whether it is compatible with your installed GeoDirectory core version, and whether there is a fatal error in the admin panel. If the tab exists but some settings do not save, check admin permissions, the REST API, admin-side caching, and conflicting security plugins. Do not start by reinstalling WordPress. In most cases, the problem is in the environment, permissions, or the extension state.
Detailed Location Settings: URLs, Restrictions, and the Submission Form
The GeoDirectory - Settings - Locations - Settings section determines how the site behaves on location-filtered pages. This is one of the most important screens after installation. It controls not only where listings can be added, but also where archive links go, how the current location behaves, whether all places should appear in a dropdown, and whether neighborhoods are needed.
URL Settings: Where Links from Location Pages Lead
URL settings control link behavior when the user is inside a specific location page. For example, they open a city page, browse a category, and click an archive link. The site can either keep the current city in the URL or send the user back to the general archive without a location filter. Both approaches are valid, but they create different user experiences.
If the directory is built around cities, it usually makes more sense to preserve the location context: the user chose a city and expects categories, archives, and results to stay inside it. If the directory is more like a nationwide database where the city is just an extra filter, some links may reasonably lead back to the general archive. The important thing is not to mix those behaviors accidentally. Users should understand why they are seeing results for one city or for the full database.
Enable Locations: How to Restrict the Directory's Geography
By default, users can add listings in different places as long as the mapping provider returns valid address data. That is convenient for an open directory, but risky for a project with limited geography. If you are launching a directory for only a few countries, regions, or cities, use restrictions. That reduces the chance that an editor or user will create an extra country, a misspelled city, or a region that should never appear in public navigation.
Restrictions come with one important condition: the locations you allow must already exist in the GeoDirectory database. You can add them manually, create them through a test listing, or generate them during a listing import with valid addresses. The standard workflow looks like this: first create a few canonical locations, check their URLs and descriptions, and only then restrict listing submission to the required countries, regions, or cities.
When to Choose One Country, Multiple Countries, or Selected Countries
One country is appropriate for a national directory: all listings stay within a single country, and extra country choices only get in the way. Multiple countries make sense for an international directory with a clear editorial policy. Selected countries work well when the directory is not global but limited to a specific set of markets. The same logic applies to regions and cities: the smaller the project territory, the more tightly you can control input.
Do not enable strict restrictions until you have verified that all required locations already exist. Otherwise, an editor may be unable to add a valid listing even though the address is real. If a restriction gets in the way, temporarily switch back to a more flexible mode, create the missing cities, and enable the restriction again. Rollback should stay controlled: change one level at a time and immediately test the listing submission form.
The Listing Submission Form and Address Autocomplete
The listing submission form ties together the text address, the map, the country, the region, the city, and, if enabled, the neighborhood. Address autocomplete helps users pick a place faster, but it can also create confusion in nonstandard territories. If the mapping provider interprets your custom location as a regular city or region with a different name, it may try to overwrite the fields with its preferred values.
In most directories, there is no reason to disable autocomplete by default: it reduces input errors and helps retrieve coordinates. But for custom zones, internal campuses, nonstandard administrative divisions, and local naming systems, you may need a setting that prevents the map marker from automatically changing address fields. This is a sensitive setting: only enable it after testing a real location and documenting for editors when it should be used.
Show All Locations in a Dropdown: Use Caution on Large Databases
The setting that shows all locations in a dropdown can feel convenient in a small directory: the editor sees every city and picks one. On a large site, that list can become heavy, slow, and awkward to use. If the database contains hundreds or thousands of cities, it is better to rely on search, autocomplete, and restrictions instead of forcing the interface to render the entire set at once.
The practical rule is simple: for a small database, you can temporarily enable the full list to verify the structure more quickly. For a growing directory, it is better to use search and keep the form lightweight. If the form slows down after enabling the full list, switch the setting back and clear the page cache. Do not mistake that delay for a Location Manager problem by itself. In many cases, it is simply the result of loading too many options into a single form element.
Neighborhoods: Useful Detail or Extra Complexity
Neighborhoods are disabled by default, and that is a sensible choice. Not every directory needs them. If a user is looking for a restaurant, clinic, contractor, or pickup point in a large city, a neighborhood can be a useful filter. If the directory covers small towns or sparse listings, neighborhoods only complicate input and create empty pages. Enable them when you have a real user need: listing density, recognizable neighborhood names, and a team prepared to maintain that structure.
Once neighborhoods are enabled, a separate tab appears, and the city list allows you to add neighborhoods for a specific city. For each neighborhood, you can fill in metadata, a description, an image, and a tagline. Before adding neighborhoods at scale, test one city first: add two neighborhoods, create listings, open the public pages, check the location switcher, and make sure editors clearly understand where the city ends and the neighborhood begins.
Post-configuration check: create one test listing in an allowed city, open it as a guest, then visit the city page and try changing the location through the switcher. If the city does not appear, the problem is likely in your restrictions, an incomplete location database, or caching.
The Location Database: Countries, Regions, Cities, and Neighborhoods Without Duplicates
Location Manager stores locations as a hierarchy: a country contains regions, a region contains cities, and a city may contain neighborhoods. That structure looks straightforward as long as data is entered carefully. In a real directory, though, addresses come from multiple sources: the administrator adds listings manually, users submit the public form, imports load data from CSV, and the map returns different naming variants. Without clear rules, duplicates appear: the same city with different spellings, an extra region, or a neighborhood created because of an address error.
Automatic Location Creation Through a Listing
The official extension logic does not require you to prefill every location in advance. When a new listing is added and its address points to a place that does not yet exist in the database, Location Manager can create that location automatically. That is convenient for an open directory where users submit businesses from many different cities. The administrator does not need to prepare a complete list of all possible places ahead of time.
But automatic creation does not remove the need for editorial control. If the form is open to users, review newly created locations in the admin panel. An address error can create an extra city, not just an incorrect listing. If you see two similar cities or regions, do not start editing every listing manually and blindly. First identify the correct location, then use the merge mechanism to bring listings and permalinks under a single canonical version.
Adding a City Manually
Manual creation is useful when you already know your launch cities and want to prepare them properly. Go to the add-location section, enter the city, region, and country, check the spot on the map, move the marker if needed, fill in the coordinates, meta title, meta description, location description, image, and tagline. After saving, open the public page and make sure it does not look like an empty system page.
For any city that will serve as a landing page, do not stop at the name alone. Add a short description explaining what the user will find in that location. For a medical services directory, that might describe service areas and clinic types; for a restaurant directory, it could highlight cuisine styles and neighborhoods; for a service directory, it might explain coverage zones. Do not reuse the same text for every city. Those pages will have little search value, and users will not gain any real local context.
Merging Duplicates
If duplicate countries, cities, or neighborhoods appear in the database, use the built-in location merge tool. The idea is straightforward: select several similar locations, apply the Merge action, then choose the primary location that listings should belong to. This is better than trying to delete an extra location by hand, because merging is meant to update listing relationships and align URLs with the chosen version.
Before merging, create a backup and note which URLs may already be indexed or linked internally. After the merge, check listing pages, the location page, the map, and search. If old addresses still appear on the public site, clear the cache and resave permalinks. If some listings ended up under the wrong city, restore from backup or fix relationships one by one, but do not launch another bulk merge without first diagnosing what went wrong.
Custom Locations and Map Behavior
Some projects need something other than standard administrative names. Examples include tourist districts, campuses, delivery zones, business quarters, or custom service areas. In that case, the map may still try to return standard city and region values. In that scenario, you have a few careful options: rename interface strings, prevent the map marker from overwriting address fields, or merge map-created standard locations with your custom ones.
Do not use custom locations as a way to hide bad address data. If a business is in a real city, it is usually better to keep the correct city and add your special zone as an extra layer if that fits the use case. A custom structure should improve navigation, not break the map and search. Test it on three levels: the submission form, the public filter, and the result page.
Location Switcher, Widgets, and Search Near the User
The user-facing value of Location Manager really shows up on the public side of the site. Visitors should be able to see the current location, change it without hunting through the site, and understand why the results changed. To support that, the extension provides Location Switcher, the Locations widget, Location Description, Location Meta, and the Near Me button. These elements can appear as widgets, shortcodes, or blocks, so they can be added to a menu, sidebar, footer, city page, or archive template.
Location Switcher in the Menu
The most obvious place for the switcher is the main menu. In the WordPress admin panel, open Appearance - Menus, enable the GeoDirectory Endpoints block in Screen Options, select Location Switcher, add the Change Location item to the menu, and save it. After that, the user can open location switching from any page where the menu is displayed.
Check not only that the menu item appears, but also how the modal behaves. Start typing a city that already exists in the database and see whether the switcher suggests it. Then enter a place that is not yet in the database. Location Manager can use geocoding through Google API or OSM and suggest a proximity-based search even if the location is not yet stored in the database. That is useful, but expectations need to stay realistic: this kind of search does not automatically turn that place into a full directory page unless you create the location and connect listings to it.
The Locations Widget as City Navigation
The Locations widget displays existing countries, regions, cities, or neighborhoods from the database. It can be shown as a list or an image grid. On a directory homepage, it might become a "Popular Cities" block; on a country page, a list of regions; on a region page, a grid of cities. If your locations have images and descriptions filled in, this block feels less like a plain link list and more like a navigational showcase for the directory.
Do not display every city on every page if the database is large. Limit the number, use pagination, or filter by the current country or region. If you dump hundreds of cities into one page, the page becomes heavy and users lose focus. It is better to build a few contextual blocks: popular cities on the homepage, neighborhoods on a city page, neighboring regions on a region page.
Location Description and Location Meta
Location Description outputs the description of the current location. That is especially helpful on city pages because it makes it clear that the directory is showing that city specifically rather than a general archive. Location Meta gives you more targeted output: the location name, slug, link, URL, description, meta title, meta description, image, or tagline. These elements are useful in templates where you want to build a polished location page without manually creating a separate WordPress page.
A practical approach is to first fill in the city description and image, then place Location Description at the top of the location page template and use Location Meta for the image or link where it makes sense. After that, open several cities and make sure the template does not show empty blocks where data is missing. If blank spaces appear, hide them through widget options or refine the template.
Near Me and Geolocation
Near Me shows a button that asks for the user's location and sends them to a results page sorted by distance. On mobile devices, accuracy may be better thanks to GPS. In the browser, it relies on HTML5 Geolocation, and if the feature is denied or unavailable, the user can choose a point manually on the map. That fallback matters: you cannot expect every visitor to grant location access.
Test Near Me in three states: the user allows geolocation, the user denies it, and the site is opened without HTTPS or with a problematic certificate. In the first case, nearby results should appear. In the second, a manual point selection flow should appear. In the third, behavior may be limited. If the button does nothing at all, check the browser console, the REST API, the map key, and the JavaScript cache.
Connected with Advanced Search
If the site uses Advanced Search, Location Manager can make search suggestions depend on the current location or, depending on the directory's purpose, search across all locations instead. That is an important decision. In a city directory, users usually want results inside the currently selected city. In a national directory with sparse categories, broader search may be more useful so users are not shown empty results where there are too few listings.
Do not enable AJAX search and location-aware suggestions without performance testing. AJAX makes the interface feel faster for users, but it also creates more background requests. On a small directory, that is barely noticeable. On a directory with many listings, a map, filters, and caching, you need to check how quickly results refresh, whether the cache blocks REST requests, and whether filters produce strange empty states.
SEO Location Pages, Metadata, and Permalinks
Location Manager has strong SEO potential, but only if the location pages are filled out and logically integrated into the directory. An empty city page with nothing but a listings grid is often weaker than a page with a short description, a clear heading, a proper URL, an image, category navigation, and real listings. At the same time, you should not turn every location into a pile of repetitive phrases. Users need to see real local meaning.
Metadata for Location Pages
For each location, you can fill in a meta title, meta description, description, image, and tagline. At the broader GeoDirectory settings level, there is a Titles & Meta section where you can define templates and variables. The Location Manager product page also notes that location pages can use shared metadata with variables such as the location name. That is useful as a fallback, but the best pages still need manual editorial work.
A practical method is to use a shared meta title template for all cities so you do not end up with empty metadata, then manually add descriptions, images, and more specific text for your priority cities. That way, you do not block the project launch just because dozens of cities are still incomplete, while still improving your most important pages over time. Do not promise SEO growth just because Location Manager is enabled: the extension gives you structure, but quality still depends on content, listings, speed, indexing, and internal navigation.
Yoast SEO, Rank Math, and GeoDirectory Variables
If the site uses Yoast SEO, some metadata may be controlled through Yoast, while GeoDirectory continues to handle the headings for its own pages. The documentation describes how to use GeoDirectory variables and custom fields inside SEO templates. For Location Manager, the main priority is not to overload templates with variables and to review the actual snippet on several page types: a city page, a category within a city, a listing page, and a search page.
The same principle applies to Rank Math: use variables only where they add real meaning. If the meta description turns into a mechanical phrase like "Directory in %%location_name%%," the user gets no value from it. It is better to briefly explain the type of directory, the city, and the main action: find, compare, choose, or view nearby options. Variables should help scale the structure, not replace editing.
Permalinks with Location Included
GeoDirectory Permalinks let you use predefined structures or custom variants with country, region, and city variables. For a multi-location directory, this is one of the most important choices. A structure like "post type - country - region - city - listing" can be clear and durable, but it is also longer. A shorter structure is simpler, but it does less to signal geographic context.
Choose the structure based on user behavior. If most visitors start with the city, location in the URL helps. If the directory is primarily topic-driven and geography is secondary, you may prefer shorter URLs and show location through filters and breadcrumbs instead. After any permalink change, resave the WordPress settings, check both old and new URLs, clear the cache, and test several listings in different cities.
Yoast Sitemap and Location Pages
The official extension page notes sitemap support for locations when Yoast SEO is used. That is helpful when city and region pages truly deserve to be indexed. But being added to the sitemap does not automatically make a page good. If the database contains many empty cities with no listings or descriptions, do not rush to open them all for indexing. First decide which locations have enough content to justify it.
A practical check is simple: open the sitemap, find a few location URLs, then visit them like a normal user. The page should be useful: a clear heading, a list of listings, a description or navigation, a working map, and no empty widgets. If the page feels technical rather than helpful, refine the template or temporarily restrict indexing for weaker locations through your SEO plugin.
Practical Scenario: A Service Directory Across Multiple Cities
Let us walk through a concrete example. Suppose you are launching a directory of local services: repair, cleaning, education, delivery, consulting. The site starts in three cities but will later expand into other regions. It is important that visitors can pick a city, find nearby companies, and that editors do not create duplicate places when adding listings.
Goal of the Scenario
You need a structure where every listing is connected to the correct city, public navigation includes a location switcher, the city page shows a description and a list of services, and users can search near themselves. You also need to verify that permalinks do not break and that the map works for guests, not just administrators.
Preparation
Before configuration, create a few test categories such as "Repair," "Cleaning," and "Education." Prepare one test listing for each city. Make sure GeoDirectory core is working, the map displays, and both archive and listing pages open correctly. Then enable Location Manager on a staging copy of the site.
Next, add three canonical cities manually. For each one, specify the country and region, verify the map marker, and fill in the city description and metadata. If you plan to use a city image inside the Locations block, upload different images and short taglines. At this stage, do not enable neighborhoods unless you need them for the first group of cities.
Configuration Steps
- Open
GeoDirectory-Settings-Locations-Settingsand choose a multi-city mode. - If the directory is limited to launch cities, allow only the selected cities after they have been created in the database.
- Go to
Settings-Permalinksand choose a GeoDirectory structure that does not conflict with existing pages. - Add
Location Switcherto the main menu throughAppearance-Menus. - Place the Locations block or widget on the directory homepage, limiting output to the launch cities.
- Add Location Description to the location page template so each city has explanatory text.
- Create one test listing in each city and verify that listings do not get mixed together in the results.
- Add
Near Meto the search page or another convenient archive location and test geolocation permission handling.
Checking the Result
Open the site as a guest. Select the first city through the menu, go to the "Repair" category, and make sure the list shows only listings from the selected location if that is the behavior you configured. Then clear the current location through the switcher and confirm that the site returns to the general directory or to your chosen fallback scenario.
Check the URL. If you chose a location-based structure, the address should be clear and stable. If the URL is too long or contains an unexpected country or region, go back to the permalink settings and your test listing. Do not change the structure on the live site until you have tested three different listings and one category inside a city.
Test Near Me. Allow geolocation and see whether the results are sorted by distance. Then repeat the test while denying geolocation: a manual map point selection flow should appear. If the manual scenario does not work, the issue may be in the map, JavaScript, API key, HTTPS, or caching.
A Detail People Often Miss
If editors add listings through the public form, they may create a new location instead of choosing an existing one. That is why you should create a short internal guide after launch: how to enter an address, when to move the marker, what to do with an unusual neighborhood, and who to notify about a new city. For an open user-submitted directory, enable moderation for new listings and review the city lists regularly for duplicates.
How to Check the Quality of a Multi-Location Directory After Setup
Testing Location Manager does not end when the settings save successfully. You need to verify that the entire chain works for the administrator, editor, and visitor. A multi-location directory can look healthy in the admin panel while breaking on the public side because of caching, the map, a disabled REST API, an incorrect URL, or an empty city page.
Public Side
Check the directory homepage, the country or region page, the city page, the neighborhood page if neighborhoods are enabled, a category within a city, a listing page, and the search page. In each case, ask one question: does the user understand where they are? If the current location is hidden, the switcher is hard to find, and results change without explanation, the interface needs refinement.
Pay special attention to empty locations. If a city exists but has no listings, the page should either not be promoted as a full destination page or it should show an honest empty state with navigation to nearby cities or the broader directory. An empty page with a large SEO headline and zero listings feels weak and can frustrate users.
Admin Panel and Editorial Workflow
Open the lists of countries, regions, cities, and neighborhoods. Check the listing counts in each location, look for similar names, and see whether your priority cities have descriptions filled in. If the directory is new, set a rule to review new locations created by users or imports every week. If the directory is already large, start with cities that receive traffic or contain many listings.
Editors need to understand that location is not the same thing as a regular category. A category defines the type of business or object, while a location defines geography. If an editor creates a category called "New York" instead of choosing the city New York, the directory structure breaks. A short internal guide and a few examples prevent more errors than any complicated customization.
Speed, Caching, and JavaScript
GeoDirectory is designed to work with caching solutions, but interactive features still depend on correct configuration. The map, the switcher, AJAX suggestions, and Near Me all rely on JavaScript and requests. If a cache plugin defers scripts, combines them badly, or blocks the REST API, the public site may break only for guests.
Test the site in incognito mode and on a mobile device. If the map works for the administrator but not for a guest, start by clearing the cache and disabling deferred JavaScript loading for the related scripts. If that brings the map back, restore optimization one setting at a time. Do not disable all caching forever because of a single conflict. Find the exact option or exclusion that causes it.
Indexing and Internal Links
After configuring permalinks, check the sitemap, breadcrumbs, menu, Locations blocks, and links from listings. Location URLs should be consistent. If some links go to the general archive and others go to the city page, that may be fine, but only if the behavior is intentional. Random mixing usually points to URL Settings or templates that do not account for the current location.
For search engines, a smaller number of strong location pages is usually better than hundreds of empty ones. If you are not ready to fill out every city yet, start with the priority ones. The rest can still function for filtering, but they should not become your main SEO asset. That is an editorial decision, not something solved with a single toggle.
Common Problems and Troubleshooting
Most Location Manager issues are not caused by one single "broken" feature. They usually come from the overlap of several layers: the map, the address, the location database, permalinks, caching, the REST API, and the output template. Below is a practical troubleshooting order for common situations.
The Map Does Not Show for Guests but Works for the Administrator
Symptom: the administrator sees the map on a listing or search page, but a regular visitor sees an empty block, a loading error, or no markers. Sometimes the problem appears only on mobile devices or in a specific browser.
Likely cause: a JavaScript conflict related to caching, deferred loading, minification, or restrictions on the mapping key. The GeoDirectory documentation specifically notes that maps often stop working because of cache behavior and deferred JavaScript loading.
What to check: open the page in incognito mode, clear the site cache, disable minification and deferred JavaScript loading for testing, check the browser console, and review the map key. If you use Google Maps, make sure the domain is allowed and billing is configured. If you use OpenStreetMap, check whether the server is blocking external requests.
How to fix it: restore caching step by step: first full-page caching, then CSS minification, then JavaScript optimization. If the issue appears after one specific option, leave it off or add an exclusion. If the map fails because of the key, fix the key, not the GeoDirectory template.
The Location Switcher Does Not Suggest the Required City
Symptom: the user opens Change Location, types a city, but no suggestion appears or the wrong place is suggested. The city seems to exist in the database.
Likely cause: the city was not created as a GeoDirectory location, there is a duplicate with a different spelling, Enable Locations restrictions are active, the REST API is blocked, or the location database still does not contain the needed place. If the city was just added, old cache data may still be showing the previous set.
What to check: find the city in the Locations list, verify its country and region, check how many listings it has, and open the public city URL. Then check the REST API and clear the cache. If selected-city restrictions are enabled, make sure the required city is included in the allowed set.
How to fix it: add the city manually or through a test listing, correct the region, merge duplicates, resave the restrictions, and clear the cache. If the REST API is the cause, remove the block at the security plugin or WAF level.
The Submission Form Creates Duplicate Cities
Symptom: after adding listings, you start seeing similar cities: one with the full name, another as an abbreviation, a third in another language, or one with a typo. Listings get distributed across different pages.
Likely cause: users enter addresses manually, the map returns different naming variants, the import contains inconsistent data, and location restrictions are disabled. For custom zones, the mapping provider may replace fields with standard administrative values.
What to check: compare the listings inside the duplicate locations, review their addresses, coordinates, and regions. Check whether the duplicates are created through the public form, the admin panel, or imports. If the problem involves a custom location, test the setting that prevents the map marker from changing address fields.
How to fix it: choose the main location and merge duplicates using the built-in Merge action. After merging, verify the URLs, listings, and map. For future listings, enable restrictions and add editorial guidance plus moderation for new locations.
404 Errors Appeared After Changing Permalinks
Symptom: listing, city, or category pages used to open correctly, but after the URL structure changed they started returning 404 errors. Sometimes the problem disappears for the administrator after saving again, but it remains for guests.
Likely cause: WordPress did not refresh the permalink rules, the cache still holds the old URLs, the new structure conflicts with an existing page, taxonomy, or base slug, or the structure was changed after the pages had already been linked internally.
What to check: open Settings - Permalinks and save the settings without making extra changes. Check whether a WordPress page already uses the same slug. Open several listings from different cities and one category inside a location. Clear the site cache and CDN cache if applicable.
How to fix it: choose a non-conflicting structure, resave permalinks, set up redirects for important old URLs, and review internal links. If the site already receives traffic, do not change the structure again without a redirect plan.
Near Me Cannot Get the User's Coordinates
Symptom: the Near Me button does not request geolocation, immediately opens the manual map, or does nothing at all. The result on a mobile device differs from the desktop browser.
Likely cause: the site is opened without HTTPS, the user denied geolocation, the browser blocks the permission, the map scripts failed to load, or the cache changed the JavaScript loading order. HTML5 Geolocation requires a secure context, so an HTTP site will not provide the full user flow.
What to check: open the site over HTTPS, reset geolocation permissions in the browser, test in another browser and on a mobile device. Check whether the manual map point selection appears when permission is denied. If not, inspect the map, JavaScript, and REST API.
How to fix it: configure HTTPS, make the map-based manual fallback clear to users, fix JavaScript caching, and verify the mapping provider. If your audience often declines geolocation access, place a regular Location Switcher nearby so users can choose a city manually.
The Public City Page Looks Empty
Symptom: the city URL opens, but the page contains only a heading, an empty list, or very little context. The user does not know what to do next.
Likely cause: the location has no description, there are no listings, the template does not output Location Description, the Locations block is configured too broadly, or the page is being indexed before it is ready.
What to check: open the location in the admin panel, fill in the description, image, and metadata, and check the listing count. Then review the location page template and widgets. View the page as a guest.
How to fix it: add Location Description, fill in content for priority cities, limit indexing for weak pages, or display useful navigation to categories and neighboring locations. If a city is not meant to be a public landing page, do not treat it as a main SEO section.
Safe Improvements Without Editing the Core
GeoDirectory Location Manager is best configured through its built-in settings, widgets, blocks, and templates. You should not edit WordPress core, GeoDirectory files, or extension files directly: updates will overwrite those changes, and a mistake can break the directory. If you need customization, use a child theme, a safe snippet, page builder settings, or documented GeoDirectory capabilities.
Changing the Text Next to Near Me
The GeoDirectory documentation includes a snippet example for changing the behavior of the Near Me search text. That is a good example of a targeted customization that is better added through a dedicated snippets plugin rather than directly in the theme file. At the same time, you should not blindly copy code into every site: it changes a Location Manager JavaScript string and should only be applied when you clearly understand which prompt you want to change and how you will test the result.
A safe workflow looks like this: first save the current search behavior, then add the snippet on a staging copy, clear the cache, and test normal search, Location Switcher, Near Me, denied geolocation, and city search. If anything gets worse, disable the snippet with one toggle. If you are not confident, limit yourself to translating interface strings through standard localization tools instead of changing suggestion logic.
A Location Page Template Without Unnecessary Empty Blocks
The best improvement for most directories is not code but a clean template. Put the current city, the location description, a list of key categories, and a clear switcher at the top of the page. Show listings and the map below that. If the description is missing, the template should not leave behind an empty box. If no location image is available, use a neutral block or simply do not display one.
Test the template on three location types: a city with many listings, a new city with one listing, and a city without a description. That will show you where fallback behavior is needed. If you use a page builder, rely on the available GeoDirectory blocks and display conditions if your stack supports them. For complex conditions, it is better to involve a developer than to write untested code.
Compatibility with Caching and Optimization
If the site uses WP Rocket, LiteSpeed Cache, FlyingPress, server-side cache, or a CDN, document your exclusions after testing. In most cases, you do not need to exclude all of GeoDirectory from caching. You need to identify the specific problem scenarios: the map, deferred JavaScript, AJAX search, the REST API, or listing submission pages. Test one change at a time, otherwise you will not know what actually fixed the issue.
After caching is configured, create a short operating rule: whenever locations, permalinks, templates, or the mapping key are changed, clear the cache and check the public page as a guest. This simple habit prevents false alarms where the administrator sees one state and visitors see another.
GeoDirectory Location Manager FAQ
Can I use the extension only for a few cities within one country?
Yes. This is one of the clearest use cases: keep a single country, allow several cities, add Location Switcher, and configure city pages. In this setup, it is especially important to create canonical cities in advance and restrict the submission form so users do not create duplicates.
Do I need to add all locations manually in advance?
Not necessarily. Location Manager can create locations when a listing is added if that place does not yet exist in the database. But for a controlled directory, it is better to add your launch cities in advance, fill in their descriptions, and verify the URLs. Automatic creation is convenient, but it requires regular duplicate review.
Can I enable neighborhoods after the directory is already live?
Yes, but first make sure they are truly necessary. Once neighborhoods are enabled, you add another structural layer that has to be maintained. If the listing volume is low, neighborhoods may create empty pages and complicate the form. If you have lots of listings and users often search within a large city, neighborhoods can improve navigation.
Why does Near Me require HTTPS?
Modern browsers only allow precise geolocation in a secure context. If the site is opened without HTTPS, the user flow will be limited, and the button may fall back to manual point selection on the map. That is why you should verify the certificate, mobile browser behavior, and denied geolocation flow before launching near-user search.
What if Google Maps is not the right fit?
GeoDirectory allows OpenStreetMap as an alternative within its core map logic. The best choice depends on the country, address accuracy, project requirements, and budget. If you need Google Maps-specific features, configure the key and restrictions correctly. If your launch directory can work without Google API, test OpenStreetMap and see whether the accuracy is sufficient.
Can permalinks be changed after listings are published?
Technically yes, but it is a risky move. You need to resave WordPress rules, clear the cache, test both old and new URLs, set redirects for important pages, and make sure internal links are not pointing to 404s. For a new project, it is better to choose the structure before the directory is filled at scale.
Is Location Manager compatible with SEO plugins?
GeoDirectory has its own Titles & Meta settings and documentation on using variables with Yoast and Rank Math. But compatibility does not mean you can skip manual review of the metadata. Open a city page, a category inside a city, and a listing page, then check the actual titles, descriptions, and sitemap output.
When might the product not be the right fit?
It may be excessive for a single-city directory, a site without physical addresses, or a project where geography does not affect search. It also requires discipline in the data: if editors do not review addresses and locations, a multi-location directory will quickly accumulate duplicates. In those cases, configure core GeoDirectory and the editorial workflow first.
When GeoDirectory Location Manager Is Worth Using
GeoDirectory Location Manager is a strong choice if your directory is built around geography: users choose a city, search near themselves, visit location pages, and expect listings not to get mixed across territories. The extension is especially useful when you are already using GeoDirectory and want to add a multi-location structure without moving to another directory plugin.
Before launch, verify the environment, the map, HTTPS, the REST API, permalinks, and the full test chain from listing to public page. After launch, keep the location database organized: merge duplicates, fill out important cities with descriptions, avoid huge dropdowns in forms, and do not change URLs without a plan. When handled that way, Location Manager becomes more than just "another add-on" - it becomes a manageable layer for navigation, search, and SEO-oriented location pages.
If, after testing, you confirm that the site truly needs countries, regions, cities, neighborhoods, a location switcher, and near-user search, you can move on to the download section and download GeoDirectory Location Manager for safe testing on a staging copy of the site.


