XX
Tour UX/UI wordpress website with booking and search functionalityFreelanceJobsCanada
XX

Tour UX/UI wordpress website with booking and search functionality

FreelanceJobs
  • CA
    Canada
  • CA
    Canada

About

UX & Functional Specification
Service Directory & Adventure Travel Booking Platform
1. Technical Stack & Constraints
Platform: WordPress (latest stable, compatible with PHP 8.0 and MySQL 5.7).
Hosting: Shared Linux, CloudLinux 8, Apache 2.4 + Nginx 1.20 reverse proxy, PHP 8.0, MySQL 5.7, sendmail available.
Trip Module: A modern travel engine plugin (e.g. Tripzzy / WP Travel Engine equivalent) with:
Custom post type for trips/tours.
Trip taxonomies (destination, type, activities, difficulty, etc.).
Itineraries, trip meta (duration, price, difficulty, group size, map, gallery).
Search and filter blocks for trips (destination, date, duration, price, activities).
Performance: Theme and plugins must be lightweight and compatible with caching and Nginx static file delivery.
Developer responsibility: choose a well‑supported travel engine plugin and configure it cleanly (no heavy page‑builder add‑ons beyond what is necessary).
2. Information Architecture & Navigation
Global navigation (desktop)
Top header:
Left: Logo (click = Home).
Center: Main navigation (max. 4–5 items):
Explore Experiences (trip archive).
Destinations.
How it works.
Help / FAQ.
Right:
"Offer an Experience" (if provider onboarding is included; secondary).
Login / Register.
Language selector (if multilingual is implemented later).
Sticky header on scroll with reduced height and persistent Search bar.
Global navigation (mobile)
Compact top bar (logo + search icon + login icon).
Bottom navigation bar with 4 icons:
Home.
Search.
Favorites.
Account.
Developer notes:
Use WordPress menus for all navigation; support separate desktop/mobile menus.
Ensure navigation is keyboard accessible and screen‑reader friendly.
3. Home Page (Entry Experience)
Goals: help users quickly 1) understand the value proposition, 2) start a search, 3) see social proof.
Required sections (order):
Hero with primary trip search:
Large background image or subtle video.
Search form with fields (configurable via trip plugin):
Destination (autocomplete from trip destinations).
Kind of trip ( seaKayak, Canoa, SUP, multiadventure)
Date or date range.
Primary CTA: "Find my experience".
Secondary link: "Browse all experiences".
Featured categories & destinations:
Cards for main categories (e.g., Hiking, Water Sports, Multi‑day Trips).
Cards for key destinations (e.g., Portugal, Spain, islands).
Each card links to filtered trip archives.
Highlighted experiences:
Grid of 6–8 top trips (e.g., Best‑sellers, New, Editor's picks).
Each card shows image, title, destination, duration, price from, rating.
Trust & safety section:
Short bullets about safety, small‑group focus, local guides.
Logos or badges (if any) and a short explanation of insurance / guarantees.
Social proof:
Carousel or list of recent reviews, with trip name and rating.
How it works:
3‑step explanation (Choose your adventure → Book securely → Travel & enjoy).
Footer:
Links: About, Contact, Terms, Privacy, Help, FAQs, Supplier info.
Social links and basic contact info.
Developer notes:
Home sections should be fully editable via WordPress (options or page builder).
Use trip plugin's blocks/shortcodes for dynamic lists (featured trips, search form).
4. Trip Search & Filtering (Core Directory UX)
Search bar (global)
Persistent search available:
In hero on Home.
As a simplified bar in header on inner pages.
Fields:
Destination (taxonomy).
Date (optional but supported by plugin).​
Kind of trip ( seaKayak, Canoa, SUP, multiadventure)
Duration or trip type (optional).
Autocomplete for destination and popular trip names.
Trip listing (archive) page
Layout:
Left column (desktop): filters.
Right column: trip cards in a 2–3 column grid; infinite scroll or clear pagination.
Sorting options:
Recommended.
Price (low → high).
Duration.
Rating.
Filters (multi‑facet):
Destination.
Trip type / category.
Duration (range).
Price range.
Difficulty level.
Date (from/to or start date).
UX details:
Display active filters as chips above results, with "Clear all" link.
Show number of results updating when filters change (AJAX if possible).
Optional "Map view" toggle for trips that have coordinates (using trip plugin map support).​
Developer notes:
Use plugin's trip search/list blocks when possible; prefer AJAX filtering but degrade gracefully to server reloads.
Listing templates must be lightweight and compatible with caching.
5. Trip Card Design (Listing)
Each trip card must show at a glance:
Thumbnail image (first from trip gallery).
Trip title.
Destination and country.
Duration (e.g., "3 days").
Price from (per person).
Average rating + number of reviews.
Available calendar tours.
Badges (if applicable):
"Best seller", "New", "Easy/Moderate/Hard", "Free cancellation".
Interactions:
Clickable entire card area.
Heart icon for favorites (if using a wishlist plugin).
Hover state (desktop) with subtle elevation and maybe extra detail (e.g., quick bullet "Small groups · Local guide").
Developer notes:
Use trip metadata provided by the travel plugin for duration, price, difficulty, map, etc.
6. Trip Detail Page (Service Detail)
Above the fold
Hero section:
Image gallery slider (with thumbnail navigation).
Optional video thumbnail.
Right‑side booking widget (desktop; stacked on mobile):
Price from (per person).
Short label (ex: "3 days · Small group").
Date picker (trip dates).
Number of people selector.
Primary CTA: "Book now".
Secondary link: "Ask a question" / "Contact".
Quick summary meta:
Rating + reviews count.
Destination.
Difficulty.
Group size.
Content sections (scrolling)
Order of sections:
Overview
Short, scannable description (2–3 paragraphs max).
Bullet list: "You'll experience…".
What's included / not included
Two columns or clear lists.
Itinerary
Day‑by‑day breakdown using the plugin's itinerary feature.​
Each day: title, description, key activities, icons.
Practical info
Meeting point, start/end times.
Requirements (fitness level, minimum age, equipment).
What to bring.
Map
Embedded map (Google Map / iframe) from the trip plugin.​
Reviews
Overall rating and distribution.
Individual reviews with filters (language, rating).
Related trips
"You might also like" list (same destination or type).
Developer notes:
Use trip plugin fields: trip info, itineraries, gallery, difficulty, map, activities, dates, etc.​
Ensure the booking form in the sidebar is sticky on desktop and always visible on mobile after a short scroll.
7. Booking Flow & Payments
Booking steps
Target: 2–3 simple steps.
Trip detail → User chooses date and group size, clicks "Book now".
Checkout page:
Summary of trip (title, date, people, price breakdown).
Customer details (name, email, phone).
Payment details.
Confirmation page:
Clear "Booking confirmed" message.
Summary, reference number, and key info (meeting point, time).
Links: "View my bookings", "Add to calendar", "Contact support".
Requirements
Transparent pricing: show total price, taxes/fees, and currency clearly before payment.
Show cancellation policy on trip page, checkout and confirmation email.
Email notifications (via WordPress + sendmail or SMTP plugin):
To customer (confirmation + details).
To admin/operator (new booking).
Booking management in WordPress admin (view, change status, add manual bookings).​
Developer notes:
Use the travel plugin's native booking engine or integrate with WooCommerce if needed, but keep steps minimal.
Ensure all checkout forms are optimized for mobile (big inputs, minimal required fields).
8. User Accounts & Dashboard
For travelers (customers)
Registration & login (email/password; optional social login later).
"My account" area with:
Personal details.
List of bookings (upcoming, past).
Each booking with: status, trip details, link to ticket/instructions, cancel/change options (if allowed).
Optional: saved favorites/wishlist.
For providers
If provider onboarding is in scope:
Dashboard with:
Create/edit trips (guided steps).
Calendar view of bookings.
Upcoming departures.
Messages from travelers.
Developer notes:
At minimum, implement traveler dashboard. Provider dashboard can be a later phase but should be considered in plugin choice (some trip engines offer front‑end vendor dashboards).
9. Content Management & Blog
Blog section for travel stories, tips, and inspiration.
Basic blog layout:
List of posts with image, title, category, date.
Single post with related trips widget (manual or by destination/tag).
Use blog for SEO and to support trip pages.
Developer notes:
Keep blog templates clean and fast; avoid bloated page‑builder layouts.
10. Trust, Legal & Support
Required pages/sections:
How it works (simple explanation of process + FAQs).
About us (brand story, mission, team).
Help / FAQ (grouped by topic: bookings, payments, cancellations, safety).
Contact (form, email, optional WhatsApp or phone for emergencies).
Legal: Terms & Conditions, Privacy Policy, Cookies Policy.
Trust elements in UI:
Badges or microcopy explaining safety and selection of providers.
Clear display of refund/cancellation rules.
Developer notes:
All legal pages must be easily editable from WordPress (no hard‑coded text).
Contact form must work with hosting sendmail or an SMTP plugin.
11. Performance, Security & Accessibility
Performance:
Compatible with WordPress caching (plugin to be agreed).
Use Nginx for static assets and caching (no reliance on .htaccess hacks that break under Nginx proxy).
Optimize images (lazy loading, compressed formats).
Security:
HTTPS enforced.
Use supported plugins only and keep them minimal.
Accessibility:
Semantic HTML, proper headings.
Alt text for images, focus states for buttons/links.
Color contrast meeting WCAG AA where possible.
12. Deliverables
Fully working WordPress site on the provided shared hosting (CloudLinux 8, Apache 2.4, Nginx 1.20, PHP 8.0, MySQL 5.7).
Installed and configured travel booking module (trip engine) with:
Trip post type, taxonomies, itineraries, pricing, booking engine.
Custom theme or child theme implementing the UX above (home, listing, trip detail, booking, account, blog, legal pages).
Basic sample content:
At least 6–8 sample trips (with real structure, not Lorem Ipsum).
Example blog posts and FAQs.
Contract duration of 1 to 3 months. with 30 hours per week.
Mandatory skills: WordPress, Web Development, Responsive Design, Web Design, PHP, HTML5
  • Canada

Languages

  • English
Notice for Users

This job comes from a TieTalent partner platform. Click "Apply Now" to submit your application directly on their site.