WordPress child themes used to be non-negotiable. Touch the parent theme’s files without one, and the next update wipes your work clean. But in 2026, with Full-Site Editing (FSE) reshaping how WordPress themes work, a lot of developers are asking: do you still actually need a child theme?
The honest answer: it depends on what you’re building. After 10+ years building WordPress sites and 950+ client projects on Fiverr, I’ve seen both mistakes — people skipping child themes when they needed one, and people spending an hour setting up a child theme for a project that didn’t require it. Let me give you a clear answer.
What a WordPress Child Theme Actually Does
A child theme inherits everything from its parent theme (layout, styles, functionality) but stores your custom code in separate files. When the parent theme updates, those files aren’t touched. Your changes survive.
Without a child theme, editing the parent theme’s style.css or functions.php directly means a theme update will overwrite everything. Every single change, gone. I’ve seen this happen to clients who hired cheaper developers before coming to me. It’s a painful lesson.
When You Still Need a WordPress Child Theme
If you’re using a classic PHP-based theme (like a premium theme from ThemeForest, or a classic theme like GeneratePress with classic mode, Astra classic, or any non-FSE theme), and you want to:
- Add custom CSS that overrides the parent theme’s styles
- Modify PHP template files (header.php, footer.php, single.php, etc.)
- Add custom functions via functions.php
- Hook into theme actions and filters
You need a child theme. Full stop. There’s no workaround here. The Additional CSS box in the Customizer works for simple tweaks, but for anything structural, you want a proper child theme so updates don’t burn your work down.
This also applies to WooCommerce sites. If you’re customizing WooCommerce templates (overriding product loops, cart templates, checkout pages), those template files must live in your child theme’s woocommerce/ folder. Otherwise, theme updates break your store.
When You Don’t Need a Child Theme in 2026
Here’s where it gets interesting. Full-Site Editing changed the game. Block themes (themes built for FSE, like Twenty Twenty-Four, Kadence blocks theme, or Blocksy in FSE mode) work completely differently from classic themes.
With block themes, your customizations live in the site editor, not theme files. Your patterns, templates, and global styles are saved to the database. A theme update doesn’t wipe your work because your edits were never in the theme files to begin with.
You also don’t need a child theme if:
- You’re using a page builder like Elementor or Bricks for all design work and only making minor Customizer tweaks
- Your “customization” is limited to logo, fonts, and colors in the Customizer (those are saved to the database, not theme files)
- You’re building a temporary staging or test environment
- You’re using a theme that includes a pre-built child theme option (some premium themes provide this)
The key question to ask yourself: Are my customizations stored in theme files, or in the database? If it’s the database, you’re safe without a child theme. If it’s theme files, you need one.
How to Create a WordPress Child Theme in 5 Minutes
If you’ve determined you need a child theme, here are three ways to create one, fastest to most manual:
Method 1: Use a Plugin (Fastest, No Code)
Install the free Child Theme Configurator plugin. It scans your parent theme and creates a proper child theme in about 60 seconds. Works reliably. Zero coding required. This is what I recommend for clients who want to manage their own customizations. It’s also on my list of useful WordPress plugins for specific use cases.
Method 2: Manual Creation (5 Minutes)
If you have FTP or file manager access, this takes about 5 minutes:
- Go to
wp-content/themes/and create a new folder, e.g.my-theme-child - Inside that folder, create a
style.cssfile with this header:
/*
Theme Name: My Theme Child
Template: my-theme-parent-folder-name
*/- Create a
functions.phpfile with this to enqueue parent styles:
<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_enqueue_styles' );
function my_child_theme_enqueue_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}Then go to Appearance → Themes, activate your child theme, and you’re done. The Template: line must exactly match the parent theme’s folder name, or it won’t work.
Method 3: Use Your Theme’s Built-In Option
Some premium themes (like GeneratePress Premium and Astra Pro) let you create a child theme directly from their settings panel. Check your theme’s documentation first — this saves you from the manual process entirely.
My Actual Recommendation
For classic theme builds: always use a child theme. Always. There is no scenario where editing a parent theme directly is the right long-term call. The five minutes it takes to set up a child theme will save you hours of pain later.
For FSE block theme builds: you don’t need one unless you’re customizing block theme PHP template files, which most people aren’t. Work in the site editor, save to the database, and update the theme freely.
For Elementor or Bricks builds on top of a lightweight theme like GeneratePress or Astra: you typically don’t need a child theme either, as long as you’re not touching theme files directly. Your page builder handles the design layer, and the Customizer handles the basics.
When in doubt, use a child theme. The cost is five minutes. The cost of not having one when you needed it is losing everything. That’s not a bet worth taking on a client site.
Frequently Asked Questions
No, not in any meaningful way. A child theme adds one extra CSS file and one functions.php call — the performance impact is negligible. A bloated plugin or unoptimized images will slow your site far more than a child theme ever will.
Yes, and it’s fine. Elementor saves designs to the database, so a child theme doesn’t interfere with it. If you’re purely using Elementor for layout and not touching theme PHP or CSS files directly, you may not need a child theme. But if your underlying theme is a classic PHP theme and you want to add any custom code, set up the child theme first.
Generally no. With FSE block themes, your template and style customizations are saved to the database via the site editor. A theme update won’t overwrite them. You only need a child theme for an FSE theme if you’re modifying actual theme files — which most users never do.
Usually this means the Template field in style.css doesn’t match the parent theme’s exact folder name. Check it carefully — it’s case-sensitive. If your site is completely inaccessible, log into your hosting file manager or FTP, rename the child theme folder, and WordPress will fall back to the parent theme automatically.
Yes, if you’re customizing WooCommerce templates. WooCommerce looks for template overrides in your active theme’s woocommerce/ folder. If that’s the parent theme, an update wipes your templates. Always use a child theme on WooCommerce sites where you’re customizing checkout, cart, or product templates.

Leave a Reply