Home Forums Event Espresso Premium Payment gateways no longer showing custom buttons after EE3 upgrade

Payment gateways no longer showing custom buttons after EE3 upgrade

Posted: December 30, 2017 at 12:24 pm


December 30, 2017 at 12:24 pm

I just upgraded to EE3, version My site uses both the E-xact and the PayPal gateways, but for some reason after the upgrade, the “Current Button Image” which is set in the respective “Payment Settings” is not being displayed, and instead, the default images for both gateways are being show on the Payment Options screen.

I’ve been carefully looking for changes to gateway and theme files but can not figure out what is causing this. Can anyone point me in the right direction?


  • Support Staff

January 2, 2018 at 5:07 am

Hi there,

You mentioned you just updated to EE3 and have, however, the latest version is v3.1.37.12.p so could you please confirm the version number you are using? You can check within Dashboard -> Plugins.

If using an older version and you’ve just updated now is there a reason you’ve updated to an older version?

If you go to Event Espresso -> Payment settings

Are the E-xact and PayPal payment gateways listed at the top of the list or just sorted alphabetically? Or if you use FTP and check within /wp-content/uploads/espresso/gateways/ do you have those 2 gateways there? (Meaning they are custom gateways)


January 2, 2018 at 9:09 am

Hi Tony,

Thank you for your reply and apologies for my typo – I have upgraded to EE3 v3.1.37.12.p.

The gateways are both listed at the top of the Payment Settings page and they exist in the /wp-content/uploads/espresso/gateways folder.

I have used DiffMerge to compare my custom versions with the versions in /wp-content/plugins/event-espresso/gateways and I see no differences related to the button image loaded via gateway_display.php.

Can you let me know what other file(s) impact how the payment gateway button image is loaded?

Thanks again,


  • Support Staff

January 2, 2018 at 1:35 pm

PayPal it’s the paypal_vars.php within whichever version is loading (in your case, the gateways from wp-content/uploads/espresso/gateways)

For E-xact is exact_vars.php.

Noth of which pull the settings for the gateway into an array and should have any custom values stored in against the ‘button_url’ key.

That value is then passed to espresso_select_button_for_display() within /functions/main.php which checks the custom value can be opened and if not switches back to the default.

If you open the full URL for your custom image in the browser itself, does it open the image?


January 2, 2018 at 4:36 pm

Thank you. Yes, the custom button urls are loading fine when entered directly in the browser. For now I’ve hard-coded the button urls in my /wp-content/uploads/espresso/gateways/ versions of the paypal_vars.php and exact_vars.php files.

I hadn’t made any changes to those files previously and can’t see any other reason why they aren’t being loaded as per the Payment Settings page.

I don’t mind leaving them hard-coded, but if you have any suggestions for what else I can check, please let me know. (e.g. I did disable and re-enable those gateways without effect.)


  • Support Staff

January 3, 2018 at 3:23 am

The first thing I would do is confirm that ‘button_url’ is actually being set.

In your custom gateway (doesn’t matter which one but in my examples I’ll use PayPal), in paypal_vars.php find:

$paypal_settings = get_option('event_espresso_paypal_settings');

Below that add:


Wrap it in a cap check for manage_options if you only want to display it to admins:

if( current_user_can('manage_options') ) {

Confirm that ‘button_url’ is set to the value you saved in the settings page when you load the gateway.

The support post ‘Payment gateways no longer showing custom buttons after EE3 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.

Do NOT follow this link or you will be banned from the site!