How to make a WordPress child theme in 2 minutes

In the following article we will show you how to create a WordPress child theme manually, basically in a couple of minutes.

Why do you need a WordPress child-theme?

When WordPress automatically updates itself on your server (or you update your themes via the WordPress admin interface manually) it will download the new files and simply overwrite the old ones. No back up. That’s right. All your changes, your tweaks that you have made will be gone after the new update.

And that’s when a child theme comes in. If you create a child theme folder on the server and copy a few files in there, WordPress will check this folder before the update and only overwrite the files in the parent theme, not in this child theme.

Let’s see how to create a child theme without any plugin.

Yes, you could probably find a plugin for this. But why slowing down your server’s speed even more, when you already running a bunch of plugins? The less plugin you use the better.
So let’s do this manually. Not so difficult as it sounds. Create a folder in your Theme folder and call it whatever you want (I call mine ‘Twentytwentyone-child’ the parent theme being ‘Twentytwentyone’). But it really does not matter, you can call it anything you want becouse after that you just need to activate this theme. So it can be named anything.

After you created the child theme folder you can put any files there that you have modified in WordPress and these will never be overwritten by an upcoming update. These files can be php, css, javascript and even images.

In order for the WordPress child theme to work you need to put only two essential files there: a stylesheet and a php page. Let’s see what is in those 2 files.

The stylesheet (style.css) content:

Theme Name: Twenty Twenty One Child Theme
Description: A child theme of the Twenty Twenty One default WordPress theme
Author: Your name
Template: twentytwentyone Version: 1.0.0

The php page (function.php) must contain the following content:

// enqueue parent styles
function ns_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
add_action( 'wp_enqueue_scripts', 'ns_enqueue_styles' );

Activate your child theme.

The last step is to activate your new child theme that you just created. You probably know how to do that. Go to WordPress admin and from the ‘Appearance/Themes’ menu activate the child theme.

Test your WordPress child theme.

You can make a quick test to see if the theme works. For example copy the footer.php from the parent theme to your newly created child theme. With a text editor make some changes in it. For instance remove the ‘Made by Worpress’ text.
Save it and check your website. The text must be gone from the footer and when a new WordPress update comes around – it will stay that way.

Alternatively you can put an image in the child theme folder, called ‘screenshot.png’ to show that as a thumbnail for your theme in the Theme menu. It is not nessessary but looks better if your new theme has a thumbnail.