Overview
The WP Dating Addon: Speed Dating plugin extends your WordPress dating site with a speed dating event management system. Admins can create/manage events and participants; users can book tickets and use like/pass matching to find mutual matches.
Key Features
- Event Management — Create and manage events with full details
- Event Booking — Free or paid booking
- Multiple Payment Gateways — Stripe / PayPal / Authorize.Net
- Match-Making System — Like/Pass to find matches
- Mutual Matches — View mutual likes
- Premium Features — “Liked Me” + premium benefits
- Email Notifications — Booking confirmations and admin alerts
- Participant Management — View/add participants
- Search & Filters — Search, filter, sort events
- Responsive Design — Mobile-friendly UI
Requirements
WordPress Environment
- WordPress: 5.0+
- PHP: 7.4+ (8.0+ recommended)
- MySQL: 5.6+
Required Plugins
- WP Dating Plugin — main platform (required)
- Elementor — optional (widgets)
Payment Gateway Addons (for paid events)
- Stripe addon plugin
- PayPal addon plugin
- Authorize.Net addon plugin
Installation
Step 1: Upload and Activate
- WordPress Admin
a. Plugins → Add New
b. Upload Plugin
c. Select wpdating-addon-speed-dating.zip
d. Install Now
e. Activate Plugin - FTP
a. Upload folder to /wp-content/plugins/
b. WordPress Admin → Plugins
c. Activate “WP Dating Addon Speed Dating”
Step 2: Verify Installation
- “Speed Dating” menu appears in admin sidebar
- Tables are created on activation
- No admin errors
Initial Setup
Step 1: Create Required Pages (exact slugs)
- Events List Page
a. Pages → Add New
b. Title: Events (or Speed Dating Events)
c. Slug: events (must be exactly events)
d. Publish - Single Event Page
a. Pages → Add New
b. Title: Event (or Speed Dating Event)
c. Slug: event (must be exactly event)
d. Publish
Step 2: Verify
- yoursite.com/events shows the events list
- yoursite.com/event?id=1 shows a single event (after you create one)
Admin Features
Admin Menu
- Speed Dating → All Events
- Speed Dating → Create Event
- Speed Dating → Email Notification
Create / Edit Events
- Speed Dating → Create Event
- Configure
a. Basic Information- Event Name
- Description
- Date & Time
- Location
- Price (0 = free)
- Maximum Participants (optional)
b. Target Audience - Gender (multi-select)
- Age Range (min/max)
c. Visual - Thumbnail Image (optional)
- Save
a. Create Event (new)
b. Update Event (edit)
Manage Events
- View events: Speed Dating → All Events
a. Name/description
b. Date/time/location
c. Price
d. Participants count
e. Actions: Edit / Delete - Delete event
a. Delete → Confirm
b. Note: bookings for that event are removed too
Manage Participants
- View participants
a. Speed Dating → Participants (if available)
b. Or via event page participant section - Add participant manually
a. Use “Add Participant” on event
b. Search user
c. Add to event
User Features
Browse Events
- URL: yoursite.com/events
- Tools
a. Search: name, location, description
b. Filters: date, price, location, gender, age
c. Sort: date, price, name
Tabs
- Events (upcoming)
- Past Events (attended)
- My Matches (mutual)
- Liked Me (premium only)
Booking
- Open event → Join Event / Book Now
- Free events
a. Confirm → booked immediately - Paid events
a. Select gateway: Stripe / PayPal / Authorize.Net
b. Pay → booking confirmed on success
Matching
- Timing: available after 24+ hours after event time
- Flow
a. Open event page (must be a participant)
b. Find Your Match section
c. Like or Pass - Swipe limits
a. Standard: up to 60% of participants
b. Premium: unlimited - Results
a. My Matches: mutual likes
b. Liked Me: premium only
Payment Integration
Gateways
- Stripe
- PayPal
- Authorize.Net
Setup
- Stripe
a. Install Stripe addon
b. Enter Publishable Key + Secret Key
c. Set currency + test mode
d. Save - PayPal
a. Enter Client ID + Secret Key
b. Set sandbox/live
c. Save - Authorize.Net
a. Install Authorize.Net addon
b. Enter API Login ID + Transaction Key
c. Set test mode
d. Save
Payment Flow
- Select gateway
- Redirect/form shown
- Complete payment
- Booking confirmed
- Emails sent (if enabled)
Email Notifications
Configure
- Speed Dating → Email Notification
- Enable
a. Send Email to Admin
b. Send Email to User - Templates
a. Admin subject/body
b. User subject/body - Save Settings
Placeholders
- {EVENT_NAME}
- {USER_NAME}
- {USER_EMAIL}
- {EVENT_DATETIME}
- {EVENT_LOCATION}
- {EVENT_PRICE}
- {BOOKING_DATE}
Example Templates
- Admin Subject: New Event Booking – {EVENT_NAME}
- Admin Body
a. Event: {EVENT_NAME}
b. User: {USER_NAME} ({USER_EMAIL})
c. Date/Time: {EVENT_DATETIME}
d. Location: {EVENT_LOCATION}
e. Price: {EVENT_PRICE}
f. Booking Date: {BOOKING_DATE} - User Subject: Event Booking Confirmation – {EVENT_NAME}
- User Body
a. Hello {USER_NAME}
b. Thanks for booking {EVENT_NAME}
c. Date/Time: {EVENT_DATETIME}
d. Location: {EVENT_LOCATION}
e. Price: {EVENT_PRICE}
f. See you there
Premium Features
Benefits
- Unlimited swipes
- View all participants (not limited list)
- Liked Me tab access
Premium Check
- Uses wpee_is_premium()
- Premium tiers recognized
a. Premium membership
b. Gold membership
Troubleshooting
- Events page not showing (404/blank)
a. Confirm slug is exactly events
b. Page is published
c. Clear cache
d. Settings → Permalinks → Save Changes - Payment not working
a. Gateway addon installed + active
b. Credentials correct
c. Test mode correct
d. Check debug.log
e. SSL/HTTPS valid - Emails not sending
a. Admin/user emails enabled
b. Templates not empty
c. Check spam
d. Consider SMTP plugin - Swipe not working
a. Logged in
b. Booking exists
c. 24+ hours passed
d. Check browser console errors - Premium features missing
a. Membership active
b. wpee_is_premium() working
c. Clear cache - Database errors
a. Deactivate/reactivate plugin
b. DB permissions OK
c. DB connection OK
d. Review debug.log
Elementor Widgets
Widgets
- Event List
- Single Event
- Upcoming Events
Add to Page
- Edit with Elementor
- Search “Speed Dating”
- Drag widget
- Configure
- Save/preview
Customization
CSS Files
- Public: /public/css/wpdating-addon-speed-dating-public.css
- Admin: /admin/css/wpdating-addon-speed-dating-admin.css
Override Templates
- Create: /wp-content/themes/your-theme/wpdating-addon-speed-dating/
- Copy from: /wp-content/plugins/wpdating-addon-speed-dating/templates/
- Edit copied templates
Database Tables
- wp_spd_events — events
- wp_spd_events_book — bookings
- wp_spd_events_swipes — swipes/likes
- Note: prefix may differ per site
Security
- Nonce verification for AJAX
- Login required for booking/swiping
- $wpdb->prepare() for queries
- Escaping output to reduce XSS risk
- Capability checks for admin actions
Best Practices
- Event management
a. Create events early
b. Use clear titles
c. Set realistic age ranges
d. Add images
e. Set capacity limits - Email
a. Test templates
b. Clear subjects
c. Include date/time/location - UX
a. Explain swipe limits
b. Promote premium benefits
c. Use consistent naming
Support
Debug Mode
- Add to wp-config.php:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
- Log path: /wp-content/debug.log
Contacts / Resources
- Docs: https://www.wpdating.com/docs
- WordPress Codex: https://codex.wordpress.org/
- Website: https://www.wpdating.com
- Email: wpdatingplugin@gmail.com
Updates
- Automatic updates
a. WordPress shows update notice
b. Click Update Now - Manual updates
a. Download the latest version
b. Deactivate plugin
c. Replace files
d. Reactivate - Before updating
a. Backup site
b. Test on staging
c. Review changelog