Hooks and Filters
Hooks and filters are the standard WordPress extensibility mechanism, and Tickera exposes a comprehensive set of them so developers can customize behaviour without editing plugin code. This reference lists the most useful action hooks (events you can run code on — “after a ticket is sold,” “before check-in”) and filters (data you can modify — ticket prices, email content, ticket layout output) with code examples for common modifications.
All available Tickera plugin hooks and filters are listed below. These always refer to the latest version, and we’ll be adding descriptions of each filter and action soon.
| File | Filter Name | Arguments |
|---|---|---|
| \includesddons\delete-pending-orders\index.php | ||
| tc_delete_trash_metas | apply_filters( ‘tc_delete_trash_metas’, true ) | |
| \includesddonsxport-attendee-list\index.php | ||
| tc_pdf_additional_column_titles | apply_filters( ‘tc_pdf_additional_column_titles’, $rows, $_POST ) | |
| tc_pdf_additional_column_values | apply_filters( ‘tc_pdf_additional_column_values’, $rows, $order, $instance, $_POST ) | |
| \includesddons\stats-dashboard-widget\index.php | ||
| tc_can_view_dashboard_widgets_capability | apply_filters( ‘tc_can_view_dashboard_widgets_capability’, ‘manage_options’ ) | |
| \includesdmin-pagesttendees.php | ||
| tc_checkin_request_name | apply_filters( ‘tc_checkin_request_name’, ‘tickera_scan’ ) | |
| tc_checkins_status | apply_filters( ‘tc_checkins_status’, $ticket_checkin[ ‘status’ ] ) | |
| tc_checkins_api_key_id | apply_filters( ‘tc_checkins_api_key_id’, $ticket_checkin[ ‘api_key_id’ ] ) | |
| tc_ticket_instance_object_details | apply_filters( ‘tc_ticket_instance_object_details’, $ticket_instance_obj->details ) | |
| tc_ticket_instance_field_value | apply_filters( ‘tc_ticket_instance_field_value’, $ticket_instance_object->ID, (isset( $ticket_instance_object->$post_field_type ) | |
| \includesdmin-pages\discount_codes.php | ||
| tc_discount_object_details | apply_filters( ‘tc_discount_object_details’, $discount_obj->details ) | |
| tc_discount_field_value | apply_filters( ‘tc_discount_field_value’, (isset( $discount_object->$post_field_type ) | |
| \includesdmin-pagesvents.php | ||
| tc_event_object_details | apply_filters( ‘tc_event_object_details’, $event_obj->details ) | |
| tc_event_field_value | apply_filters( ‘tc_event_field_value’, $event_object->$key ) | |
| \includesdmin-pages\orders.php | ||
| tc_order_admin_filter_statuses | apply_filters( ‘tc_order_admin_filter_statuses’, array(‘order_paid’ => __( ‘Paid’, ‘tc’ ) | |
| tc_order_object_details | apply_filters( ‘tc_order_object_details’, $order_obj->details ) | |
| tc_order_field_value | apply_filters( ‘tc_order_field_value’, $order_object->ID, (isset( $order_object->$post_field_type ) | |
| \includesdmin-pages\settings-api.php | ||
| tc_api_key_object_details | apply_filters( ‘tc_api_key_object_details’, $api_key_obj->details ) | |
| tc_api_key_field_value | apply_filters( ‘tc_api_key_field_value’, (isset( $api_key_object->$post_field_type ) | |
| \includesdmin-pages\settings-gateways.php | ||
| tc_gateway_settings_filter | apply_filters( ‘tc_gateway_settings_filter’, $_POST[ ‘tc’ ] ) | |
| \includesdmin-pages\settings.php | ||
| tc_settings_new_menus | apply_filters( ‘tc_settings_new_menus’, $menus ) | |
| \includesdmin-pages icket_templates.php | ||
| tc_template_object_details | apply_filters( ‘tc_template_object_details’, $template_obj->details ) | |
| tc_template_field_value | apply_filters( ‘tc_template_field_value’, $template_object->$key ) | |
| tc_ticket_template_row_number | apply_filters( ‘tc_ticket_template_row_number’, 10 ) | |
| \includesdmin-pages icket_types.php | ||
| tc_ticket_object_details | apply_filters( ‘tc_ticket_object_details’, $ticket_obj->details ) | |
| tc_ticket_field_value | apply_filters( ‘tc_ticket_field_value’, (isset( $ticket_object->$post_field_type ) | |
\includesRelated questionsWas this article helpful? Yes — great. No or partially? Tell us what was missing — we read every message and use it to improve these docs. | ||