Support

Home Forums Event Espresso Premium Making the Upgrade from EE3 to EE4 Truly an Upgrade

Making the Upgrade from EE3 to EE4 Truly an Upgrade

Posted: March 18, 2015 at 8:42 am


John Fineberg

March 18, 2015 at 8:42 am

I’ve been experimenting with the registration process, from the customer’s point-of-view. I go through the entire registration up to, but not including, payment. But then when I go to delete my registrations, I’m finding those registrations locked, as if they’ve already been paid:

“The following errors have occurred:
The registration for John Fineberg could not be trashed because it has payments attached to the related transaction. If you wish to trash this registration you must first delete the payments on the related transaction.”

But there have been no payments made.

Just so you understand the importance of why I’m even running these test registrations, since UPgrading from EE3 to EE4, my business has DEgraded significantly. At first I thought it was just the holiday lull, when people are thinking about celebrating Christmas, not taking CPR classes. But here it is, mid-March, and my business has not rebounded from my mid-December EE update.

To be absolutely clear, classes that would have sold out last year at this time are now canceling (due to too few students to even run them without taking a financial loss). I’ve gone from a growing business to a dying business. And, since nothing else has changed, I’m quite sure it’s because of the EE3-to-EE4 upgrade.

I’ve gone for three months without making even close to a living. Something has gone drastically wrong! I desperately need your help in troubleshooting what it is!


John Fineberg

March 18, 2015 at 9:03 am

Oh, and the website (as you most likely already know, from all of the previous help you’ve given me) is http://www.CPR-TwinCities.com


Seth Shoultes

  • Support Staff

March 18, 2015 at 3:17 pm

Hello John,

Sorry to hear that business is slowing down for you. Mind if I ask a few questions?

Have you tried reaching out to current customers to ask for feedback about the registration process?

Do you have Google Analytics installed on your site to see where your traffic is coming from, and where they are exiting from?

One more thing you could look into is your competition, and how your site is ranking against them in search engines, such as Google.


John Fineberg

March 18, 2015 at 4:55 pm

Hi Seth,

Thanks for your response. Let me say this before answering your questions. The drop in business was not gradual. It was all of a sudden. It nosedived straight downward. Without calculating exactly, I can say that business dropped by about 90%. And it happened exactly when I upgraded from EE3 to EE4, in mid-December.

John


John Fineberg

March 18, 2015 at 10:20 pm

Sorry, I was on my way out when you wrote, Seth. I’ll try to answer your questions now.

I have a pretty small business (and yet it is my livelihood). So I might have around 30-35 students in an average month. Since making the upgrade from EE3 to EE4, I’ve seen that drop to maybe 3-5 students. So I don’t have much of a pool to ask about their registration experience. A more valuable poll would be to ask the people who either couldn’t or chose not to complete the registration process why they didn’t complete it.

One of the many, many things I dislike about EE4 is that I no longer receive automated emails saying that someone has completed the registration portion, yet hasn’t necessarily completed the payment portion yet. With EE3, I was keenly aware that someone had started the process, and I followed up with those who began, but did not finish. I sent emails to see if they forgot the last step, realized that they didn’t have their credit card with them, couldn’t complete the process because of work-related rules, or simply changed their mind about registering. In the vast majority of cases, however, they were having some difficulty making a payment through PayPal. Once I knew that, I could help them complete the process. But now, I haven’t the foggiest idea of why people aren’t following through and completing the registration process.

What I’m quite sure of is this: There were no changes in the local marketplace for CPR training and certification. There wasn’t a Wal-Mart-like business that came to town and crushed the competition. It’s not that kind of business. And it’s not an SEO problem. On the contrary, I’ve been working tirelessly to make the site more SEO-friendly. It’s not a matter of people not coming to the site. It’s purely a matter of them not following through in the same way as they did with EE3. I’ve also been working tirelessly to make the site easier and easier to navigate, giving visitors countless ways of getting to the same place, depending on how their individual mind works.

If I’m interpreting Google Analytics correctly, it looks like around 30%, more or less, make it to a registration page, and then they exit. I don’t know if that’s high or low, but it seems high to me. Once a person has come that far, it makes me wonder why they bailed out. I’ve run my own experiments and I always get through the process just fine (though I don’t normally make a payment, as it’s a hassle to make a credit card payment, then refund that payment, over and over again). My personal opinion is that the EE3 registration format/layout was more attractive and easier to interpret. If that is having some bearing on the customer experience, I have no way of gauging. But most people shopping on the Internet are in a hurry; if they can’t clearly understand the process, they’ll go somewhere else.

Because of the exact timing of the downturn in business, I’m quite certain that there is a problem somewhere in the registration process. It is a website problem, of that I am certain. Whether it’s Event Espresso, per se, or something related to Event Espresso, that’s what I can’t determine. So I need your help in determining where the problem(s) lies.


Tony

  • Support Staff

March 19, 2015 at 6:07 am

Hi John,

I’d just like to offer another side to this as having personally worked through most of the issues you have posted since upgrading, I think it would be a good idea to add some extra info.

When you switched to EE4 you installed a caching plugin (W3 Total Cache) and the Event Espresso pages were being cached, this would have caused all registrations to stop.

Then again a week later there was a similar issue as you had changed one of the default core page slugs so the previous exclusion rules did not catch all EE pages, again this would have prevented registrations.

Then all the JavaScript was forced to the bottom of the page with another plugin, this again broke registrations.

Each time we worked through those and got it all back up and running, but this would have contributed to the instant drop you mention. None of the above are issues with Event Espresso itself (either an upgrade or clean install) but due to other incorrectly configure plugins, all of which will have effected your registrations.

In terms of EE3 and EE4 the registration process hasn’t really changed, (in fact its now harder to break a registration than it was in EE3) the basic principle has remained the same with one change, the ticket selector:

Select ticket, click to register (different from EE3)
Input registration details and proceed to payment options (same as EE3)
Select Payment method and finalize registration (easier than with EE3)
Sent to selected payment method then returned to thank you page (similar to EE3 – same experience but works slightly differently)

The registration process is not much more complicated than EE3 was so I don’t see how this would cause failed registrations?

…I no longer receive automated emails saying that someone has completed the registration portion, yet hasn’t necessarily completed the payment portion yet. With EE3, I was keenly aware that someone had started the process, and I followed up with those who began, but did not finish.

We have had internal discussions on adding a message type that would accommodate this although it is not something we can not quickly add as logic would needed to be added to EE to allow for this.

Although you do not receive an email to show incomplete registration they ARE tracked within Event Espresso and you can find details (if the user has input any)…

If you go to Event Espresso -> Registrations.

On the top you can see filters like this – http://take.ms/beJ0E

‘Incomplete Registrations’ happen when you select tickets then close the browser.

So you’ll usually see something like this – http://take.ms/M9MbQ

There is no user information and so no-one can be contacted. These registrations are created for every registration made.

Once you input the registration data, the registration status switches to Pending Payment. These registrations show in the main list (Event Espresso -> Registrations) or the individual Event Registrations (Event Espresso -> Events -> *EVENT* -> registrations) and look like this – http://take.ms/IclDZ

Clicking on the registration you can see the registration details used.

Click on the transaction and if they have seelcted PayPal you’ll see a incomplete payment for PayPal – http://take.ms/kCB0v

So a quick question, if you look through your Registrations list, what are the majority of your registrations showing like there?

Are they mainly within ‘Incomplete Registrations’ or Showing a Pending/Abandoned – http://take.ms/V3cJO


John Fineberg

March 19, 2015 at 10:31 am

You have a great eye for detail, Tony. My eyes are hazel, but nowhere nearly as green as yours.

As I said, I’m not able to tell if the problem is Event Espresso, per se, or something related to the update. As you know, I’ve done a lot since the EE3 to EE4 update, all to bring my business back up to where it was before the update. I truly appreciate that you remember (or at least have good records of) what I have done.

Using the default parameters, under Event Espresso -> Registrations, out of 838 transactions, I see 77 “incomplete” registrations (all of them this month and last month). Then, using the default parameters, under Event Espresso -> Transactions, looking at March 19, 2005, to March 19, 2015, out of 793 transactions, I see 3 “abandoned” transactions, and I see 63 “failed” transactions (all of them, abandoned and failed, this month and last month).

That’s amazing to see! If I’m interpreting this correctly, that’s a huge amount of business down the drain. So where-oh-where is this breakdown happening? And what should I do now to fix it?

1) Should I delete WP Super Cache?
2) Should I reconfigure WP Super Cache?
3) Should I switch to W3 Total Cache?

I only added those plugins to speed up the pages. And, yes, I’ve been trying to force JavaScript to the bottom of the page, because all of the tools I’ve been using (GTmetrix, Google PageSpeed Insights and P3 – Plugin Performance Profiler) are telling me to do so. Are they all wrong?

4) Should I stop trying to appeal to them?

I’ve also added Yoast WordPress SEO to help me get back in the good graces of the almighty Google. Could that be hurting me rather than helping me?

5) Should I turn off my SEO plugin?
6) Should I switch to a different SEO plugin?
7) Should I not use an SEO plugin at all?

I’ve turned off Loco Translate and Quick Localization (Quick Localisation), because the word substitutions were slowing down the loading of my pages. In their place, I’ve been using the site-specific editing plugin that you and yours created for me. That seems to be working well, as far as I can tell (though I suppose that could be part of the problem, too). I’m going to paste the code that’s currently in there, if that’s helpful:

<?php
/*
Plugin Name: Site plugin for aslan-editing-plugin
Description: Site specific code for cpr-twincities.com
*/
/* Begin Adding Functions Below This Line; Do not include an opening PHP tag as this sample code already includes one! */
//* Change messaging for ticket to registration
function ee_change_ticket_messaging_registration( $translated, $original, $domain ) {
$strings = array(
‘View Details’ => ‘Choose This Class’,
‘Proceed to Payment Options’ => ‘Choose Payment Option’,
‘Available Tickets’ => ‘Available Registrations’,
‘Ticket Details’ => ‘Registration Details’,
‘Event’ => ‘Class’,
‘Events’ => ‘Classes’,
‘Upcoming Events’ => ‘Upcoming Classes’,
‘Event Location’ => ‘Class Location’,
‘Ticket’ => ‘Registration’,
‘Ticket’ => ‘Registration’,
‘Tickets’ => ‘Registrations’,
‘This ticket is required and must be purchased.’ => ‘Class registration is required and must be purchased.’,
‘Please note that a maximum number of %d tickets can be purchased for this event per order.’ => ‘Please note that a maximum number of %d registrations can be purchased for this class per order.’,
‘You need to select a ticket quantity before you can proceed.’ => ‘You need to select a quantity before you can proceed.’,
‘No tickets were added for the event.’ => ‘No registrations were added for the class.’,
‘Ticket Name and Description’ => ‘Class and Description’,
‘The following checkboxes allow you to use the above information for only the selected additional tickets/attendees.’ => ‘The following checkboxes allow you to use the above information for only the selected additional registrants/attendees.’,
‘In order to process your registration, we ask you to provide the following information.%1$sPlease note that all fields marked with an asterisk (%2$s) are required.’ => ‘In order to process your registration, we ask you to provide the following information. Please note that, although all fields marked with an asterisk (%2$s) are required, if you have only one phone, type N/A (for not applicable) into either the Home Phone or the Cell Phone field.’,
);
if ( isset( $strings[$original] ) ) {
$translations = get_translations_for_domain( $domain );
$translated = $translations->translate( $strings[$original] );
}
return $translated;
}
add_filter( ‘gettext’, ‘ee_change_ticket_messaging_registration’, 10, 3 );
//* Additional changes to messaging for ticket to registration
add_action( ‘FHEE__ticket_selector_chart_template__ticket_details_price_breakdown_heading’, ‘ee_additional_change_ticket_messaging_registration_a’ );
function ee_additional_change_ticket_messaging_registration_a() {
return ‘Registration Price Breakdown’;
}
//* Additional changes to messaging for ticket to registration
add_action( ‘FHEE__ticket_selector_chart_template__ticket_details_event_access_message’, ‘ee_additional_change_ticket_messaging_registration_b’ );
function ee_additional_change_ticket_messaging_registration_b() {
return ‘This registration allows access to the following class dates and times.’;
}
//* Additional changes to messaging for ticket to registration
add_action( ‘FHEE__registration_page_attendee_information__attendee_info_not_required_pg’, ‘ee_additional_change_ticket_messaging_registration_c’ );
function ee_additional_change_ticket_messaging_registration_c() {
return ‘This registration type does not require any information for additional attendees, so attendee #1\’s information will be used for registration purposes.’;
}
//* Additional changes to messaging for ticket to registration
add_action( ‘FHEE__registration_page_attendee_information__auto_copy_attendee_pg’, ‘ee_additional_change_ticket_messaging_registration_d’ );
function ee_additional_change_ticket_messaging_registration_d() {
return ‘The above information will be used for any additional registrants/attendees.’;
}
//* Additional changes to messaging for ticket to registration
add_action( ‘FHEE__ticket_selector_chart_template__ticket_details_total_price’, ‘ee_additional_change_ticket_messaging_registration_e’ );
function ee_additional_change_ticket_messaging_registration_e() {
return ‘Total Price’;
}
/* Stop Adding Functions */

I may be giving you more information than you need. But, since I have no idea where the breakdown is, I’d rather give you too much than too little.

It’s my birthday, by the way. I’m going to try to ignore work for the rest of the day. But tomorrow I’ll be back at it. Hopefully you’ll have some advice waiting for me by then.


Tony

  • Support Staff

March 19, 2015 at 2:40 pm

You will always, no matter how efficient, have incomplete registrations. People will click to see what happens an then change their minds, connections lost etc there are many reasons for Incomplete Registrations. This sounds like a paradox but if we didn’t collect that information it wouldn’t be available and you wouldn’t as focused on that specific number. Consider it extra information but not ‘all’ of the information.

Transactions are associated to Registrations, without a registration you can not have a transaction, so lets focus on the Registrations.

Incomplete registrations are when no attendee information has been collected, simply selecting a ticket qty and clicking ‘Register Now’ creates the incomplete registration. They do not indicate a problem.

You also have registrations that are Pending/Abandoned (Reg Status/ Txn Status) around the same time correct?

I ran a test registration on your event and didn’t notice any problem, I selected Invoice and should have a status of Pending Payment/Incomplete. If you look within your registrations is that the correct status?

1) Should I delete WP Super Cache?
2) Should I reconfigure WP Super Cache?
3) Should I switch to W3 Total Cache?

Check all of your EE Critical pages and ensure they are excluded from cache. If you view the page source as you go through registrations you should not see comments from W3 Total Cache in the source.

Basically you want to make sure all of Event Espresso, does not cache, at all. Object caching, page cache, the works… they all must exclude EE data.

I only added those plugins to speed up the pages. And, yes, I’ve been trying to force JavaScript to the bottom of the page, because all of the tools I’ve been using (GTmetrix, Google PageSpeed Insights and P3 – Plugin Performance Profiler) are telling me to do so. Are they all wrong?
4) Should I stop trying to appeal to them?

Great in practice, not so great in the wild. Make improvements by all means but don’t get obsessed over them. They are general guide not a strict set of rules.

I’ve also added Yoast WordPress SEO to help me get back in the good graces of the almighty Google. Could that be hurting me rather than helping me?
5) Should I turn off my SEO plugin?
6) Should I switch to a different SEO plugin?
7) Should I not use an SEO plugin at all?

Yoast SEO is generally considered ‘the’ SEO Plugin. I’m far from an SEO Expert (in fact I’d call myself anything but) so I can’t really help here, I would recommend contacting an SEO Consultant for further advice.

I’ve turned off Loco Translate and Quick Localization (Quick Localisation), because the word substitutions were slowing down the loading of my pages. In their place, I’ve been using the site-specific editing plugin that you and yours created for me. That seems to be working well, as far as I can tell (though I suppose that could be part of the problem, too). I’m going to paste the code that’s currently in there, if that’s helpful:

Quick Localization (Quick Localisation) stores the strings within the database, so to translate it needed to pull the strings first then pass them through the get_text filter. This is a slower process than…

Loco Translate is used to create PO and MO files, these are the fastest way to translate WordPress, the strings are translated very early and the MO file is in machine code, meaning it much quicker than most methods. The function you added above is the next best thing to that.

It’s my birthday, by the way. I’m going to try to ignore work for the rest of the day. But tomorrow I’ll be back at it. Hopefully you’ll have some advice waiting for me by then.

Happy Birthday 🙂


John Fineberg

March 19, 2015 at 4:05 pm

Here are the instructions from WP Super Cache:

Add here strings (not a filename) that forces a page not to be cached. For example, if your URLs include year and you dont want to cache last year posts, it’s enough to specify the year, i.e. ’/2004/’. WP-Cache will search if that string is part of the URI and if so, it will not cache that page.

And here is what I have entered in that box:

wp-.*\.php
index\.php
/events/
/registration-checkout/
/transactions/
/thank-you/
/registration-cancelled/
/register

… with no backslash after “register,” as I was instructed. Does all that look correct to you? Am I missing anything?


Tony

  • Support Staff

March 20, 2015 at 3:04 am

It depends if you have changed any of the default page slugs Event Espresso uses.

/events/
/registration-checkout/
/transactions/
/thank-you/
/registration-cancelled/

Are the default strings used.

/register

Is actually the /registration-checkout/ page slug modified.

So right now /registration-checkout/ in that list isn’t doing anything because a /registration-checkout/ page doesn’t exist.

In 4.6.14.p we added DONOTCACHEPAGE constants to the EE critical pages, which should prevent most caching plugins from caching Event Espresso, so EE should take care of this automatically now, although it doesn’t hurt to double check and add the exclusion strings.


John Fineberg

March 20, 2015 at 4:23 pm

I switched from WP Super Cache to W3 Total Cache today. Without having to add the following anywhere, it seems to be working:

/events/
/registration-checkout/
/transactions/
/thank-you/
/registration-cancelled/
/register

I don’t know where else to look for reasons for the sudden drop in business. All I know is that it’s got to be a technical problem, not a drastic change in the market. I’ve been in business for myself for too long (and grew up in a business family) to believe anything otherwise. So if you have any other suggestions for where to look for a glitch in the system, why people are coming to the site, but then abandoning their registration efforts, I’d sure appreciate it. By the way, I just turned the check and invoice options back on a few days ago, hoping to capture some business that I know I’ve been losing while I’ve had PayPal Standard as my only payment option.

As to my comment about appearance and usability of EE3 vs. EE4, I know it’s all subjective. But I truly believe that the Events Calendar Table Template in EE3 was more attractive and, more importantly, easier for people in a rush to use than the current display of events.


Tony

  • Support Staff

March 20, 2015 at 6:21 pm

EE4.6.14+ should force caching plugins not to cache the EE critical pages without intervention from users.

So if you have any other suggestions for where to look for a glitch in the system, why people are coming to the site, but then abandoning their registration efforts, I’d sure appreciate it.

I can’t find any issue with registering onto an event.

I have used Invoice, Cheque and PayPal (stopping short of actually making a payment), if you look within Event Espresso -> Registration can you see my Pending Payment registrations?


John Fineberg

March 20, 2015 at 8:11 pm

I see three incomplete transactions from you. There’s also one test transaction from my brother. What’s curious is that the one from him has a lock icon, as if he’d made a payment. And that’s what I get, although inconsistently, when I make test registrations, even though I haven’t made a payment. So that’s another thing I’d like to remedy, assuming that it can be remedied.

I’ve been wondering if the problem could reside on the PayPal website (as, until a few days ago, that was the only payment option I was offering). My wife ran a test last night, registering and paying for a class with a credit card. And everything went as it should. And I did the same a few days ago, and it went fine for me.

My business is at the top of the unpaid listings on Google, so SEO is not the problem. I’m just clueless about what’s causing paid sign-ups to suddenly — and I do mean suddenly — drop at the very same time as I upgraded from EE3 to EE4. If it’s not Event Espresso, I apologize for taking up so much of your time. But I absolutely need to track down the source of the problem, because it’s not going to get any better until it’s resolved.


Tony

  • Support Staff

March 20, 2015 at 9:00 pm

I see three incomplete transactions from you.

You can not have a transaction without a registration, so forget the transaction for a moment. What is the status of my the registrations?

Are my details saved within the registrations?

What’s curious is that the one from him has a lock icon, as if he’d made a payment.

If he selected PayPal he will have a payment within the transaction, this is expected behaviour.

If you view the registration, then view its transaction, do you see a payment?


John Fineberg

March 20, 2015 at 9:47 pm

Your tests are all listed as “Registration Status : Pending Payment.” And your made-up details are listed on each registration.

My brother’s test is listed as “Incomplete.” The “Transaction Total” is $69.00. The “Payments Total” is $0.00. No payment was made. So why is it that it’s displayed with a lock, as the info balloon says that a lock means a payment has been made? This has been true in most, but not all, of the tests that I’ve run, too.


Tony

  • Support Staff

March 23, 2015 at 3:04 am

Is there a payment listed within the transaction? like this – http://take.ms/iERBd

It may be easier if I can take a look at the registrations and see if I can find anything a miss, if that’s possible can you send me temporary log in details using this form:

https://eventespresso.com/send-login-details/


John Fineberg

March 23, 2015 at 7:36 am

It looks quite similar to what you showed in your screenshot:

Event Espresso – Transactions
View Transaction Overview Reports

Transaction # 1861

Friday March 20, 2015 7:04:00 pm

Send Payment Reminder
Transaction Status: Incomplete

Total Amount Due: $ 69.00

Shouldn’t it say “Complete” and either zero or at least fewer dollars than the total amount, to warrant having the lock icon displayed?

Tony, I’d be very happy to have you look for anything that might be amiss in my EE setup. I’ll send you the temporary login details shortly.


Tony

  • Support Staff

April 1, 2015 at 7:15 am

Just a quick update for future readers of this thread.

I looked through John’s site and have been in contact with him privately as I didn’t want to post any user sensitive information here. I found no issues with Event Espresso that would cause registration issues, registrations are working as expected and all the information collected correctly.

The payment mentioned above is created when the user selects PayPal, this starts as a ‘failed’ payment and is automatically updated when the user pays using the IPN, these payments currently need to be removed before the registration/transaction can be removed.

The support post ‘Making the Upgrade from EE3 to EE4 Truly an Upgrade’ 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.

Event Espresso