Tribe__Events__Main::bind_implementations()
Registers the implementations in the container.
Classes that should be built at plugins_loaded time are also instantiated.
Return
(void)
Source
File: src/Tribe/Main.php
public function bind_implementations( ) {
tribe_singleton( 'tec.main', $this );
// Utils
tribe_singleton( 'tec.cost-utils', 'Tribe__Events__Cost_Utils' );
// Front page events archive support
tribe_singleton( 'tec.front-page-view', 'Tribe__Events__Front_Page_View' );
// Metabox for Single Edit
tribe_singleton( 'tec.admin.event-meta-box', 'Tribe__Events__Admin__Event_Meta_Box' );
// Featured Events
tribe_singleton( 'tec.featured_events', 'Tribe__Events__Featured_Events' );
tribe_singleton( 'tec.featured_events.query_helper', new Tribe__Events__Featured_Events__Query_Helper );
tribe_singleton( 'tec.featured_events.permalinks_helper', new Tribe__Events__Featured_Events__Permalinks_Helper );
// Event Aggregator
tribe_singleton( 'events-aggregator.main', 'Tribe__Events__Aggregator', array( 'load', 'hook' ) );
tribe_singleton( 'events-aggregator.service', 'Tribe__Events__Aggregator__Service' );
tribe_singleton( 'events-aggregator.settings', 'Tribe__Events__Aggregator__Settings' );
tribe_singleton( 'events-aggregator.records', 'Tribe__Events__Aggregator__Records', array( 'hook' ) );
tribe_register_provider( 'Tribe__Events__Aggregator__REST__V1__Service_Provider' );
tribe_register_provider( 'Tribe__Events__Aggregator__CLI__Service_Provider' );
tribe_register_provider( 'Tribe__Events__Aggregator__Processes__Service_Provider' );
tribe_register_provider( 'Tribe__Events__Editor__Provider' );
// Shortcodes
tribe_singleton( 'tec.shortcodes.event-details', 'Tribe__Events__Shortcode__Event_Details', array( 'hook' ) );
// Ignored Events
tribe_singleton( 'tec.ignored-events', 'Tribe__Events__Ignored_Events', array( 'hook' ) );
// Assets loader
tribe_singleton( 'tec.assets', 'Tribe__Events__Assets', array( 'register', 'hook' ) );
// Register and start the Customizer Sections
tribe_singleton( 'tec.customizer.general-theme', new Tribe__Events__Customizer__General_Theme() );
tribe_singleton( 'tec.customizer.global-elements', new Tribe__Events__Customizer__Global_Elements() );
tribe_singleton( 'tec.customizer.day-list-view', new Tribe__Events__Customizer__Day_List_View() );
tribe_singleton( 'tec.customizer.month-week-view', new Tribe__Events__Customizer__Month_Week_View() );
tribe_singleton( 'tec.customizer.single-event', new Tribe__Events__Customizer__Single_Event() );
tribe_singleton( 'tec.customizer.widget', new Tribe__Events__Customizer__Widget() );
// Tribe Bar
tribe_singleton( 'tec.bar', 'Tribe__Events__Bar', array( 'hook' ) );
// iCal
tribe_singleton( 'tec.iCal', 'Tribe__Events__iCal', array( 'hook' ) );
// REST API v1
tribe_singleton( 'tec.rest-v1.main', 'Tribe__Events__REST__V1__Main', array( 'bind_implementations', 'hook' ) );
tribe( 'tec.rest-v1.main' );
// Integrations
tribe_singleton( 'tec.integrations.twenty-seventeen', 'Tribe__Events__Integrations__Twenty_Seventeen', array( 'hook' ) );
// Linked Posts
tribe_singleton( 'tec.linked-posts', 'Tribe__Events__Linked_Posts' );
tribe_singleton( 'tec.linked-posts.venue', 'Tribe__Events__Venue' );
tribe_singleton( 'tec.linked-posts.organizer', 'Tribe__Events__Organizer' );
// Adjacent Events
tribe_singleton( 'tec.adjacent-events', 'Tribe__Events__Adjacent_Events' );
// Purge Expired events
tribe_singleton( 'tec.event-cleaner', new Tribe__Events__Event_Cleaner() );
// Gutenberg Extension
tribe_singleton( 'tec.gutenberg', 'Tribe__Events__Gutenberg', array( 'hook' ) );
// Admin Notices
tribe_singleton( 'tec.admin.notice.timezones', 'Tribe__Events__Admin__Notice__Timezones', array( 'hook' ) );
tribe_singleton( 'tec.admin.notice.marketing', 'Tribe__Events__Admin__Notice__Marketing', array( 'hook' ) );
// GDPR Privacy
tribe_singleton( 'tec.privacy', 'Tribe__Events__Privacy', array( 'hook' ) );
// The ORM/Repository service provider.
tribe_register_provider( 'Tribe__Events__Service_Providers__ORM' );
// The Views v2 service provider.
tribe_register_provider( Views::class );
/**
* Allows other plugins and services to override/change the bound implementations.
*/
do_action( 'tribe_events_bound_implementations' );
}
Changelog
| Version | Description |
|---|---|
| 4.4 | Introduced. |