Child Theme Basics
How to create a Blaskan child theme to make safe, updatable customizations to the WordPress theme without editing core files.

When you want to change how Blaskan looks or behaves, editing the theme files directly is tempting but creates a problem: the next time Blaskan updates, your changes are overwritten. A child theme solves this. It is a separate theme folder that inherits everything from Blaskan (the parent theme) and lets you override only what you need to change. Updates to Blaskan do not touch the child theme folder.
This page covers the minimum structure required to create a Blaskan child theme and the most common customizations.
What a Child Theme Consists Of
A child theme only needs two files to work:
style.csswith the required header commentfunctions.phpto enqueue the parent theme's styles
Everything else is optional. You add template files only when you need to override a specific template.
Creating the Child Theme Directory
In your WordPress installation, navigate to wp-content/themes/. Create a new folder. The convention is to name it after the parent theme with -child appended. For Blaskan, a reasonable name is blaskan-child.
The style.css Header
Inside blaskan-child/style.css, the file must open with a specific comment block. WordPress reads this comment to identify the theme. The key line is Template: which tells WordPress which parent theme to use.
/*
Theme Name: Blaskan Child
Theme URI: https://yoursite.com
Description: A child theme for Blaskan
Author: Your Name
Author URI: https://yoursite.com
Template: blaskan
Version: 1.0.0
Text Domain: blaskan-child
*/
The Template: value must match the folder name of the parent theme exactly (lowercase, as it appears in wp-content/themes/). If Blaskan is installed in a folder named blaskan, then Template: blaskan is correct.
After the header comment, you can add any CSS you want to override or extend. This CSS loads after the parent theme's CSS, so your rules take precedence.
The functions.php File
The child theme's functions.php is responsible for properly loading the parent theme's stylesheet. Create blaskan-child/functions.php with:
<?php
add_action( 'wp_enqueue_scripts', 'blaskan_child_enqueue_styles' );
function blaskan_child_enqueue_styles() {
wp_enqueue_style(
'blaskan-parent-style',
get_template_directory_uri() . '/style.css'
);
}
get_template_directory_uri() always returns the parent theme URL regardless of which theme is active. This is important: do not use get_stylesheet_directory_uri() here, which would return the child theme URL and cause the parent styles to not load.
If you also want to load the child theme's style.css (to apply the overrides you added there), add a second wp_enqueue_style call with the child theme's stylesheet URL and declare it as dependent on the parent style:
wp_enqueue_style(
'blaskan-child-style',
get_stylesheet_directory_uri() . '/style.css',
array( 'blaskan-parent-style' ),
wp_get_theme()->get( 'Version' )
);
The array( 'blaskan-parent-style' ) parameter tells WordPress to load the parent style before the child style, which ensures your overrides apply correctly.
Activating the Child Theme
Go to Appearance > Themes in the WordPress admin. The child theme appears as a separate theme. Click Activate. Your site now runs on the child theme. Blaskan (the parent) remains installed and provides all templates, scripts, and styles that the child theme does not explicitly override.
Overriding Templates
To change how a specific part of the site renders, copy the relevant template file from the Blaskan folder into the child theme folder, maintaining the same directory structure, and edit the copy.
For example, to modify the single post template: copy blaskan/single.php to blaskan-child/single.php, then edit the child theme copy. WordPress's template hierarchy checks the child theme folder first, so your modified version is used instead of the parent's.
Templates you have not copied continue to be served from the parent theme. You only override what you need.
Naming and Organization Conventions
- Keep the child theme folder name lowercase with no spaces
- Match the
Template:value to the exact folder name of the parent theme - Use the child theme's
Text Domainconsistently if you add any translatable strings - Document any non-obvious overrides in comments within the relevant file
For questions about what can be customized at the theme settings level (without needing a child theme), see the customization overview and header, logo, and menu behavior. For support with a specific implementation, see the support page.