How do I create multiple booking calendars for different rooms/services?
To create multiple booking calendars, you create one calendar per resource (for example: Room 1, Room 2, Apartment A, Service A), then embed each calendar on the correct page using its unique calendar ID. In WP Booking System, you can reuse the same booking form across multiple calendars or use different forms per resource if you need different fields, pricing, or rules. This setup keeps availability separate, prevents confusion, and makes it easier to manage bookings.
On this page
- What “multiple calendars” means
- What you’ll need
- Step 1: Plan your resources (rooms/services)
- Step 2: Create one calendar per resource
- Step 3: Decide whether to use one form or multiple forms
- Step 4: Embed each calendar on the right page
- Step 5: Create a central “choose a resource” page (optional)
- Step 6: Test bookings for each calendar
- Common issues (and quick fixes)
- Best practices (UX + SEO)
- Mini FAQ
What “multiple calendars” means
- Each calendar represents one resource with its own availability and bookings.
- Bookings for Room 1 do not affect availability for Room 2, because they are separate calendars.
- You embed the correct calendar on the correct page so visitors book the right resource.
What you’ll need
- WP Booking System installed and activated
- A list of resources you want to book (rooms, apartments, services, equipment)
- (Optional) One or more booking forms created in WP Booking System
- One WordPress page per resource (recommended) or one page that lists all resources (optional)
Step 1: Plan your resources (rooms/services)
Before you create calendars, write down exactly what visitors can book. The cleanest setup is one calendar per resource, named clearly so you never mix them up in the admin area.
- Rooms: Room 1, Room 2, Suite, Family Room
- Rentals: Apartment A, Apartment B, Car 1, Bike 1
- Services: Service A, Service B (only if you book by date, not by time)
Tip: If two resources have different rules or pricing, separate calendars make management easier.
Step 2: Create one calendar per resource
- Go to WP Booking System → Calendars.
- Click Add New.
- Name the calendar (example: Room 1).
- Save and repeat for each resource.
Keep names short and consistent, because you will use them when embedding calendars on pages.
Step 3: Decide whether to use one form or multiple forms
You can reuse one booking form for all calendars, or create separate forms per resource. Choose based on what your visitors need to submit and how different your resources are.
Option A: One form for all calendars (recommended for most sites)
- Faster setup and easier maintenance
- Same fields and workflow for every resource
- Works well when resources are similar (for example: multiple rooms)
Option B: Multiple forms (use this when resources differ a lot)
- Different fields (for example: “Number of guests” only for some rooms)
- Different email templates or confirmation flows
- Different payment options or restrictions per resource
Step 4: Embed each calendar on the right page
The recommended structure is one page per resource (for example: /rooms/room-1/, /rooms/room-2/) with a booking calendar embedded on each page.
Calendar + booking form (accept bookings)
[wpbs id="1" form_id="1"]
Replace id with the calendar ID for that resource and form_id with the form you want to use.
Availability only (no booking form)
[wpbs id="1"]
Use this if you want visitors to check dates but book via phone/email or another channel.
Where to embed
- Gutenberg: paste the shortcode into a Shortcode block.
- Elementor/other builders: paste the shortcode into a Shortcode or Code widget/element.
- Classic Editor: paste the shortcode in the editor (Text view is safest).
Step 5: Create a central “choose a resource” page (optional)
If you have multiple resources, create a page that helps visitors pick the right one before they book. This reduces confusion and increases conversion because users can compare options quickly.
- Create a page like /rooms/, /apartments/, or /services/.
- Add a short description and a “Book now” button for each resource that links to its booking page.
- Keep the booking calendars on the individual resource pages to avoid loading many calendars at once.
Step 6: Test bookings for each calendar
- Open each resource page in an incognito/private window.
- Select dates and submit a test booking for each calendar.
- Confirm the booking appears under the correct calendar/resource in the admin area.
- Confirm availability updates only for the calendar you booked.
Tip: Use a consistent test name like “Test Room 1” and “Test Room 2” so you can spot mistakes quickly.
Common issues (and quick fixes)
Bookings are going to the wrong resource
- Check that each page uses the correct calendar ID in the shortcode.
- Rename calendars clearly so you can identify them instantly in the admin list.
- Avoid copying shortcodes without updating the calendar ID.
I embedded multiple calendars on one page and it feels slow
- Move each calendar to its own resource page and link to those pages from a central listing page.
- If you must show multiple calendars, limit how many months you display per calendar and keep the page layout simple.
Availability looks different across resources but should be the same
- Confirm you edited availability for each calendar separately.
- If you are using sync (iCal) for some resources, confirm the sync settings are consistent.
I need multiple bookings per day for the same resource
- Use an inventory/quantity approach if your workflow allows multiple bookings for the same date.
- If you require time slots (hourly bookings), use a tool built specifically for time-slot appointments.
Best practices (UX + SEO)
- Create one URL per resource and include the resource name in the page title (for example: “Room 1 Booking Calendar”).
- Add key info above the calendar (price range, capacity, minimum stay, cancellation policy) to reduce unnecessary inquiries.
- Use consistent naming for calendars and pages so your admin workflow stays clean.
- Link all resource pages from one central page so users (and Google) can discover them easily.
Mini FAQ
Should I put all calendars on one page?
It is usually better to use one page per resource and link to those pages from a central “choose a resource” page. This is clearer for visitors and typically faster than loading many calendars on a single page.
Can I use the same booking form for all calendars?
Yes. If your resources have the same booking process and required fields, one form is easier to manage. Use multiple forms only when resources need different fields or workflows.
What is the safest way to embed each calendar?
Use the shortcode method because it works in Gutenberg, Elementor, Classic Editor, and most other builders, and it makes it easy to control exactly which calendar is embedded.