Code Snippets

Code Snippets

You can extend your Event Espresso 4 powered event registration system with any of the code snippets below. Unless otherwise indicated, we recommend placing code snippets within a plugin.

You can find many more snippets in our library hosted on Github.

Add events to any blog archive listing and rss feed

Below is the code to add that will inject the “espresso_events” custom post type into the WordPress WP_Query post_types array. This allows Event Espresso Events to appear in any blog archive listing and rss feed.

Add a category class name to the post class

Below is the code to add that will add a class name to the Event Espresso event post’s post class so events that belong to a specific category can be uniquely styled with CSS.

Deactivate the iCal functionality that was added in Event Espresso 4.3

Below is the code to add that will remove the iCal link that was added in Event Espresso 4.3

Display the base price of the ticket in the ticket selector

Below is the code to add that will change the display of the ticket selector so it displays a base price (instead of the modified price). Requires Event Espresso 4.4 or greater.

Display remaining ticket inventory total for each datetime

Below is the code to add that will add a “Total tickets remaining: x” message below each event’s datetime.

Print an attendee list after the content on the event details page

Below is the code to add that will print an attendee list after the content on the event details page. Displays the gravatar, first name, and last name of each registered attendee for an event.

Exclude events from the event list that have no tickets on sale

Below is the code to add that will remove events from the event list that do not have tickets on sale.
Get the code on Github.com

Print a list of upcoming events for a venue on the venue details page

Below is the code to add that will print a list of upcoming events for a venue after the content on the venue details page. Includes the permalink and event name.

Remove “powered by Event Espresso” admin footer text in Event Espresso 4

Below is the code to add that will remove the “powered by Event Espresso” admin footer text in Event Espresso 4.

Exclude password protected events in EE4

This script will exclude password protected events and posts from the WordPress loop. Adapted from Stackoverflow: http://stackoverflow.com/questions/7538959/how-to-exclude-password-protected-posts-in-wordpress-loop

Yoast’s WordPress SEO and EE4 Metabox fix

This may now be resolved as WordPress SEO has changed its hook, but if you have WordPress SEO installed and EE4 metaboxes disappear from the Event editor page, try using the code published in our snippets library:

https://github.com/eventespresso/ee-code-snippet-library/blob/master/third-party-integration/tw_ee_load_yoast_seo_within_ee.php


Need more help?

  • Browse or search for more information on this topic in our support forums. Customers with an active support license can open a support topic and get help from Event Espresso staff.
  • Have an emergency? Purchase a support token and get expedited one-on-one help!
  • Go back to documentation for Event Espresso
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='/wiki/useful-php-code-snippets/'> <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' >Name</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>
[i]
[i]