Suma Dealer Locator
Store and dealer locator with interactive maps, geolocation, and customizable templates.
Overview
Suma Dealer Locator is a comprehensive store/dealer finder plugin that helps customers locate physical retail locations. Features include interactive Google Maps integration, GeoIP automatic location detection, radius-based search, category filtering, and page builder support (Gutenberg, Elementor, Visual Composer).
Current Version: 3.0.3
Requires: WordPress 4.8.1+, PHP 7.0+
Text Domain: suma-dealer-locator
Key Features
Interactive Map Integration
- Google Maps API — Full-featured Google Maps with custom markers
- Marker Clustering — Groups nearby locations for cleaner display
- Info Windows — Detailed location information on marker click
- Pin Bounce Animation — Visual feedback on listing hover
- Dynamic Zoom — Auto-zoom to show closest 10 locations
Geolocation & Search
- MaxMind GeoIP Lookup — Automatic location detection from IP address
- Radius Search — Find dealers within specified distance
- Address Search — Search by city, state, or zip code
- GPS Coordinates — Latitude/longitude-based distance calculation
Dealer Management
- Custom Post Type —
suma_dealerpost type for dealer entries - Custom Fields — Address, phone, email, website, hours
- Category Taxonomy — Organize dealers by type or category
- Bulk Import — CSV import via WP All Import plugin
- Manual Entry — WordPress admin interface for adding dealers
Front-End Display
- Shortcode Support —
[suma_dealer_locator]embed anywhere - Gutenberg Block — Native WordPress editor integration
- Elementor Widget — Visual page builder support
- Visual Composer Module — Legacy page builder compatibility
- Template System — Override layouts in theme folder
User Experience
- Get Directions — Google Maps directions link
- Responsive Design — Mobile-friendly interface (no Bootstrap dependency)
- Category Filtering — Filter dealers by category on-the-fly
- Results Listing — Sortable list view with distance calculations
How It Works
- User Location — Auto-detect via GeoIP or manual entry
- Database Query — Find dealers within search radius
- Distance Calculation — Calculate miles/kilometers to each dealer
- Map Rendering — Display dealers on Google Maps
- List Display — Show dealers in sortable list format
- User Interaction — Click markers, hover listings, get directions
Architecture Overview
User Location Input
↓
GeoIP Lookup (if needed)
↓
Database Query
↓
Distance Calculation
↓
Results Filtering
↓
Map Rendering + List Display
Use Cases
- Retail Locations — Help customers find nearby stores
- Service Providers — Connect users with authorized dealers
- Franchise Networks — Display franchise locations
- Event Venues — Show multiple location options
- Distribution Networks — Find authorized distributors
Technical Requirements
- WordPress 4.8.1 or higher
- PHP 7.0 or higher (8.0+ recommended)
- Google Maps JavaScript API key
- MaxMind GeoIP2 database (for IP geolocation)
- WP All Import plugin (for CSV imports)
Page Builder Support
Gutenberg (Block Editor)
- Native Gutenberg block with sidebar settings
- Customizable map height, default location, radius
- No shortcode required
Elementor
- Custom Elementor widget
- Visual configuration panel
- Live preview in editor
Visual Composer
- Legacy Visual Composer module
- Backward compatibility maintained
Classic Editor
- Standard shortcode:
[suma_dealer_locator] - Attributes for customization
Template Override System
Override plugin templates by creating:
your-theme/
suma-dealer-locator/
dealer-listing.php
map-container.php
search-form.php
Copy templates from [plugin]/templates/ directory.
Data Structure
Dealer Post Type
Post Type: suma_dealer
Supports: title, editor, thumbnail
Hierarchical: No
Custom Fields:
- Address (street, city, state, zip)
- Geographic coordinates (lat/lng)
- Phone number
- Email address
- Website URL
- Business hours
- Dealer categories
Dealer Categories
Taxonomy: dealer_category
Purpose: Filter and organize dealers by type
Framework Integration
Suma Dealer Locator uses the Suma Framework for:
- Modular plugin architecture
- Dependency management
- Version compatibility checking
- Auto-update functionality
- Shared utility functions
Framework version checker ensures compatibility across Suma plugins.