I cringe when I see people complaining that a Divi update broke their site because of an auto update. This is very unfortunate, and can be avoided. By default, WordPress and Divi do not automatically update. However, some hosting providers have automatic updates building into their system, and many users are unaware of this. Please check your sites now and see if auto-updates are enabled, and if so, follow this tutorial to permanently disable and hide the entire auto-update option for the Divi Theme and plugins.
Join subscribers on our YouTube channel and enjoy other Divi video tutorials!
It is simply a bad practice to allow complicated code like themes and plugins to modify your site on their own without your consent.
I thought updates were good?
Yes! They usually mean that a new feature is available or that some issue has been fixed. Updating themes and plugins is a good practice, and you should never let outdated plugins and themes just sit there. But the update process should be taken seriously, and allowing a theme as big as Divi or a plugin update on it’s own seems rather careless, if not risky.
Potential Problems With Updates
Sometimes updates can introduce bugs or technical glitches on the website. Obviously no one intends for an update to cause damage, and developers test their products, but it’s impossible to test the thousands and often time millions of different scenarios out there. There are many elements of a WordPress website working together, and it is not uncommon for themes and plugins or custom code to conflict with each other. With auto-updates enabled, you most likely will not even be thinking about the update and it could be weeks later until you realize the disaster has happened, and of course this would be really bad for your business.
Manual Updates Give You Control
Please don’t misunderstand! I am not saying that updates are bad, but rather automatic updates are bad. See the difference? I highly recommend learning how to manually update WordPress, themes, and plugins. It is a process that should be taken seriously, especially for major version changes.
Check If Divi Auto-Updates Are Enabled On Your Site(s)
Chances are that you do not need to change anything, and that would be considered a good thing! This most likely depends on your host, whether they have this enabled by default or not. To know for sure, simply log into your WordPress Dashboard and go to Appearance>Themes. If Divi is the only theme installed, you will only see Divi. Otherwise, hover over the Divi Theme and click on the “View Details” button. Either way you will see this screen below:
Here you can check on what it says. One option may be if it says “Disable auto-updates” and this means that automatic updates are indeed enabled. This should alarm you a little! Keep going!
If you see “Enable auto-updates” then rest easy knowing that automatic updates are not enabled. However, keep reading learn how to disable this or hide it completely.
Where To Place The Code
Controlling the auto-update feature involves adding PHP code to your website. To follow this tutorial you will need to have a child theme installed on your website. If you don’t have a child theme you can download and use our free Divi child theme. The snippets shared should be added into the functions.php file of a child theme. Alternatively, you may use a PHP code snippets plugin.
How To Disable Divi Theme Auto-Updates
You have two main options, you can either disable the feature or hide it completed. If you just want to disable the feature, our code will remove the “Enable auto-updates” link and change the text to “Auto-updates disabled” and you won’t be able to click it.
// Disable Theme Auto Updates
add_filter( 'auto_update_theme', '__return_false' );
After placing the code, you will see that auto-updates are now disabled.
How To Completely Hide The Option For Divi Theme Auto-Updates
The other option is to simply hide the entire thing! Why not, right? Rather than just changing the link, this code will remove the option and you will never remember it again!
// Remove Themes Auto Update Option
add_filter( 'themes_auto_update_enabled', '__return_false' );
BONUS: Disable Plugin Auto-Updates
While we are disabling themes, you may want to do the same thing for your plugins. The steps are very similar, and since this is a bonus I won’t give you every detail, but here are the code snippets needed to disable or hide plugin auto-updates.
Disable Plugin Auto Updates
// Disable Plugin Auto Updates
add_filter( 'auto_update_plugin', '__return_false' );
Remove Plugins Auto Update Option
// Remove Plugins Auto Update Option
add_filter( 'plugins_auto_update_enabled', '__return_false' );
I hope you have enjoyed learning How To Disable Divi Auto-Updates. Please share your thoughts in the comments below. If you find value in this type of post, please subscribe because we have tons of tutorials in progress to be posted!
Subscribe
Each month we send out a roundup email newsletter with the latest tutorials, product updates, helpful resources, and any other industry or personal news. Occasionally we send an extra separate email here and there if we just can’t wait! So that’s what you will get if you subscribe, and you can always unsubscribe at any time if you just can’t take it anymore :)
Nelson is the owner of Pee-Aye Creative in the beautiful state of Pennsylvania. He loves helping small businesses, exploring outdoors, building websites with Divi, and teaching others.
Thanks so much for this and all your great tutorials! 2 Questions:
1. If you CAN just click to disable the auto-updates and it sticks, is it ok to just do that, rather than add the PHP code? I am also on Siteground and can disable the features in their admin area.
2. How do you recommend then getting notified about available theme/plugin updates?
In this tutorial I will show you how to make highlighted focus input field borders in the Divi Contact Form module.
Pin It on Pinterest
{"id":null,"mode":"button","open_style":"in_modal","currency_code":"USD","currency_symbol":"$","currency_type":"decimal","blank_flag_url":"https:\/\/wordpress-292293-1617718.cloudwaysapps.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/blank.gif","flag_sprite_url":"https:\/\/wordpress-292293-1617718.cloudwaysapps.com\/wp-content\/plugins\/tip-jar-wp\/\/assets\/images\/flags\/flags.png","default_amount":500,"top_media_type":"none","featured_image_url":false,"featured_embed":"","header_media":null,"file_download_attachment_data":null,"recurring_options_enabled":true,"recurring_options":{"never":{"selected":true,"after_output":"One time only"},"weekly":{"selected":false,"after_output":"Every week"},"monthly":{"selected":false,"after_output":"Every month"},"yearly":{"selected":false,"after_output":"Every year"}},"strings":{"current_user_email":"","current_user_name":"","link_text":"Leave a tip","complete_payment_button_error_text":"Check info and try again","payment_verb":"Pay","payment_request_label":"Pee-Aye Creative","form_has_an_error":"Please check and fix the errors above","general_server_error":"Something isn't working right at the moment. Please try again.","form_title":"Pee-Aye Creative","form_subtitle":null,"currency_search_text":"Country or Currency here","other_payment_option":"Other payment option","manage_payments_button_text":"Manage your payments","thank_you_message":"Thank you for being a supporter! It is people like you who keep us going week after week!","payment_confirmation_title":"Pee-Aye Creative","receipt_title":"Your Receipt","print_receipt":"Print Receipt","email_receipt":"Email Receipt","email_receipt_sending":"Sending receipt...","email_receipt_success":"Email receipt successfully sent","email_receipt_failed":"Email receipt failed to send. Please try again.","receipt_payee":"Paid to","receipt_statement_descriptor":"This will show up on your statement as","receipt_date":"Date","receipt_transaction_id":"Transaction ID","receipt_transaction_amount":"Amount","refund_payer":"Refund from","login":"Log in to manage your payments","manage_payments":"Manage Payments","transactions_title":"Your Transactions","transaction_title":"Transaction Receipt","transaction_period":"Plan Period","arrangements_title":"Your Plans","arrangement_title":"Manage Plan","arrangement_details":"Plan Details","arrangement_id_title":"Plan ID","arrangement_payment_method_title":"Payment Method","arrangement_amount_title":"Plan Amount","arrangement_renewal_title":"Next renewal date","arrangement_action_cancel":"Cancel Plan","arrangement_action_cant_cancel":"Cancelling is currently not available.","arrangement_action_cancel_double":"Are you sure you'd like to cancel?","arrangement_cancelling":"Cancelling Plan...","arrangement_cancelled":"Plan Cancelled","arrangement_failed_to_cancel":"Failed to cancel plan","back_to_plans":"\u2190 Back to Plans","update_payment_method_verb":"Update","sca_auth_description":"Your have a pending renewal payment which requires authorization.","sca_auth_verb":"Authorize renewal payment","sca_authing_verb":"Authorizing payment","sca_authed_verb":"Payment successfully authorized!","sca_auth_failed":"Unable to authorize! Please try again.","login_button_text":"Log in","login_form_has_an_error":"Please check and fix the errors above","uppercase_search":"Search","lowercase_search":"search","uppercase_page":"Page","lowercase_page":"page","uppercase_items":"Items","lowercase_items":"items","uppercase_per":"Per","lowercase_per":"per","uppercase_of":"Of","lowercase_of":"of","back":"Back to plans","zip_code_placeholder":"Zip\/Postal Code","download_file_button_text":"Download File","input_field_instructions":{"tip_amount":{"placeholder_text":"How much would you like to tip?","initial":{"instruction_type":"normal","instruction_message":"How much would you like to tip? Choose any currency."},"empty":{"instruction_type":"error","instruction_message":"How much would you like to tip? Choose any currency."},"invalid_curency":{"instruction_type":"error","instruction_message":"Please choose a valid currency."}},"recurring":{"placeholder_text":"Recurring","initial":{"instruction_type":"normal","instruction_message":"How often would you like to give this?"},"success":{"instruction_type":"success","instruction_message":"How often would you like to give this?"},"empty":{"instruction_type":"error","instruction_message":"How often would you like to give this?"}},"name":{"placeholder_text":"Name on Credit Card","initial":{"instruction_type":"normal","instruction_message":"Enter the name on your card."},"success":{"instruction_type":"success","instruction_message":"Enter the name on your card."},"empty":{"instruction_type":"error","instruction_message":"Please enter the name on your card."}},"privacy_policy":{"terms_title":"Terms and conditions","terms_body":null,"terms_show_text":"View Terms","terms_hide_text":"Hide Terms","initial":{"instruction_type":"normal","instruction_message":"I agree to the terms."},"unchecked":{"instruction_type":"error","instruction_message":"Please agree to the terms."},"checked":{"instruction_type":"success","instruction_message":"I agree to the terms."}},"email":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email address"},"success":{"instruction_type":"success","instruction_message":"Enter your email address"},"blank":{"instruction_type":"error","instruction_message":"Enter your email address"},"not_an_email_address":{"instruction_type":"error","instruction_message":"Make sure you have entered a valid email address"}},"note_with_tip":{"placeholder_text":"Your note here...","initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"empty":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"not_empty_initial":{"instruction_type":"normal","instruction_message":"Attach a note to your tip (optional)"},"saving":{"instruction_type":"normal","instruction_message":"Saving note..."},"success":{"instruction_type":"success","instruction_message":"Note successfully saved!"},"error":{"instruction_type":"error","instruction_message":"Unable to save note note at this time. Please try again."}},"email_for_login_code":{"placeholder_text":"Your email address","initial":{"instruction_type":"normal","instruction_message":"Enter your email to log in."},"success":{"instruction_type":"success","instruction_message":"Enter your email to log in."},"blank":{"instruction_type":"error","instruction_message":"Enter your email to log in."},"empty":{"instruction_type":"error","instruction_message":"Enter your email to log in."}},"login_code":{"initial":{"instruction_type":"normal","instruction_message":"Check your email and enter the login code."},"success":{"instruction_type":"success","instruction_message":"Check your email and enter the login code."},"blank":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."},"empty":{"instruction_type":"error","instruction_message":"Check your email and enter the login code."}},"stripe_all_in_one":{"initial":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"empty":{"instruction_type":"error","instruction_message":"Enter your credit card details here."},"success":{"instruction_type":"normal","instruction_message":"Enter your credit card details here."},"invalid_number":{"instruction_type":"error","instruction_message":"The card number is not a valid credit card number."},"invalid_expiry_month":{"instruction_type":"error","instruction_message":"The card's expiration month is invalid."},"invalid_expiry_year":{"instruction_type":"error","instruction_message":"The card's expiration year is invalid."},"invalid_cvc":{"instruction_type":"error","instruction_message":"The card's security code is invalid."},"incorrect_number":{"instruction_type":"error","instruction_message":"The card number is incorrect."},"incomplete_number":{"instruction_type":"error","instruction_message":"The card number is incomplete."},"incomplete_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incomplete."},"incomplete_expiry":{"instruction_type":"error","instruction_message":"The card's expiration date is incomplete."},"incomplete_zip":{"instruction_type":"error","instruction_message":"The card's zip code is incomplete."},"expired_card":{"instruction_type":"error","instruction_message":"The card has expired."},"incorrect_cvc":{"instruction_type":"error","instruction_message":"The card's security code is incorrect."},"incorrect_zip":{"instruction_type":"error","instruction_message":"The card's zip code failed validation."},"invalid_expiry_year_past":{"instruction_type":"error","instruction_message":"The card's expiration year is in the past"},"card_declined":{"instruction_type":"error","instruction_message":"The card was declined."},"missing":{"instruction_type":"error","instruction_message":"There is no card on a customer that is being charged."},"processing_error":{"instruction_type":"error","instruction_message":"An error occurred while processing the card."},"invalid_request_error":{"instruction_type":"error","instruction_message":"Unable to process this payment, please try again or use alternative method."},"invalid_sofort_country":{"instruction_type":"error","instruction_message":"The billing country is not accepted by SOFORT. Please try another country."}}}},"fetched_oembed_html":false}
Again a nice easy to follow tutorial. THX appreciate your work
You’re welcome!
That is ripper of little bit of code. This will stop clients updating their themes on auto and wondering why they break!
Exactly! Would be a great thing to add to any default child theme for every install.
Hi Nelsen
Thanks so much for this and all your great tutorials! 2 Questions:
1. If you CAN just click to disable the auto-updates and it sticks, is it ok to just do that, rather than add the PHP code? I am also on Siteground and can disable the features in their admin area.
2. How do you recommend then getting notified about available theme/plugin updates?
Kind regards,
John
Hi John,
Sure if there is some other way to disable it, go for it. My main point would be to prevent client users from even seeing the option at all.
I’m not sure about notifications. There should be a plugin for that!