Italy Rome Tour
Booking Systemwordpressphpjavascriptmysqldockerwoocommerceelementor

Italy Rome Tour

A WordPress/WooCommerce tour booking platform for Italy Rome Tour. Built custom booking system with tiered pricing, multi-location pickups, participant management, and branded PDF vouchers.

The Project

A comprehensive tour booking platform for tourists visiting Rome and Italy. The platform enables customers to browse guided tours, select dates and participants, customize pickup locations, and complete secure payments – all with automated booking confirmations and professional PDF vouchers.


The Challenge

  • Build a flexible booking system handling complex tiered pricing (adults, children, infants)
  • Support multiple pickup scenarios (hotels, airports, cruise ships) with context-specific requirements
  • Collect participant details for ticketed attractions (museum entries require ID-matching names)
  • Generate professional branded PDF vouchers with customizable notices
  • Enable easy content management for tour operators without technical knowledge

The Solution

A custom WordPress/WooCommerce implementation with:

  • YITH WooCommerce Booking Premium for availability and pricing management
  • Custom child theme with 539 lines of tailored functionality
  • Advanced Custom Fields Pro for tour specifications and itinerary management
  • 74+ template overrides for booking forms, emails, and PDF vouchers
  • Custom REST API for real-time Rome weather integration

Technology Stack

FrontendBackendInfrastructure
Elementor ProWordPress 6.xCloudways (DigitalOcean)
Custom ThemeWooCommerceGitLab CI/CD
ACF ProYITH Booking PremiumW3 Total Cache
Stripe Paymentsiubenda (GDPR)

Key Features Delivered

FeatureDescription
Dynamic Tour SpecsIcon-based specification display with 10 configurable fields
Smart PricingTiered pricing with automatic “best price” calculations
Pickup ManagementContext-aware forms for hotel/airport/cruise pickups
Participant CollectionName collection for ticketed attractions with validation
PDF VouchersBranded booking confirmations with custom notices
Weather WidgetReal-time Rome weather via custom REST API
GDPR Complianceiubenda integration for consent management

Technical Highlights

539lines of custom PHP
74+booking template overrides
4ACF field groups
6custom shortcodes
1custom REST API endpoint
7+years of continuous development

Major Milestone: 2024 Platform Migration

Successfully migrated from a custom-built booking plugin (2019) to YITH WooCommerce Booking Premium, resulting in:

  • Improved long-term maintainability
  • Better WooCommerce ecosystem integration
  • Enhanced security through managed payment processing
  • Simplified content management for operators

Skills Demonstrated

  • WordPress Development – Theme customization, hooks, filters, shortcodes
  • WooCommerce Integration – Custom form fields, cart/order data flow
  • Plugin Customization – YITH Booking template overrides
  • REST API Development – Custom endpoints with caching
  • Data Architecture – ACF field groups, post meta management
  • PDF Generation – Template customization with branding
  • Third-Party Integration – Stripe, OpenWeatherMap, iubenda
  • Performance Optimization – Transient caching, scheduled tasks

A 7-year ongoing project demonstrating deep WordPress/WooCommerce expertise and the ability to build, maintain, and evolve complex booking systems.