Posted: October 30, 2013 at 8:51 pm
|
My client has been using EE now for about 8 months and is up to about 900 events in the database. The calendar page: http://kennett-design.com/calendar/ was beginning to become very sluggish and taking sometimes up to 15-20 seconds to load. I tried setting the calendar shortcode to [ESPRESSO_CALENDAR show_expired=”false”] in order to see how much that would impact the load time. It was very dramatic and loads much, much faster when the past events are now shown. However, I’m not sure my client will like that as it gives a false impression of how active their business is. Would it be possible to show some past events but not all? For example, could we so all events for the current calendar month (so back to the 1st of the month) but leave out the ones older than that? I guess I’m looking for an additional parameter other than just show_expired true/false all or nothing. If we could load the calendar and not have performance issues that would be the best, but it seems that all of these database queries to pull in so many past events is really slowing the page load speed down. We are hosting on WP Engine and I have worked with them to make sure everything else that could be tuned from a server point of view has been done. Looking for suggestions…. Thanks, |
|
Hi Greg, We are aware of the issues with the calendar becoming sluggish with so many events. We are working on improving the calendar currently and it may help with performance issues, but with your client having so many events its doubtful even the improvements we are making will help. However, we do have some memory management options that could help here. Please go to the Calendar Settings and scroll to the bottom and you will find the settings, and you can limit the number of events loaded and a couple of other options. This should help a lot. |
|
Thanks Dean. I did try playing with the database throttling but even when I set it to “yes” it keeps changing back to “no”. It also wasn’t very clear what order it picks those events in. So, if you say “Medium” which is 500 events is that the first 500, last 500 or 500 random events? That is why I was asking about a way to restrict not simply show_expired=”true” or “false” in the calendar short code but an age of event parameter. Maybe not possible in the short code but maybe in one of the calendar php files where the filter is set based on how old the event is (only showing events that are >= current date – 45 days). The other 2 memory parameters the client really wants to leave as is (display attendee limits ‘yes’ and disable categories ‘no’) because that makes for a much better user experience. Greg |
Hi Greg, The next major version of the calendar will load the events one month at a time instead all of them at once. That will help a lot. You can test the latest beta build out by downloading it from your pre-release channel. |
|
|
Thanks Josh that is good news. Any idea or targets when the new version will be a general public release? Still in 2013 or not until 2014? |
It’s ready for release to the general public at this point, but I don’t have a time frame for when it’s actually going to be released. |
|
|
One final question – with the current calendar is it possible to show_expired=”false” but to keep CLOSED events visible? My client has private parties which they keep the registration closed but keep visible on the calendar. Also, they use a recurring event for “CLOSED ON MONDAYS” that doesn’t show up now either. |
Hi Greg, show_expired=”false” will make it so it doesn’t display closed events. You best option is to use the new calendar because it will load up only the events one month at a time. |
|
|
Okay – I have copied the site to a staging area and have deactivated the old calendar, downloaded, installed and activated the new pre-release version. However, now the calendar is not being displayed at all: http://kennettdesign.staging.wpengine.com/calendar/ Is there something else I should be doing to get the new pre-release version of the calendar to work? |
|
Hi Greg, It’s actually a javascript error coming from the calendars javascript. I cant recreate this, but can you go to the Calendar Settings page, and check what is set for Show Weekends. It may also be a good idea to re-save the calendar settings. If that doesn’t help, please advise your calendar settings as it may need to go to the developers to look into. |
|
Hi Dean. Show weekends is set to “yes” in my settings. I have previously re-saved the calendar settings already, but here is a screen shot of what they are: https://dl.dropboxusercontent.com/u/4138085/ee-beta-cal-settings.jpg Also, in case it helps here is the ee status report: https://dl.dropboxusercontent.com/u/4138085/ee-status.txt Let me know if you need a login. |
Hi Greg, It looks your site is ‘minifying’ the JavaScript for the Calendar which is causing issues. Try disabling ‘bwp-minify’ and see if the calendar loads. |
|
Hi Greg, The beta calendar setting have changed since the time you last installed it. What you will need to do in this case is go to Event Espresso>Calendar Settings, scroll to the bottom of the page, check the Reset Settings box, and save the settings. |
|
|
Thanks – looks like the minify plugin was the cause. I had activated this initially trying to help with the performance issues of the older version of the plugin. I can move forward now with testing out the new beta version! Greg |
Hi Greg, You can use the Better WordPress Minify plugin and the new calendar if you set the Minify options to print the calendar script separately. This will ensure that the eeCAL variables (which are your options that were set) load on the page correctly. Here is a screenshot of the BWP Minify plugin’s settings where you add the calendar script’s handle. |
|
|
Thanks Josh – that worked! |
The support post ‘Event Calendar and Expired Events’ is closed to new replies.
Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.