Demo of Schedule Appointment module

Schedule Appointment module

Book now in three easy steps.

Our Culligan water experts are ready to help you find the right solution for your water, starting with your free in-home water test and consultation.

Fields marked * are required fields


    By submitting my data, I declare that I have read the privacy policy*

    How it works

    This module was created for a workflow without an existing booking system, using WordPress CF7 form which then sends the lead to the internal team.
    The process can be as follows:

      The user fills out the form, selects a date, time, fills in the other fields and submits the request. The lead then is the sent to the BU internal team either via email or if they have Salesforce, it can be set up to create a new lead.

      The team then contacts the user to confirm the date, time etc. At the scheduled time and place, one of the team members attends the appointment. If the location is remote, the team can suggest scheduling a video call instead.

    How to setup the module

    The available dates are generated automatically based on your configuration — no manual setup of dates needed. Weekends are always skipped.

    Before you add this module to a page

    You need to create a Contact Form 7 form first. The module uses that form to collect contact details and send the email notification.

    Go to Contact → Add New and paste the following into the form body:

    // Two fields per row using Bootstrap grid
    
    <div class="form-group row">
      <div class="col-md-6"><label>First Name:* [text* first-name class:form-control]</label></div>
      <div class="col-md-6"><label>Last Name:* [text* last-name class:form-control]</label></div>
    </div>
    
    <div class="form-group row">
      <div class="col-md-6"><label>Email:* [email* email class:form-control]</label></div>
      <div class="col-md-6"><label>Phone:* [tel* phone class:form-control]</label></div>
    </div>
    
    <div class="form-group row">
      <div class="col-md-6"><label>Postal Code:* [text* postal-code class:form-control]</label></div>
      <div class="col-md-6"><label>Company: [text company class:form-control]</label></div>
    </div>
    
    // These two lines are required — do not remove them
    
    [hidden appointment-date]
    [hidden appointment-time]
    
    [submit "Submit"]
    

    The fields [hidden appointment-date] and [hidden appointment-time] are required. Without them, the selected date and time will not be included in the notification email.

    Also configure the Mail tab to include
    [appointment-date] and [appointment-time]
    in the email body so you receive the booking details.

    1 Adding the module to a page

    Edit the page, open the flexible content area, add a new module and choose Schedule Appointment Module.

    You will see four tabs: Content, Configuration, Labels and Accessibility.


    2 Content tab

    CONTENT

    • Anchor
      Optional. A short ID so other links on the page can jump directly to this module — e.g. book-appointment. Leave empty if not needed.
    • Heading
      The large heading shown in the left column — e.g. Book now in three easy steps.
    • Main Copy
      Body text in the left column. Explain what happens during the consultation, any conditions, links to other pages etc.
    • Form
      Search for and select the Contact Form 7 form you created in the step above. This is required — the module will not display without it.
    • Classes
      Optional. Extra CSS classes on the module wrapper. Leave empty unless instructed by a developer.

    3 Configuration tab

    CONFIGURATION

    Controls the date and time picker. These settings are technical — if you are unsure leave the defaults as they are.

    • Number of days
      How many working days to offer. Default is 12. Weekends are never shown regardless of this number.
    • Days offset
      How many days from today before the first available date. Default is 3, meaning the earliest option is 3 days from now.
    • Start time
      The earliest appointment time slot available — e.g. 09:00.
    • End time
      The latest appointment time slot available — e.g. 18:00.
    • Time gap
      The interval in minutes between time slots. 30 means slots are 09:00, 09:30, 10:00 etc.

    4 Labels tab

    LABELS

    Every text label visible on the form. Translate these into the site language. If you clear a field and leave it empty that text will simply not appear on the page.

    • Step 1 / 2 / 3 label
      The names shown in the step indicator at the top — e.g. Information, Details, Confirm.
    • Required fields note
      The small note above the form — e.g. Fields marked * are required fields. Clear to hide it.
    • Next button text
      The button that moves from Step 1 to Step 2 — e.g. Next: Choose date & time.
    • Date / Time heading
      Headings above the date picker and time dropdown in Step 2.
    • Select one
      The default placeholder in the time dropdown before the visitor makes a selection.
    • Summary heading / text
      A short message shown below the time picker — e.g. A local Culligan expert will contact you to confirm. Clear both to hide the section.
    • Back / Submit button text
      The Back and Submit buttons in Step 2.

    Quick checklist before publishing

    • CF7 form
      Created and contains the two hidden fields — appointment-date and appointment-time.
    • Form selected
      The correct form is selected in the Content tab.
    • Labels translated
      All labels in the Labels tab are in the correct site language.
    • Mail tab
      The CF7 Mail tab includes [appointment-date] and [appointment-time] so the booking details arrive in the notification email.