Are you ready to learn how to update a WordPress theme without losing customization?
We often updated our themes when I was developing them for PremiumCoding.
While themes MUST be updated frequently to meet the new WordPress requirements and to fix bugs, that can also bring issues.
Some of our customers did a lot of extra customizations to their websites.
Either to adapt the design to their needs or to add extra functionality.
And you can lose some of the customizations when installing the theme’s new version if you don’t make the changes properly.
This post covers:
- How theme updates work in WordPress
- Why should you update your WordPress theme?
- Which customizations can you lose during theme updates?
- How to prepare for theme update in WordPress
- How to update your WordPress theme without losing customization
Can you avoid lost customizations?
And that’s why I created this tutorial.
How Theme Updates Work In WordPress
WordPress theme updates are very simple from the user’s standpoint.
Go to the Appearance > Themes tab and click on your theme.
If you are using a free WP theme from WordPress.org, there will be an update button if the theme has an update.
Click update, and WordPress will take care of the rest.
Premium WordPress themes from ThemeForest and other subscription models like aThemes, and Elegant Themes have a different approach.
Most premium WP themes today will let you know there is an update from the Appearance > Themes tab.
You can then choose to update the theme with one click.
Manually updating a WordPress theme
In RARE cases, you need to check yourself if there is an update. That is true for some ThemeForest themes.
You need to go to the theme’s description on ThemeForest and check for an update.
If the latter is true, go to your downloads section on your ThemeForest profile.
Download the latest theme version and head over to Appearance > Themes.
The steps to update the WordPress theme manually are:
- Activate a different theme (a default theme from WordPress.org will do).
- Delete the theme you want to update.
- Upload the version you just downloaded from Themeforest via the Add New button.
- Finally, activate the new version of the theme.
And don’t worry, you won’t lose any settings from the theme’s options. Your database stores them.
Note: You may also be interested in checking our best WordPress database plugin collection.
That’s not true for any customizations outside the theme’s options.
But that also applies if your theme comes with automatic updates.
CONFUSED? No need to be; let’s move forward.
Why Should You Update Your WordPress Theme?
There are several reasons why these updates are critical for your website.
In some cases, the update is even critical as themes with security issues can be vulnerable to attackers.
And you don’t want to wake up one morning with a blank page instead of your website.
So, ALWAYS update your WordPress theme as soon as possible.
Let’s go through the most important reasons why updates are so important.
1. Security reasons
The number one priority is security. More than 40% of all websites are made with WordPress.
Unfortunately, the popularity comes with a downside. Many hackers and malicious code distributors target WP frequently.
As the web and WordPress evolve, some functions can become deprecated and obsolete. Published bugs and limitations can become targets of hackers.
After all, WordPress (being open-source) allows anyone to access and study the source code, including hackers.
Ironically the problem lies in updating the WordPress core. Each time WordPress releases an update, they also release a changelog.
This document lists all the changes and bug fixes. Hackers can read these changes and they try to exploit them by finding a website with an outdated theme or plugin.
Now you can see why it’s so IMPORTANT to keep everything on your website up to date.
2. Compatibility issues
All plugins and themes have bugs – that’s life.
They can cause errors, incompatibility issues, and even crashes.
This is unavoidable, and you have to deal with it.
Back in my developer days, I remember that at some point, we were updating our themes weekly.
So, the problem is not in the bugs themselves but in HOW you deal with them.
To make sure your website keeps running smoothly, it’s essential to implement these fixes.
3. New features and improvements
WordPress themes and plugins are NEVER finished.
They evolve and adapt to new WordPress releases, design trends, and functionalities.
WordPress is never finished and is continuously improving. Every major release contains new features and performance improvements.
And the same goes for themes and plugins.
We regularly improved the theme’s design and added new functionalities and plugin support at PremiumCoding.
For instance, we added eCommerce support to our popular blog theme, Amory.
Getting the theme ready for the WooCommerce plugin was difficult because we wanted to seamlessly implement the web store with a design matching the overall theme style.
We released the eCommerce support in a free update to all our existing customers.
So read the theme’s changelog to know what’s being added and improved.
Which Customizations Can You Lose During Theme Updates?
Not all updates and customizations are in jeopardy when you update the theme.
Theme updates don’t affect your changes and customizations in the built-in WordPress theme customizer.
You can access the customizer via the Appearance > Customize page.
The same is valid for customizations (CSS and JS changes) within the theme’s options.
Both the built-in customizer and theme options store all the changes in the database, effectively making them completely separate from the theme’s files.
Usually, you can change colors, layouts, typography, general styling, custom CSS, etc.
Theme updates ALSO don’t affect WordPress widgets, menus, posts, pages, and all other content.
Now let’s move to the most important part of this tutorial.
What exactly is affected when you update your WordPress theme?
You will lose all your changes directly to the theme’s files.
If you added a custom function into the functions.php file, or maybe you added a plugin’s shortcode directly into the header.php file.
You will lose all those changes and additions because they aren’t integral to the theme.
Or if you made any styling changes directly within the theme’s stylesheet file (style.css).
This will be overwritten as well.
How To Prepare For Theme Update In WordPress
If you want to be VERY careful, do a full backup before updating WordPress core or a theme.
There are several great free WordPress backup plugins you can use.
It only takes a few minutes of your time.
My advice: You should make at least weekly backups if you run an important business.
Your hosting provider can also take care of backups, but it comes with a price.
Note: Backups will not fix your website if you lose the customizations after the update.
They will RESTORE your website to the time before the update.
Your website will be back up and running, but you will still have to update the theme.
At least you don’t lose everything!
How To Update Your WordPress Theme Without Losing Customization
If the backup is not the solution, what is?
How can you update the theme without losing the customizations you worked so hard on?
By using a child theme.
You may also be interested in reading our guide explaining a WordPress child theme.
When you modify the child theme, it is kept SEPARATE from the parent theme’s files.
Meaning, when you update the parent theme, the customizations made in the child theme are left intact.
Create a child theme
Most premium WordPress themes will provide a blank child theme to help you start.
Some of them are even developed as child themes, with a framework as the parent.
Creating a child theme requires work with the code. You need a BASIC understanding of HTML, CSS, and PHP to make changes.
It’s not a beginner-friendly procedure so if you want to make it yourself, I suggest you read this detailed tutorial.
To sum up, the main reasons to use a child theme are:
- Modify the theme beyond the limitations of the WordPress customizer
- Save on development time
- Update the parent theme without losing any modifications
- To learn WordPress development through experimentation
Create a WordPress child theme with a plugin
A MORE user-friendly solution for creating a child theme is by using a WordPress plugin.
I recommend using the Child Theme Configurator plugin.
It’s a great plugin that will help you create a child theme and tailor it to your needs beyond the limitations of the built-in customizer.
The plugin identifies the CSS attributes from the parent theme and overrides them with your styling.
This will save you a lot of time; otherwise, you must do it yourself.
Download theme folders to your computer
Before you create a child theme (manually or with a plugin), download the theme files to your computer.
This will EFFECTIVELY make a backup of your current theme.
You can also use these files to restore everything back to its original state in case something goes wrong.
Follow these steps to download the theme to your computer:
- Install a FTP client like Filezilla.
- Connect to your host through the FTP client. You need your FTP username and password for that. (Contact your hosting if you don’t have login credentials.)
- Navigate to
/wp-content/themes/folder once connected to your website through the FTP client.
- Find the theme you want to copy on the right side of the screen (where you see the list of all themes).
- Right-click on the theme and click the download button.
- That’s it! (The theme will now be transferred to your computer.)
This is how you create a backup of your theme.
I recommend you make another copy on your computer and make all the customizations there.
This way, you will still have the original theme in a default state – just in case!
Now you need to download the LATEST version of your theme.
Visit the website where you purchased the theme and download the latest version.
Locate the theme’s zip file and extract it to a folder. If you have done everything described above, your computer will have three theme folders.
This folder will be the backup of your theme and customizations. We’ll later copy your customizations into the child theme folder from this folder.
Copy customizations to the child theme
There is no need to copy all the theme files, as you only changed a few. If you forgot which ones you changed, there is an easy way to identify them.
Compare the files from your old and your customized theme.
You can either check it manually by comparing the dates the file was last changed, or you can use a tool like Notepad++ or WinMerge. Linux users can use Meld.
I will not go into details about how to compare two or more files as there are several good tutorials out there, like the one from MakeUseOf.
You can copy all the files you changed, apart from functions.php and style.css.
These files are already in your child theme and you shouldn’t just overwrite them.
Any changes to functions.php and style.css must be copied and pasted at the end of the child theme’s files.
This allows you to add or edit the current files WITHOUT completely overwriting them.
Upload the updated theme and child theme folders
After you complete all the changes to the child theme, it’s ready to upload it to your website.
Connect to your host through the FTP client with your username and password.
/wp-content/themes/ folder once connected to your website through the FTP client.
Select both the updated and child theme folders and upload them to the website.
You will receive a warning that all the files already exist on the server. Check the overwrite option so new ones replace your old theme files.
Import your theme customizer settings
Remember that the theme’s files don’t store any changes and edits you make with the default WordPress customizer.
That effectively means they ARE NOT automatically added to your child theme.
So you need to add them manually yourself.
To save some time, don’t copy-paste them; instead, you can use the Customizer Export/Import plugin.
Check our tutorial on how to install a WordPress plugin if you are unsure how to do it.
Export the customizer’s setting by going to Themes > Customize page.
Please ensure that the parent theme is active (not the child theme).
Click on the Export/Import tab and then click on the Export button. All the settings will be exported to your computer in a file with .dat extension.
Now it’s time to activate your child theme.
Navigate to Themes > Customize again, but this time you will import the settings.
Click the Choose File button and select the file you just exported in the step above.
Make sure you also tick the Download and import image files option.
Import all the settings with one click!
Before you save the changes, make sure you preview them in the last step.
If you are happy with the changes, click the Save & Publish button to publish them.
All your customizations are now a part of your child’s theme.
And the good news is that you can now update your parent theme without any worry that you might break your website.
Updating WordPress themes is an EASY task if you didn’t do any extra customizations to the website.
In this case, you have to click update, and that’s it.
Everything gets a bit more complicated if you make several modifications to your styling and functionality.
You don’t want to lose that each time you update the theme!
That’s why I prepared this tutorial – to guide you through the procedure and ensure your updated theme has all the extra customizations.