Skip to content

Instantly share code, notes, and snippets.

@joshfeck
Last active August 11, 2017 03:53
Show Gist options
  • Save joshfeck/9f1e4329bb6962f1a8365059587b7f5a to your computer and use it in GitHub Desktop.
Save joshfeck/9f1e4329bb6962f1a8365059587b7f5a to your computer and use it in GitHub Desktop.
Event Espresso 4 Attendee shortcode custom loop, sorted by answer to custom question. You add this to your child theme.
<?php
/**
* Loop Template for the [ESPRESSO_EVENT_ATTENDEES] shortcode
*
*/
$no_attendees_message = apply_filters('FHEE__loop-espresso_attendees-shortcode__template__no_attendees_message', __('No Attendees Yet', 'event_espresso'));
?>
<div class="event-attendees">
<?php
do_action('AHEE__loop-espresso_event_attendees__before', $contacts, $event, $datetime, $ticket, $show_gravatar);
if ($contacts): ?>
<ul class="event-attendees-list">
<?php
$attendee_list = array();
foreach($contacts as $contact):
$custom_question_output = '';
if ($contact instanceof EE_Attendee) {
$prev_answer_value = EEM_Answer::instance()->get_var(array(
array(
'Registration.ATT_ID' => $contact->ID(),
'Registration.EVT_ID' => $event->ID(),
'QST_ID' => 11 // replace with custom question's ID
),
), 'ANS_value');
if ($prev_answer_value) {
$custom_question_output = $prev_answer_value . ' - ';
}
}
$attendee_list[] = $custom_question_output . $contact->lname() . ' ' . $contact->fname();
endforeach;
sort($attendee_list);
foreach($attendee_list as $attendee) {
echo '<li>' . $attendee . '</li>';
}
?>
</ul>
<?php
else: ?>
<p><?php
echo $no_attendees_message; ?></p>
<?php
endif; ?>
<?php
do_action('AHEE__loop-espresso_event_attendees__after', $contacts, $event, $datetime, $ticket, $show_gravatar); ?>
</div>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment