Home Forums Event Espresso Premium Weird error showing up on Calendar page after updating some plugins.

Weird error showing up on Calendar page after updating some plugins.

Posted: July 8, 2020 at 9:43 am


July 8, 2020 at 9:43 am

We have a few customizations we’ve made to the Calendar plugin – so this might be in relation to one of those… but all of a sudden, we are getting some wacky errors

Any push in the right direction would help… Thanks team!

Fatal error: Uncaught ArgumentCountError: Too few arguments to function esc_url(), 0 passed in /www/wp-content/plugins/ee4-events-calendar/EED_Espresso_Calendar.module.php on line 294 and at least 1 expected in /wordpress/wp-includes/formatting.php:4306 Stack trace: #0 /www/wp-content/plugins/ee4-events-calendar/EED_Espresso_Calendar.module.php(294): esc_url() #1 /www/wp-content/plugins/ee4-events-calendar/EED_Espresso_Calendar.module.php(461): EED_Espresso_Calendar->_get_filter_html(Array) #2 /www/wp-content/plugins/ee4-events-calendar/EED_Espresso_Calendar.module.php(536): EED_Espresso_Calendar->get_calendar_js_options(Array) #3 /www/wp-content/plugins/ee4-events-calendar/EES_Espresso_Calendar.shortcode.php(99): EED_Espresso_Calendar->display_calendar(Array) #4 /wordpress/wp-includes/shortcodes.php(343): EES_Espresso_Calendar->process_shortcode(Array, ”, ‘ESPRESSO_CALEND…’) #5 [internal function]: do_shortcode_tag(Array) #6 /wordpress/wp-includes/shortcodes.php(218): preg_replace_callback(‘/\\[(\\[?)(ESPRES…’, ‘do_ in /wordpress/wp-includes/formatting.php on line 4306


  • Support Staff

July 8, 2020 at 2:30 pm

Hi there,

Based on the default calendar, the error you are getting appears to be from this line:

$caturl = esc_url(add_query_arg('event_category_id', $ee_term->slug()));

and it means $ee_term at that point doesn’t have a slug() to return, however, the line numbers don’t match for that function so I’m guessing this is due to some customization done within EED_Espresso_Calendar.module.php

Compare the _get_filter_html method within the above file from the default calendar to yours and see what differs between them up to the call to esc_url()

I’d start by adding some code to debug what is being returned by $ee_term->slug() within the foreach loop to see if it gives you any clues as to what is causing it.

You could also check this is due to customizations by installing the default EE4 calendar using a different directory name (add -orig to the end for example) and then swap out the activate calendar plugin to use the default.


July 8, 2020 at 3:22 pm

Thank you Tony!
We’ll do just that! <smile>
Appreciate your help on this issue.


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  scaldwell 3 months, 2 weeks ago ago

Topic Tags


This topic is:
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/weird-error-showing-up-on-calendar-page-after-updating-some-plugins/'> <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' >Phone</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>