BuddyX

GeoDirectory

Free & Pro

Create location-based directories with GeoDirectory and BuddyX Pro. Build business listings, location directories, review sites, and maps-based platforms with beautiful, responsive layouts.


What You Can Do

With BuddyX Pro's GeoDirectory integration, you can:

  • Create Location Directories - List businesses, places, properties, events
  • Interactive Maps - Google Maps integration with marker clustering
  • Advanced Search - Location-based search with radius filtering
  • User Reviews & Ratings - Star ratings and detailed reviews
  • Claim Listings - Let users claim and manage their listings
  • Front-End Submission - Members submit listings from site frontend
  • Multiple Listing Types - Restaurants, hotels, services, events, etc.
  • BuddyPress Integration - Listings on member profiles

Prerequisites

Before setting up GeoDirectory:

Requirement Version Notes
WordPress 6.0+ Latest stable version recommended
BuddyX Pro Theme Active Must be activated
GeoDirectory 2.0+ Free version available
PHP 7.4+ Required by the plugin
MySQL 5.6+ For location data storage

Recommended Add-ons:

  • GeoDirectory Advanced Search - Enhanced filtering and search
  • GeoDirectory Custom Post Types - Multiple listing types
  • GeoDirectory BuddyPress Integration - Profile integration
  • GeoDirectory Reviews - Advanced review system
  • GeoDirectory Claim Listings - User claim management

Installation & Setup

Step 1: Install GeoDirectory

  1. Log in to your WordPress dashboard
  2. Go to Plugins → Add New
  3. Search for "GeoDirectory"
  4. Click Install Now next to GeoDirectory by AyeCode
  5. Click Activate after installation completes

Step 2: Run Setup Wizard

GeoDirectory launches setup wizard after activation:

Page 1: Welcome

  • Click Let's Go! to start

Page 2: Install Sample Data

  • Choose: Install sample data (recommended for testing)
  • Or: Start fresh
  • Click Continue

Page 3: Create Pages Setup wizard creates essential pages:

Page Purpose
Places Main directory listing page
Add Listing Frontend submission form
Search Advanced search page
Location Location archive pages

Click Continue to create pages.

Page 4: Google Maps API

  • Add Google Maps API key (optional now, required later)
  • Or skip and add later
  • Click Continue

Page 5: Ready!

  • Setup complete
  • Click View Sample Listings or Add a Listing

Step 3: Configure Basic Settings

Go to GeoDirectory → Settings

General Tab:

Setting Recommendation Why
Default Country Your country Sets default for new listings
Default City Your city/region Default location
Search Distance 50 miles/km Default search radius
Date Format Site default Consistency with WordPress

Map Tab:

Setting Value
Google Maps API Key Your API key
Map View Roadmap
Map Zoom 12
Enable Marker Clustering Yes

Get Google Maps API Key:

  1. Visit Google Cloud Console
  2. Create project
  3. Enable Maps JavaScript API
  4. Create API key
  5. Add restrictions (optional)
  6. Copy key to GeoDirectory settings

BuddyX Pro Integration Features

BuddyX Pro automatically detects GeoDirectory and adds custom styling.

Automatic Styling

BuddyX Pro includes dedicated GeoDirectory stylesheet:

Location: assets/css/geodirectory.min.css

Styled Elements:

  • Listing cards and grids
  • Search forms and filters
  • Map displays and info windows
  • Detail pages and tabs
  • Review sections
  • Claim listing buttons
  • Category badges

Theme Integration:

  • Colors match BuddyX Pro color scheme
  • Typography inherits theme fonts
  • Spacing consistent with theme
  • Responsive on all devices
  • Dark mode compatible

Layout Options

GeoDirectory does not have its own sidebar controls in BuddyX Pro. Listing archive, single listing, search, and add-listing pages follow the theme's default sidebar setting, and the shipped geodirectory.min.css handles the styling.

Set the sidebar layout:

  1. Go to Appearance → Customize → Sidebar
  2. Set the default Sidebar option (Left, Right, Both, or None)
  3. Click Publish

This applies site-wide. To give a specific GeoDirectory page (for example, the full-width Add Listing form) a different layout, target its body classes with custom CSS in Appearance → Customize → Additional CSS.

Responsive Design

BuddyX Pro optimizes GeoDirectory for all devices:

Mobile Features:

  • Collapsible filters
  • Touch-friendly maps
  • Swipeable image galleries
  • Mobile-optimized forms
  • Sticky search bar

Tablet Features:

  • 2-column listing grids
  • Sidebar toggle buttons
  • Adjusted map heights

Desktop Features:

  • 3-4 column grids
  • Full sidebar display
  • Larger map areas
  • Hover effects

Creating Listing Types

Listing types categorize your directory content.

Default Listing Type: Places

GeoDirectory creates default "Places" listing type:

Included Fields:

  • Business name
  • Description
  • Address and location
  • Contact info (phone, email, website)
  • Business hours
  • Category
  • Tags
  • Images

Creating Custom Listing Types

Requires GeoDirectory Custom Post Types add-on.

Example: Restaurant Directory

  1. Go to GeoDirectory → Settings → Post Types
  2. Click Add New Post Type
  3. Configure:
Setting Value
Name Restaurants
Singular Name Restaurant
Slug restaurants
Menu Position 26
Has Archive Yes
  1. Click Save Post Type

Add Custom Fields:

  1. Go to GeoDirectory → Design → Tabs
  2. Select Restaurants post type
  3. Add fields:
    • Cuisine Type (multiselect)
    • Price Range ($, $$, $$$, $$$$)
    • Delivery Available (checkbox)
    • Reservation Link (URL)
    • Menu PDF (file upload)

Common Listing Types:

Type Use Case Key Fields
Restaurants Food directory Cuisine, price range, delivery
Hotels Accommodation Star rating, amenities, booking
Real Estate Property listings Price, bedrooms, square footage
Events Event calendar Date, time, tickets, venue
Services Service providers Service type, availability, pricing
Doctors Medical directory Specialty, insurance, hours

Creating Your First Listing

Step 1: Add New Listing

Two methods:

Admin Method:

  1. Go to Places → Add New (or your listing type)
  2. WordPress admin editor opens

Frontend Method:

  1. Visit your "Add Listing" page
  2. Frontend submission form displays
  3. Members submit without admin access

Step 2: Fill Basic Information

Required Fields:

Field Example
Listing Title The Italian Kitchen
Description Full description with details
Category Select from categories
Address 123 Main Street
City San Francisco
State/Region California
Zip/Postal Code 94102
Country United States

Optional Fields:

Field Purpose
Phone Contact number
Email Contact email
Website Business URL
Tags Additional keywords
Facebook/Twitter Social profiles

Step 3: Add Location

Map Interface:

  1. Enter address in location field
  2. Map displays automatically
  3. Drag marker to adjust exact location
  4. Or enter coordinates manually

Location Tips:

  • Precise location improves search results
  • Marker shows on map view
  • Address displays on listing
  • Used for radius searches

Step 4: Set Business Hours

In Business Hours section:

Configure Schedule:

Day Open Close Status
Monday 11:00 AM 10:00 PM Open
Tuesday 11:00 AM 10:00 PM Open
Wednesday 11:00 AM 10:00 PM Open
Thursday 11:00 AM 10:00 PM Open
Friday 11:00 AM 11:00 PM Open
Saturday 10:00 AM 11:00 PM Open
Sunday 10:00 AM 9:00 PM Open

Or: Check "Open 24/7" for always-open businesses.

Step 5: Upload Images

Featured Image:

  1. Set featured image in sidebar
  2. Recommended: 1200×800px
  3. Appears in search results and listing cards

Image Gallery:

  1. Scroll to Gallery Images field
  2. Click Add Images
  3. Upload multiple photos
  4. Drag to reorder
  5. Displays as slider on listing page

Image Best Practices:

  • Use high-quality images (1920×1080px)
  • Show interior and exterior
  • Include products/services
  • Compress for web (Smush, ShortPixel)
  • Add alt text for SEO

Step 6: Add Contact & Social

Contact Information:

Social Media:

  • Facebook page URL
  • Twitter profile URL
  • Instagram username
  • LinkedIn company page

Step 7: Configure Video (Optional)

Add video to showcase business:

Supported:

  • YouTube embed URL
  • Vimeo embed URL

Example: https://www.youtube.com/watch?v=VIDEO_ID

Video displays on listing page with description.

Step 8: Set Pricing & Categories

Price Range:

  • $ (Budget)
  • $$ (Moderate)
  • $$$ (Expensive)
  • $$$$ (Luxury)

Categories: Select one or more categories:

  • Italian Restaurant
  • Pizza Place
  • Fine Dining

Tags: Add relevant tags:

  • pasta, wine bar, romantic, family-friendly

Step 9: Publish Listing

Review Information:

  • Check all fields completed
  • Preview listing appearance
  • Verify location on map

Publish:

  1. Click Publish button (admin)
  2. Or Submit Listing (frontend)
  3. Listing appears on directory
  4. Or pending review (if moderation enabled)

Search & Filtering

Basic Search

Default search form includes:

Search Fields:

Field Function
What Keyword search (title, description)
Where Location search (city, address, zip)
Category Filter by category
Search Button Submit search

Location:

  • Top of listing archive
  • Search page
  • Widget (sidebar)

Advanced Search

With Advanced Search add-on:

Additional Filters:

Filter Options
Distance Radius from location (5, 10, 25, 50 miles)
Price Range $, $$, $$$, $$$$
Rating 1-5 stars
Open Now Currently open businesses
Custom Fields Any custom field you created

Filter Layout:

  • Vertical sidebar
  • Horizontal bar
  • Collapsible panels
  • Modal/popup

Map Search

Interactive map-based search:

Features:

  • Drag map to search area
  • Zoom to adjust search radius
  • Click markers to see listing preview
  • "Search This Area" button
  • Marker clustering for performance

Map Controls:

  • Zoom in/out buttons
  • Street view (if available)
  • Satellite/terrain view toggle
  • Fullscreen mode

Reviews & Ratings

Enable reviews on listings.

Setting Up Reviews

With GeoDirectory Reviews Add-on:

  1. Install GeoDirectory Reviews
  2. Go to GeoDirectory → Settings → Reviews
  3. Configure:
Setting Recommendation
Enable Reviews Yes
Require Login Yes (reduces spam)
Allow Images Yes
Moderate Reviews Auto-approve or manual
Rating Criteria Service, quality, value, cleanliness

Basic Reviews (Free):

  • Simple star rating
  • Review text
  • User name and date

Advanced Reviews (Add-on):

  • Multiple rating criteria
  • Review images
  • Verified reviews
  • Helpful/not helpful voting
  • Owner responses

Rating Criteria

Create custom rating criteria:

Example: Restaurant Reviews

Criteria Weight
Food Quality 35%
Service 25%
Atmosphere 20%
Value 20%

Overall rating calculated automatically.

Managing Reviews

Review Moderation:

  1. Go to Places → Reviews (or listing type)
  2. View all reviews
  3. Actions available:
    • Approve pending reviews
    • Edit review text
    • Mark as spam
    • Delete review
    • Reply to review (as admin)

Owner Responses:

  • Listing owners can respond
  • Requires claim listing feature
  • Shows "Owner's Response" badge

Claim Listings

Let users claim existing listings.

Enable Claim Feature

Requires GeoDirectory Claim Listings add-on.

Setup:

  1. Install GeoDirectory Claim Listings
  2. Go to GeoDirectory → Settings → Claim Listings
  3. Configure:
Setting Options
Enable Claims Yes
Require Verification Email, phone, or admin approval
Claim Duration 30 days, 1 year, lifetime
Claim Fee Free or paid (with payments add-on)

Claim Process

User Perspective:

  1. Find listing on site
  2. Click "Claim This Listing" button
  3. Fill claim form:
    • Relationship to business (owner, manager)
    • Contact information
    • Verification documents (optional)
  4. Submit claim
  5. Admin reviews claim
  6. If approved: User gets edit access

Admin Approval:

  1. Go to GeoDirectory → Claimed Listings
  2. Review claim details
  3. Check verification
  4. Approve or deny
  5. User receives email notification

Claimed Listing Benefits:

  • Edit listing details
  • Update business hours
  • Upload new photos
  • Respond to reviews
  • View statistics
  • Promote listing (if available)

Front-End Submission

Members create listings from site frontend.

Enabling Front-End Submission

Default enabled, configure options:

Settings:

  1. Go to GeoDirectory → Settings → Listing Submission
  2. Configure:
Setting Recommendation
Guest Submissions No (require login)
Submission Status Pending review
Duplicate Check Yes (prevents duplicates)
Required Fields Title, description, location
User Dashboard Enable for managing listings

Submission Form

Create "Add Listing" page (wizard creates automatically):

Shortcode: [gd_add_listing]

Form Displays:

  • All listing fields
  • File upload fields
  • Map for location selection
  • Terms & conditions checkbox
  • Submit button

User Experience:

  1. Visit Add Listing page
  2. Choose listing type (if multiple)
  3. Fill form fields
  4. Upload images
  5. Set location on map
  6. Agree to terms
  7. Click Submit
  8. Confirmation message appears
  9. Listing pending review (or published)

User Dashboard

Members manage their listings:

Dashboard Shortcode: [gd_user_dashboard]

Dashboard Features:

Tab Function
My Listings View, edit, delete own listings
Add Listing Create new listing
Favorites Saved listings
Reviews Reviews given
Invoices Payment history (if paid listings)

Listing Actions:

  • Edit listing
  • Renew listing (if expired)
  • Upgrade listing (if packages available)
  • Delete listing
  • View statistics

Location Pages

Automatic pages for each location.

Location Hierarchy

GeoDirectory creates SEO-friendly location pages:

URL Structure:

yoursite.com/places/
├── united-states/
│   ├── california/
│   │   ├── san-francisco/
│   │   │   └── downtown/
│   │   └── los-angeles/
│   └── new-york/
│       └── manhattan/
└── united-kingdom/
    └── london/

Page Content:

  • Listings in that location
  • Map of location
  • Search form scoped to location
  • Category links for location
  • Breadcrumb navigation

Customizing Location Pages

Location Settings:

  1. Go to GeoDirectory → Settings → Locations
  2. Configure:
Setting Options
Location Levels Country, Region/State, City, Neighborhood
Default Location Set default for site
Location Selector Dropdown or autocomplete
Show Location Count Number of listings per location

Location Slugs:

  • Customize URL slugs
  • Add custom location names
  • Set location timezone

Categories & Taxonomies

Organize listings with categories.

Creating Categories

  1. Go to Places → Categories (or listing type)
  2. Click Add New Category
  3. Configure:
Field Example
Name Italian Restaurants
Slug italian-restaurants
Parent Restaurants (if subcategory)
Description Description for SEO
Icon Upload category icon
Default Image Fallback for listings without images

Category Hierarchy:

Restaurants
├── Italian
├── Chinese
├── Mexican
└── American
    ├── Burgers
    ├── BBQ
    └── Steakhouses

Category Display:

  • Category archive pages
  • Category filter in search
  • Category badges on listings
  • Category icons on map markers

Category Icons

Add visual icons to categories:

Icon Options:

  • Upload custom image
  • Use Font Awesome icon
  • Select from icon library

Icon Displays:

  • Map markers
  • Category list pages
  • Search filter
  • Listing cards

Widgets & Shortcodes

Display GeoDirectory content throughout your site.

Essential Widgets

Widget Areas: Add to sidebars, footers, homepage areas.

Available Widgets:

Widget Displays
GD > Search Search form
GD > Categories Category list with counts
GD > Listings Recent, featured, or popular listings
GD > Post Images Listing image slider
GD > Advanced Search Full search filters
GD > Author Actions Edit/claim buttons (on listing pages)

Widget Configuration:

Example: Recent Listings Widget

  1. Add to sidebar
  2. Configure:
    • Title: "New Listings"
    • Listing Type: Places
    • Number: 5
    • Layout: List with thumbnails
    • Character limit: 100

Useful Shortcodes

Display GeoDirectory content with shortcodes:

Listing Archive:

[gd_listings post_type="gd_place" layout="list" show_pagination="1"]

Search Form:

[gd_search layout="default"]

Categories:

[gd_categories post_type="gd_place" title_tag="h3" columns="4"]

Map:

[gd_map map_type="auto" width="100%" height="450px"]

Single Listing Info:

[gd_post_meta key="phone" show="value"]
[gd_post_meta key="address" show="value"]
[gd_post_meta key="rating" show="value"]

Popular Listings:

[gd_listings post_type="gd_place" order_by="high_review" posts_per_page="6"]

BuddyPress Integration

Connect GeoDirectory with BuddyPress community.

BuddyPress Add-on Features

Requires GeoDirectory BuddyPress Integration add-on.

Features:

Feature Description
Profile Tab Member's listings on profile
Activity Posts Listing activities in stream
Listing Author Link to member profile
Member Reviews Reviews by member
Favorites Saved listings on profile

Setup BuddyPress Integration

  1. Install GeoDirectory BuddyPress Integration
  2. Go to GeoDirectory → Settings → BuddyPress
  3. Configure:

Profile Tab Settings:

Setting Recommendation
Enable Profile Tab Yes
Tab Name "My Listings" or "Places"
Tab Slug listings
Show on Profile All members or authors only

Activity Stream:

Setting Options
Post to Activity When listing published
Post Type New listing, updated listing, reviews
Show Map Yes (thumbnail map in activity)

Member Listings Display

Member profile tab shows:

Tab Content:

  • All listings by member
  • Listing status (published, pending, draft)
  • Edit/delete buttons (own profile)
  • Statistics (views, favorites, reviews)

Visitor View:

  • Only published listings visible
  • Link to full listing
  • Rating and category
  • Thumbnail image

Recommended Configurations

Business Directory

Listing Types:

  • Businesses (general)
  • Restaurants
  • Services
  • Shops

Key Features:

  • User claims
  • Reviews and ratings
  • Business hours
  • Contact forms

Search:

  • Location radius
  • Category filter
  • Open now filter
  • Advanced search

Real Estate Platform

Listing Types:

  • For Sale
  • For Rent
  • Commercial
  • Land

Key Fields:

  • Price
  • Bedrooms/bathrooms
  • Square footage
  • Property type
  • Year built

Search:

  • Price range
  • Property features
  • Map search
  • Save search criteria

Event Directory

Listing Types:

  • Events
  • Venues
  • Organizers

Key Fields:

  • Event date/time
  • Ticket price
  • RSVP/registration
  • Event category
  • Organizer info

Features:

  • Calendar view
  • Upcoming events
  • Event reminders
  • Recurring events

Restaurant Guide

Listing Types:

  • Restaurants
  • Bars
  • Cafes
  • Food trucks

Key Fields:

  • Cuisine type
  • Price range
  • Delivery/takeout
  • Reservations
  • Menu link

Features:

  • User reviews
  • Photo galleries
  • Business hours
  • Call/directions buttons

Common Questions

How do I add a Google Maps API key?

  1. Go to Google Cloud Console
  2. Create new project or select existing
  3. Enable "Maps JavaScript API"
  4. Create credentials → API key
  5. Copy API key
  6. In WordPress: GeoDirectory → Settings → Map
  7. Paste key in "Google Maps API Key" field
  8. Save settings

Can I have multiple listing types?

Yes, with GeoDirectory Custom Post Types add-on:

  1. Install add-on
  2. GeoDirectory → Settings → Post Types
  3. Click "Add New Post Type"
  4. Create as many types as needed
  5. Each gets own fields, categories, settings

How do I monetize my directory?

Methods:

  1. Paid Listings - Charge for submissions (Pricing Manager add-on)
  2. Featured Listings - Charge for premium placement
  3. Claim Fees - Charge for listing claims
  4. Advertising - Display ads on high-traffic pages
  5. Affiliate Links - Commission from listings

Requires GeoDirectory Pricing Manager add-on.

Can listings expire?

Yes, set expiration in listing packages:

  1. GeoDirectory → Packages (Pricing Manager add-on)
  2. Create package
  3. Set expiration: 30 days, 1 year, never
  4. Expired listings:
    • Removed from search
    • Or marked expired
    • User can renew

How do I import listings in bulk?

Use CSV import:

  1. GeoDirectory → Tools → Import
  2. Download sample CSV
  3. Fill with your data:
    • Title, description
    • Location (address, city, lat/long)
    • Categories, tags
    • Custom fields
  4. Upload CSV file
  5. Map CSV columns to fields
  6. Run import
  7. Listings created automatically

Tips:

  • Test with small batch first
  • Validate addresses
  • Check for duplicates
  • Use proper encoding (UTF-8)

Can users add photos to reviews?

Yes, with GeoDirectory Reviews add-on:

  1. Install add-on
  2. GeoDirectory → Settings → Reviews
  3. Enable "Allow Review Images"
  4. Set maximum images per review
  5. Users can upload when reviewing

How do I change the listing URL structure?

  1. GeoDirectory → Settings → Post Types
  2. Find your post type
  3. Change "Slug" field
  4. Save settings
  5. Settings → Permalinks
  6. Click Save Changes

Example: Change from /places/ to /businesses/

Why aren't maps showing?

Common causes:

  1. No API key - Add Google Maps API key
  2. API key restrictions - Check key settings in Google Console
  3. Billing disabled - Enable billing in Google account
  4. API not enabled - Enable Maps JavaScript API
  5. JavaScript errors - Check browser console

Solution: Test API key, check console errors, verify billing.


Performance Tips

For large directories:

  1. Enable Marker Clustering

    • Groups nearby markers on map
    • Improves map load time
    • Enable in GeoDirectory settings
  2. Limit Results

    • Show 20-30 listings per page
    • Use pagination
    • Load more on scroll (infinite scroll add-on)
  3. Optimize Images

    • Compress listing images
    • Use lazy loading
    • Recommended: 1200px width max
    • Image optimization plugin (Smush, ShortPixel)
  4. Database Optimization

    • Clean expired listings
    • Delete spam reviews
    • Optimize location tables
    • Use dedicated database server for large sites
  5. Caching

    • Install caching plugin
    • Cache listing pages
    • Don't cache search results
    • Don't cache user dashboard

Related Settings


Got a question? We're a friendly team - happy to help.

Documentation: docs.wbcomdesigns.com GeoDirectory Docs: wpgeodirectory.com/docs Support Forum: wbcomdesigns.com/support

Email Support: support@wbcomdesigns.com

Include: BuddyX Pro version, GeoDirectory version, and description of your directory type.