
Shuttle search form with route, pickup, date, time and passengers
MagePeople Shuttle Booking turns any WordPress + WooCommerce site into a complete shuttle booking and transportation reservation system. Build multi-stop routes, set stop-to-stop pricing, publish departure schedules, and let customers book airport shuttles, hotel transfers, corporate shuttle rides and scheduled shuttle services entirely online, with real WooCommerce checkout and real-time seat availability.
Whether you run an airport shuttle service, a hotel transfer desk, a corporate or employee transport program, a tour or resort transfer operation, or a city-to-city shuttle route, this plugin gives you a route builder, a live pricing matrix, a schedule manager and a WooCommerce-powered checkout, without touching a line of code.
The demo runs this exact plugin with the same one-click demo data the importer installs, so what you try there is what your own shuttle booking site will do after setup. In the demo you can:
If you are comparing shuttle booking, airport transfer or hotel transfer plugins for WordPress, the demo is the fastest way to see the full booking flow before you install anything.
Routes, stops & schedules
Pricing
Booking & availability
WooCommerce integration
Admin & management
Developer-friendly
magepeople-shuttle-booking text domain)Shuttle search form: [mpsb_shuttle_search]
Displays the full booking search form (route, pickup point, date, time, passengers, drop-off stop/point) and the trip-review screen that follows it. Travel Pass purchasing appears inside this same form automatically once weekly or monthly pass pricing is configured. There is no separate pass shortcode.
Attributes:
shuttle_id – lock the form to a single shuttle (used automatically on a single shuttle page). This also removes the shuttle-type tab bar.target_page – URL the search form should submit to.form_title – heading text above the form (default: “Book a Shuttle”).form_subtitle – supporting text under the heading.passes – controls the Travel Pass tab. Default auto shows it whenever pass pricing is on; no hides it on this form only.disable – comma-separated shuttle-type slugs to remove from the tab bar on this form. Accepts shared-city-shuttle, private-shuttle, airport-transfer.The shuttle-type tab bar (Shared City Shuttle / Private Shuttle / Airport Transfer) builds itself from the types that currently have published routes. A type with no routes never gets a tab, and if only one type qualifies the bar is skipped. disable only affects that one form and does not unpublish routes elsewhere. No attribute sets the default tab, renames a tab or reorders tabs.
Examples:
[mpsb_shuttle_search shuttle_id="123"]
[mpsb_shuttle_search disable="private-shuttle,airport-transfer"]
[mpsb_shuttle_search passes="no"]
Shuttle catalog / list: [mpsb_shuttle_list]
Displays a responsive grid or list of published shuttles with a built-in Grid/List toggle.
Attributes:
columns – number of grid columns (default 3)posts_per_page – number of shuttles to show (default -1 for all)category – filter by vehicle category slug (e.g. van)type – filter by shuttle type slug (e.g. airport)stop – filter by stop slug or stop IDorderby – date (default), title, menu_order, rand, modified or IDorder – ASC or DESC (default DESC)ids – comma-separated shuttle IDs to show, in that orderexclude – comma-separated shuttle IDs to leave outExample: [mpsb_shuttle_list columns="3" posts_per_page="6" category="luxury-van"]
Customer bookings dashboard: [mpsb_my_bookings]
Shows the signed-in customer’s Upcoming, Past, Cancelled and All bookings plus any travel passes. The tabs are automatic (the dashboard opens on the first tab that has bookings) and are not configurable.
Attribute: title – heading above the dashboard (default: “My bookings”).
Guest booking lookup: [mpsb_find_booking]
Lets a guest look up a booking using its reference and booking email.
Attribute: title – heading above the form (default: “Find my booking”).
Route map: [mpsb_route_map]
Displays a map of one saved shuttle route.
Attributes:
shuttle_id – the shuttle whose route to map (defaults to the current shuttle on its own page)route_id – which of that shuttle’s saved routes to displayExample: [mpsb_route_map shuttle_id="123" route_id="your-route"]
do_action( 'mpsb_before_add_cart_btn' ) – fires immediately before the add-to-cart button, useful for injecting custom content into the booking form.apply_filters( 'mpsb_filter_settings', $pages ) – register additional settings pages or sections in the plugin’s settings framework.The plugin also integrates through standard WooCommerce hooks (woocommerce_add_to_cart, woocommerce_checkout_order_processed, woocommerce_order_status_changed and others) so booking records always stay in sync with the linked WooCommerce order.
This plugin can connect to the third-party services listed below. None of them require an account with MagePeople, and the plugin never sends your customers’ personal details or booking data to any of them.
Loads the “Inter” and “Plus Jakarta Sans” web fonts that style the shuttle search form and shuttle list on the front end, and the Shuttle list and Shuttle edit screens in wp-admin. The stylesheet is requested from https://fonts.googleapis.com/css2 by the visitor’s or administrator’s own browser, so that browser’s IP address and user agent reach Google. No booking, order or account data is sent.
Provided by Google: Terms of Service, Privacy Policy.
Used by the route map (the [mpsb_route_map] shortcode and the route-map editor in wp-admin) to draw the map background. Map images are requested from https://{s}.tile.openstreetmap.org by the browser displaying the map, which passes that browser’s IP address and the coordinates being viewed to the OpenStreetMap tile servers. The map library (Leaflet) ships with the plugin and is not loaded from a CDN. The tile URL is configurable if you prefer a different tile provider.
Provided by the OpenStreetMap Foundation: Tile Usage Policy, Privacy Policy.
Used only in wp-admin, and only when an administrator types a place name into the route-map editor’s search box, to turn it into map coordinates. The typed search text is sent from your server to https://nominatim.openstreetmap.org/search. Nothing is sent unless an administrator actively searches, and the endpoint can be changed with the mpsb_nominatim_search_endpoint filter.
Provided by the OpenStreetMap Foundation: Nominatim Usage Policy, Privacy Policy.
The plugin’s shared settings and field-rendering framework can also connect to the following services, depending on which field types a configuration uses:
Used to render an interactive map preview for “Google Map” type settings fields. When such a field is displayed with a preview enabled, the plugin loads https://maps.googleapis.com/maps/api/js using the API key configured for that field, and the browser’s request for that script (including the key) is sent to Google. No user location or personal data is transmitted by the plugin itself.
Provided by Google: Maps Platform Terms of Service, Privacy Policy.
Used to render a reCAPTCHA (v2 checkbox or v3) challenge for “Google reCAPTCHA” type settings fields, to help protect forms from spam. When displayed, the plugin loads https://www.google.com/recaptcha/api.js using the site key configured for that field. Google’s script may collect information about the visitor’s browser and interactions to assess whether the visitor is human, per Google’s own reCAPTCHA terms.
Provided by Google: reCAPTCHA Terms, Privacy Policy.
Used by the “User select” settings field type to show a preview image next to each selected WordPress user, via WordPress core’s get_avatar_url(). This requests an avatar image from Gravatar.com based on the selected user’s email address, as WordPress core does by default for any user avatar.
Provided by Automattic: Terms of Service, Privacy Policy.
This Plugin uses Appneck SDK to collect some telemetry data upon the user’s confirmation to troubleshoot problems faster & make product improvements.
Appneck SDK does not gather any data by default. The SDK only starts gathering basic telemetry data when a user allows it via the admin notice. We collect the data to ensure a great user experience for all our users. Integrating Appneck SDK DOES NOT IMMEDIATELY start gathering data, without confirmation from users in any case.
Learn more about how Appneck collects and uses this data.
Checkout and payment processing, including any communication with gateways such as Stripe or PayPal, is handled entirely by WooCommerce and the gateway’s own plugin, not by MagePeople Shuttle Booking. Refer to the documentation of WooCommerce and your chosen gateway for details of what data they transmit.
Initial release of MagePeople Shuttle Booking.