Event Tickets 5.1

Summary

Feature Release

There’s now a way to work programmatically with event attendees and ticket orders.

This opens up a slew of new possibilities, like adding and updating event attendees, or fetching orders — from any Event Tickets and Event Tickets Plus e-commerce provider — with a simple function.

As with any WordPress update, you’ll want to take care when installing this latest release. Be sure to backup your database and files in advance, and, if you can, test first in a safe staging environment.


✨ New

Two new features offer more ways to work with attendees and ticket orders.

  • The Attendees ORM is now capable of creating and updating event attendees.
  • A new Orders ORM is capable of calling data from ticket orders using a new tribe_tickets_orders() function, which also supports e-commerce providers for Event Tickets Plus.

✅ Fixed

One bug was squashed in this release.

  • We removed a duplicate “Attendees” heading from the Attendees Report screen when Tribe Commerce tickets is enabled.

🛠️ Tweaks

We made a few non-breaking tweaks.

  • We cleaned up the way we handle modals by consolidating them in a way that we can create a better way of templating them and for handling form processing.
  • We’re making sure that the labels for the action buttons on the Attendees Report screen are capitalized.
  • We implementing a way to start tracking attendee email activity in a meta record. This way, it’s possible to determine if an attendee email was sent, where to, and how many times it was re-sent.


⚙️ Developers

A new function allows you to add and update ticket orders:

  • tribe_tickets_orders()

The following filters were added in this release:

  • tribe_tickets_admin_manager_request
  • tribe_tickets_attendee_repository_set_attendee_args
  • tribe_tickets_attendee_repository_set_attendee_args_
  • tribe_tickets_attendee_repository_save_extra_attendee_data_args
  • tribe_tickets_attendee_repository_save_extra_attendee_data_args_
  • tribe_tickets_attendee_repository_create_order_for_attendee_order_args
  • tribe_tickets_repositories_order_statuses
  • tribe_tickets_repositories_order_public_statuses
  • tribe_tickets_repositories_order_private_statuses
  • tribe_tickets_repositories_order_create_order_for_ticket_order_args
  • tribe_tickets_ticket_object_is_ticket_cache_enabled
  • tribe_tickets_attendee_activity_log_data
  • tribe_tickets_attendee_lookup_user_from_email
  • tribe_tickets_attendee_create_user_from_email
  • tribe_tickets_attendee_create_user_from_email_send_new_user_info
  • tribe_tickets_handler_email_max_resend_limit
  • tribe_tickets_repositories_order_map

This filter disables ticket caching and resolves issues with certain hosting environments that cause tickets to show as sold out:

  • add_filter( 'tribe_tickets_ticket_object_is_ticket_cache_enabled', '__return_false' );

The following actions were added:

  • tribe_log
  • tribe_tickets_attendee_repository_create_attendee_for_ticket_after_create
  • tribe_tickets_attendee_repository_create_attendee_for_ticket_after_create_
  • tribe_tickets_attendee_repository_update_attendee_after_update
  • tribe_tickets_attendee_repository_update_attendee_after_update_{$this->key_name}
  • tribe_logtribe_report_page_after_text_label

We updated a lot templates for those of you who use customized versions to check out:

  • blocks/attendees
  • blocks/attendees/description
  • blocks/attendees/gravatar
  • blocks/attendees/title
  • blocks/attendees/view-link
  • blocks/rsvp
  • blocks/rsvp/content-inactive
  • blocks/rsvp/content
  • blocks/rsvp/details
  • blocks/rsvp/details/availability
  • blocks/rsvp/details/description
  • blocks/rsvp/details/title
  • blocks/rsvp/form
  • blocks/rsvp/form/attendee-meta
  • blocks/rsvp/form/details
  • blocks/rsvp/form/email
  • blocks/rsvp/form/error
  • blocks/rsvp/form/form
  • blocks/rsvp/form/name
  • blocks/rsvp/form/opt-out
  • blocks/rsvp/form/quantity-input
  • blocks/rsvp/form/quantity-minusblocks/rsvp/form/quantity-plus
  • blocks/rsvp/form/quantity
  • blocks/rsvp/form/submit-button
  • blocks/rsvp/form/submit-login
  • blocks/rsvp/icon-svg
  • blocks/rsvp/icon
  • blocks/rsvp/loader-svg
  • blocks/rsvp/loader
  • blocks/rsvp/messages/success
  • blocks/rsvp/status
  • blocks/rsvp/status/full
  • blocks/rsvp/status/going-icon
  • blocks/rsvp/status/going
  • blocks/rsvp/status/not-going-icon
  • blocks/rsvp/status/not-going
  • blocks/tickets
  • blocks/tickets/commerce/fields-edd
  • blocks/tickets/commerce/fields-tpp
  • blocks/tickets/commerce/fields-woo
  • blocks/tickets/commerce/fields
  • blocks/tickets/content-description
  • blocks/tickets/content-inactive
  • blocks/tickets/content-title
  • blocks/tickets/content
  • blocks/tickets/extra-available-quantity
  • blocks/tickets/extra-available-unlimited
  • blocks/tickets/extra-available
  • blocks/tickets/extra-price
  • blocks/tickets/extra
  • blocks/tickets/footer-quantity
  • blocks/tickets/footer-total
  • blocks/tickets/footer
  • blocks/tickets/icon-svg
  • blocks/tickets/icon
  • blocks/tickets/item-inactive
  • blocks/tickets/item
  • blocks/tickets/opt-out-hidden
  • blocks/tickets/quantity-add
  • blocks/tickets/quantity-number
  • blocks/tickets/quantity-remove
  • blocks/tickets/quantity-unavailable
  • blocks/tickets/quantity
  • blocks/tickets/registration/attendee/content
  • blocks/tickets/registration/attendee/fields
  • blocks/tickets/registration/attendee/fields/checkbox
  • blocks/tickets/registration/attendee/fields/radio
  • blocks/tickets/registration/attendee/fields/select
  • blocks/tickets/registration/attendee/fields/text
  • blocks/tickets/registration/attendee/submit
  • blocks/tickets/registration/contentblocks/tickets/registration/summary/content
  • blocks/tickets/registration/summary/ticket-icon
  • blocks/tickets/registration/summary/ticket-price
  • blocks/tickets/registration/summary/ticket-quantity
  • blocks/tickets/registration/summary/ticket-title
  • blocks/tickets/registration/summary/ticket
  • blocks/tickets/registration/summary/tickets
  • blocks/tickets/registration/summary/title
  • blocks/tickets/submit-button-modal
  • blocks/tickets/submit-button
  • blocks/tickets/submit-login
  • blocks/tickets/submit
  • components/loader
  • components/noticemodal/item-total
  • modal/registration-js
  • registration-js/attendees/content
  • registration-js/content
  • registration-js/mini-cart
  • registration/attendees/content
  • registration/content
  • tickets/email
  • tickets/orders
  • v2/components/icons/error
  • v2/components/icons/guest
  • v2/components/icons/paper-plane
  • v2/components/loader/loader
  • v2/day/event/cost
  • v2/list/event/cost
  • v2/map/event-cards/event-card/actions/cost
  • v2/month/calendar-body/day/calendar-events/calendar-event/tooltip/cost
  • v2/month/mobile-events/mobile-day/mobile-event/cost
  • v2/photo/event/cost
  • v2/rsvp-kitchen-sink
  • v2/rsvp-kitchen-sink/ari
  • v2/rsvp-kitchen-sink/default-full
  • v2/rsvp-kitchen-sink/default-must-login
  • v2/rsvp-kitchen-sink/default-no-description
  • v2/rsvp-kitchen-sink/default-unlimited
  • v2/rsvp-kitchen-sink/default
  • v2/rsvp-kitchen-sink/form-going
  • v2/rsvp-kitchen-sink/form-not-going
  • v2/rsvp-kitchen-sink/success
  • v2/rsvp
  • v2/rsvp/actions
  • v2/rsvp/actions/full
  • v2/rsvp/actions/rsvp
  • v2/rsvp/actions/rsvp/going
  • v2/rsvp/actions/rsvp/not-going
  • v2/rsvp/actions/success
  • v2/rsvp/actions/success/title
  • v2/rsvp/actions/success/toggle
  • v2/rsvp/actions/success/tooltip
  • v2/rsvp/ari
  • v2/rsvp/ari/form
  • v2/rsvp/ari/form/error
  • v2/rsvp/ari/form/fields
  • v2/rsvp/ari/form/fields/email
  • v2/rsvp/ari/form/fields/meta
  • v2/rsvp/ari/form/fields/name
  • v2/rsvp/ari/form/template/fields
  • v2/rsvp/ari/sidebar
  • v2/rsvp/ari/sidebar/quantity/input
  • v2/rsvp/ari/sidebar/quantity/minus
  • v2/rsvp/ari/sidebar/quantity/plus
  • v2/rsvp/content
  • v2/rsvp/details
  • v2/rsvp/details/attendance
  • v2/rsvp/details/availability
  • v2/rsvp/details/availability/days-to-rsvp
  • v2/rsvp/details/availability/full
  • v2/rsvp/details/availability/remaining
  • v2/rsvp/details/availability/unlimited
  • v2/rsvp/details/description
  • v2/rsvp/details/title
  • v2/rsvp/form/buttons
  • v2/rsvp/form/fields
  • v2/rsvp/form/fields/cancel
  • v2/rsvp/form/fields/email
  • v2/rsvp/form/fields/name
  • v2/rsvp/form/fields/submit
  • v2/rsvp/form/form
  • v2/rsvp/form/going/title
  • v2/rsvp/form/not-going/title
  • v2/rsvp/form/title
  • v2/rsvp/messages/error
  • v2/rsvp/messages/must-login
  • v2/rsvp/messages/success
  • v2/rsvp/messages/success/going
  • v2/rsvp/messages/success/not-going
  • v2/tickets
  • v2/tickets/commerce/fields
  • v2/tickets/commerce/fields/tribe-commerce
  • v2/tickets/footer
  • v2/tickets/footer/quantity
  • v2/tickets/footer/return-to-cart
  • v2/tickets/footer/total
  • v2/tickets/item
  • v2/tickets/item/content
  • v2/tickets/item/content/description-toggle
  • v2/tickets/item/content/description
  • v2/tickets/item/content/inactive
  • v2/tickets/item/content/title
  • v2/tickets/item/extra
  • v2/tickets/item/extra/available
  • v2/tickets/item/extra/available/quantity
  • v2/tickets/item/extra/available/unlimited
  • v2/tickets/item/extra/description-toggle
  • v2/tickets/item/extra/price
  • v2/tickets/item/inactive
  • v2/tickets/item/opt-out
  • v2/tickets/item/quantity-mini
  • v2/tickets/item/quantity
  • v2/tickets/item/quantity/add
  • v2/tickets/item/quantity/number
  • v2/tickets/item/quantity/remove
  • v2/tickets/item/quantity/unavailable
  • v2/tickets/items
  • v2/tickets/notice
  • v2/tickets/opt-out/hidden
  • v2/tickets/submit
  • v2/tickets/submit/button
  • v2/tickets/submit/must-login
  • v2/tickets/title
  • v2/week/grid-body/events-day/event/tooltip/cost
  • v2/week/mobile-events/day/event/cost


🗣 Translations

Some language translation strings were updated in the process:

  • 2 added
  • 94 updated
  • 0 fuzzied
  • 0 obsoleted