tribe_events_event_classes( $event, $echo = true )
Prints out or returns classes on an event wrapper
Contents
Parameters
- $event
-
(Required) |0 post id or object
- $echo
-
(Optional) |true *@category Events
Default value: true
Source
File: src/functions/template-tags/general.php
function tribe_events_event_classes( $event = 0, $echo = true ) {
global $post, $wp_query;
// May be called when the global $post object does not exist - ie during ajax loads of various views
// ... creating a dummy object allows the method to proceed semi-gracefully (interim measure only)
//If $post object doesn't exist and an $event_id wasn't specified, then use a dummy object
if ( $event instanceof WP_Post ) {
$event_id = $event->ID;
} elseif ( $event !== 0 ) {
$event_id = $event;
} else {
$event_id = $post->ID;
}
if ( ! $event_id ) {
return '';
}
$classes = array( 'type-tribe_events', 'post-' . $event_id, 'tribe-clearfix' );
$tribe_cat_slugs = tribe_get_event_cat_slugs( $event_id );
foreach ( $tribe_cat_slugs as $tribe_cat_slug ) {
if ( ! empty( $tribe_cat_slug ) ) {
$classes[] = 'tribe-events-category-' . $tribe_cat_slug;
}
}
if ( $venue_id = tribe_get_venue_id( $event_id ) ) {
$classes[] = 'tribe-events-venue-' . $venue_id;
}
foreach ( tribe_get_organizer_ids( $event_id ) as $organizer_id ) {
$classes[] = 'tribe-events-organizer-' . $organizer_id;
}
// added first class for css
if ( ( $wp_query->current_post == 0 ) && ! tribe_is_day() ) {
$classes[] = 'tribe-events-first';
}
// added last class for css
if ( $wp_query->current_post == $wp_query->post_count - 1 ) {
$classes[] = 'tribe-events-last';
}
// Mark 'featured' events
if ( tribe( 'tec.featured_events' )->is_featured( $event_id ) ) {
$classes[] = 'tribe-event-featured';
}
/**
* Filters the event wrapper classes before they are returned
*
* @since 4.6.20 added the $event_id parameter
*
* @param array $classes The classes that will be returned
* @param int $event_id Current event ID
*/
$classes = apply_filters( 'tribe_events_event_classes', $classes, $event_id );
if ( $echo ) {
echo implode( ' ', $classes );
} else {
return implode( ' ', $classes );
}
}