---
title: Child theme
description: "When you need a child theme, how to install the ready-made Formafern Child, and what it can override."
url: "https://wpruby.com/knowledgebase/formafern-child-themes/"
updated: "2026-11-04"
category: WPRuby Themes / Formafern
---

# Child theme

Table of Contents

 [Toggle](#)

- [Do you need one?](#Do_you_need_one)
- [Install Formafern Child](#Install_Formafern_Child)
- [What’s inside](#Whats_inside)
- [What the child theme can change](#What_the_child_theme_can_change)

## Do you need one?

Usually not. Changes you make in the Site Editor (styles, templates, headers, footers) are saved in your site's database, so theme updates don't overwrite them.

A child theme is worth it when you want to keep custom CSS, templates, patterns or PHP in files, for example under version control or to reuse on several sites.

## Install Formafern Child

1. Download **`formafern-child.zip`** from your [WPRuby account](https://wpruby.com/my-account/), next to the Formafern download.
2. Keep Formafern installed: the child theme needs it.
3. Go to **Appearance → Themes → Add New Theme → Upload Theme**, upload `formafern-child.zip` and activate **Formafern Child**.

Your licence and updates stay with Formafern. Activate the licence on **Appearance → Formafern** as usual; Formafern keeps getting updates while the child theme is active, and updates never touch the child theme's files.

**Activate the child theme before you customize in the Site Editor.** Styles, templates and parts you change there are saved for the active theme, so changes made while Formafern itself was active don't carry over to the child theme.

## What’s inside

| File | What it does |
| --- | --- |
| `style.css` | Your CSS. It loads after Formafern's styles, on the site and in the editor |
| `functions.php` | Loads `style.css`. Add your own PHP here, with function names that start with `formafern_child_` |
| `theme.json` | Empty to start. Anything you add is merged with Formafern's: list only what you change |

## What the child theme can change

| To change | Add to the child theme |
| --- | --- |
| Colors, fonts, spacing | `theme.json` |
| A template | `templates/<name>.html`, with the same name as Formafern's (for example `single-product.html`) |
| A header or footer | `parts/<name>.html` |
| A pattern | `patterns/<name>.php`, with the same file name as Formafern's |
| Behavior | PHP in `functions.php`, using the [hooks and filters](https://wpruby.com/knowledgebase/formafern-hooks/) |

Files you add replace Formafern's files of the same name. To start from Formafern's version, copy the file from the theme and change the copy.

**Site Editor changes still win.** A template or part you've edited and saved in the Site Editor is stored in the database and is used instead of both themes' files. Reset it (**⋮ → Reset**) to use the file.
