I help a swim club that offers swimming lessons to small children. They use CiviEvents to publish their courses, and the challenge is this: How can I get a nice list of these courses shown in a WordPress page?

Ideally, I want a table with columns like these:
Course name | Start date | Time of day | Weekday | Price | Link to sign up

Ideally, the 'link to sign up' turns into 'closed' or something when the signup period has passed.

My test setup is newest WP 6.3.2 and newest CiviCRM 5.66.0.

This official documentation is not helpful at all. I am not sure it is current.
This 8-year-old question comes closest but does not help me.

Edit: I have just found the CiviEvent widget but I am struggling to make it show a nice listing with enough details.

1 Answer 1


The current way to achieve this would be with SearchKit. It can allow you to customize your own Upcoming Events screen.

Once you've created the search and embedded it in FormBuilder, you are ready to place it on your WordPress page via the provided ShortCode.

  • Thank you, this was incredibly helpful. I now have SearchKit > Form Builder > shortcode > listing in the public web page! However, the time-of-event includes seconds (HH:mm:ss) and, worse, the event PRICE is not offered as a field anywhere, nor is the status (open/available -vs- closed/full). Do these fields not exist? Commented Oct 15, 2023 at 20:23
  • re Dates - try Try: Administer > Localisation > Date Formats
    – petednz - fuzion
    Commented Oct 15, 2023 at 20:36
  • You're welcome. You should be able to get the participant count by joining onto the Participant entity, enabling GROUP BY event id, and selecting participant ID with the COUNT field transformation. In your "with Participants" clause you should also filter out pending/cancelled registration status.
    – Coleman
    Commented Oct 16, 2023 at 13:21
  • I think getting the price from SearchKit is still an open issue, due to the potentially complex price structure of events. The short answer to "does that field exist" is "no" because any event can have multiple price sets and multiple price fields, discounts, etc.
    – Coleman
    Commented Oct 16, 2023 at 13:37
  • CiviCRM is maintained by a small but dedicated group of people. We are always looking for ways to improve the project. If you are interested in sponsoring this feature to expose Event prices to SearchKit, we'd be happy to work with you!
    – Coleman
    Commented Oct 16, 2023 at 13:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.