Home Forums Event Espresso Premium Events Grid View Template – All Event Dates

Events Grid View Template – All Event Dates

Posted: May 12, 2020 at 3:33 pm


May 12, 2020 at 3:33 pm

I have a relatively simple issue with the Grid View template that I’ve been unable to solve. One of my events has multiple dates, May 16 and May 17, however the grid view is only showing the first date. It would make the most sense if it was able to show both dates as their own grid item, and then linking to the same spot, I just don’t know how to accomplish it with the EE functions within the Grid View.

For reference, this is the code that is in the template file.

global $post;

//Create the event link
$external_url 		= $post->EE_Event->external_url();
$button_text		= !empty($external_url) ? $alt_button_text : $reg_button_text;
$registration_url 	= !empty($external_url) ? $post->EE_Event->external_url() : $post->EE_Event->get_permalink();
$feature_image_url	= $post->EE_Event->feature_image_url();

if(!isset($default_image) || $default_image == '') {
	$default_image = EE_GRID_TEMPLATE_URL .'/images/default.jpg';

$image = !empty($feature_image_url) ? $feature_image_url : $default_image;

$datetimes = EEM_Datetime::instance()->get_datetimes_for_event_ordered_by_start_time( $post->ID, $show_expired, true, 1 );

$datetime = end( $datetimes );

if ($datetime instanceof EE_Datetime) {

$startdate = date_i18n( $date_format . ' ' . $time_format, strtotime( $datetime->start_date_and_time('Y-m-d', 'H:i:s') ) );
	<div class="ee_grid_box_v2 item admin-item">

		<img />" alt="" />
		<div onclick="" class="darken ee_overlay">

			<div class="event-title title"><?php echo $post->post_title; ?></div>
			<p class="start-date"><?php echo $startdate; ?></p>
			<p class="event-link"><?php echo '<a>ID .'" href="' . $registration_url . '">' . $button_text . '</a>'; ?></p>

I’m pretty sure that it’s the standard template with some minor class changes.

I’ve tried making changes to the $datetimes pull, and creating other pulls, but every time I do, I crash the page.

Any help would be greatly appreciated.

Seth Shoultes

  • Support Staff

May 14, 2020 at 8:45 am

Hi there,

Sorry for the delay. It looks like you have some code issues with what you’ve shared here. For example, this line of your code: <img />" alt="" />
Should look like this: <img src="<?php echo $image; ?>" alt="" />

Then, this line of code is broken:
<p class="event-link"><?php echo '<a>ID .'" href="' . $registration_url . '">' . $button_text . '</a>'; ?></p>

It should look something like this:
<p class="event-link"><?php echo '<a href="'. $post->ID .'" ' . $registration_url . '">' . $button_text . '</a>'; ?></p>

Once those issues are fixed, try the code again and see if it’s working.


  • Support Staff

May 14, 2020 at 9:28 am

Further to the above, you can’t easily split individual datetimes within events into separate grid items but you can change the date output on the dried to be a range, would that work?

I’ve put together a template that shows how you can do the above here:

You must be logged in to reply to this support post. Sign In or Register for an Account

Support forum for Event Espresso 3 and Event Espresso 4.
Documentation for EE3 and EE4
Documentation for Event Espresso 3 Documentation for Event Espresso 4

Status: publish

Updated by  Tony 5 months, 2 weeks ago ago

Topic Tags



This topic is: not resolved
Do NOT follow this link or you will be banned from the site!
[gravityform id=80 title=false description=false ajax=false]
<div class='gf_browser_unknown gform_wrapper' id='gform_wrapper_80' ><form method='post' enctype='multipart/form-data' id='gform_80' action='/topic/events-grid-view-template-all-event-dates/'> <div class='gform_body'><ul id='gform_fields_80' class='gform_fields top_label form_sublabel_below description_below'><li id='field_80_1' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_80_1' >First name<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_text'><input name='input_1' id='input_80_1' type='text' value='' class='medium' aria-required="true" aria-invalid="false" /></div></li><li id='field_80_2' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_80_2' >Email address<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_80_2' type='email' value='' class='medium' aria-required="true" aria-invalid="false" /> </div></li><li id='field_80_3' class='gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' >GDPR Agreement<span class='gfield_required'>*</span></label><div class='ginput_container ginput_container_checkbox'><ul class='gfield_checkbox' id='input_80_3'><li class='gchoice_80_3_1'> <input name='input_3.1' type='checkbox' value='I consent to have this website store my submitted information so they can respond to my inquiry.' id='choice_80_3_1' /> <label for='choice_80_3_1' id='label_80_3_1'>I consent to have this website store my submitted information so they can respond to my inquiry.</label> </li></ul></div></li><li id='field_80_4' class='gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible' ><label class='gfield_label' for='input_80_4' >Comments</label><div class='ginput_container'><input name='input_4' id='input_80_4' type='text' value='' autocomplete='off'/></div><div class='gfield_description' id='gfield_description_80_4'>This field is for validation purposes and should be left unchanged.</div></li> </ul></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_80' class='gform_button button' value='Download Now' onclick='if(window["gf_submitting_80"]){return false;} if( !jQuery("#gform_80")[0].checkValidity || jQuery("#gform_80")[0].checkValidity()){window["gf_submitting_80"]=true;} ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_80"]){return false;} if( !jQuery("#gform_80")[0].checkValidity || jQuery("#gform_80")[0].checkValidity()){window["gf_submitting_80"]=true;} jQuery("#gform_80").trigger("submit",[true]); }' /> <input type='hidden' class='gform_hidden' name='is_submit_80' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='80' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_80' value='WyJbXSIsIjBiNjdjZjkyMDUzOWUxOWY5Y2NiZjIwMzM4YjA1Mjk4Il0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_80' id='gform_target_page_number_80' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_80' id='gform_source_page_number_80' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> </form> </div><script type='text/javascript'> jQuery(document).bind('gform_post_render', function(event, formId, currentPage){if(formId == 80) {} } );jQuery(document).bind('gform_post_conditional_logic', function(event, formId, fields, isInit){} );</script><script type='text/javascript'> jQuery(document).ready(function(){jQuery(document).trigger('gform_post_render', [80, 1]) } ); </script>