Show ticketname(s) for logged in user on grid page

[ad_1]

On the event grid page I am using the conditional placeholder is_user_attendee to show a text like “Your reservation is confirmed”. That works fine. Now I would also show the name of the ticket(s) this user has ordered. I made a custom placeholder like this:

add_filter('em_event_output_placeholder','my_em_ticket_string',1,3);
function my_em_ticket_string($replace, $EM_Event, $result){
    if( $result == '#_TICKETSTRING' ){
        $replace="";
        $EM_Bookings = $EM_Event->get_bookings();
        if( count($EM_Bookings->bookings) > 0 ){
            foreach( $EM_Bookings as $EM_Booking){
                $ticket_name = "";
                    foreach ( $EM_Booking->get_tickets() as $EM_Ticket ) {
                        if ($ticket_name == "") {
                            $ticket_name = $EM_Ticket->name;
                        } else {
                            $ticket_name = $ticket_name . ', ' . $EM_Ticket->name;
                        }
                    }
            }
        }
        $replace = $ticket_name;
    }
    return $replace;
}

Unfortunate this is working good. Yes is shows ticket name(s), but not always from the logged in user. Instead it shows the ticket name of the first user who ordered a ticket. So my code is somehow missing a check for the logged in user. How can I improve this?

 

This site will teach you how to build a WordPress website for beginners. We will cover everything from installing WordPress to adding pages, posts, and images to your site. You will learn how to customize your site with themes and plugins, as well as how to market your site online.

Buy WordPress Transfer