Child theme is a theme that:
- pulls everything from another theme (called parent)
- has it’s own styles and templates that override the parent ones
- is stored separately
Child theme is the only right way to modify your theme’s code*. It lets you keep the parent theme in tact, while you are redesigning a part of it in the separate folder.
As a result you are able to easily update the parent theme, if it’s needed, without repeating all your changes. Child themes save tons of development time!
child theme manually though requires some basic coding skills, so you would need to be able to add and modify .css and .php files.
Where to start?
If you have our recent theme “Eva” with a special Setup Guide (where you can create a child theme in one click), then you can skip to the next chapter. Here is the short instruction of how to create a child theme manually.
First of all you would need to create a new folder for the child theme. Using your FTP program (like FileZilla or CyberDuck) navigate to
wp-content/themes directory. Create a new folder named as parent theme’s name appended with ‘-child‘.
Inside that folder create style.css and functions.php files.
Now you just need to tell WordPress that this is a child theme for some parent theme. You would need to type the following code in styles.css file:
Theme Name: Your-Parent-Theme-Name Child
Description: Child theme for Your-Parent-Theme-Name theme
Author: Your Name
Theme Name and Template are mandatory lines, they are needed for WordPress to identify your new child theme properly.
Activate a new theme inside Appearance > Themes in WordPress admin panel as you would do with any other theme. (Don’t worry that there won’t be any screenshot displayed above it’s name, it’s ok)
Relax and start making the changes you wanted! All styles and templates of a parent can be overriden by it’s child theme.
It means that if you want to change something inside a template, you would need to copypaste a template.php from the parent theme inside your child theme and go for it. Pay attantion to the path though, it must be the same one, relative to a theme’s root folder:
You can add new styles inside style.css file below theme’s info. (All DigiPlum themes don’t have any styling inside their style.css, so you won’t override anything)
The only exception from this rule is functions.php file. It will be loaded before but not instead the parent theme’s function.php file. You are free to add your own code inside it, and it will work together with the parent’s.
Pay attention to the parent theme updates. If there were any new features and changes issued for the file, that you’d changed in your child theme, they won’t take place at all. Because your changes have the highest priority. So just keep an eye on that.
In every DigiPlum theme documentation there is a detailed section about child theme creation. There is also the great article about child themes on the official WordPress website.