WPRuby Logo WPRuby
Log in Get started
  • Plugins
  • Themes
  • Docs
  • Blog
    • eCommerce
    • Plugins
    • How to
    • Coding
  • Affiliate Area
  • Contact Us
  • About Us
  • Plugins
  • Themes
  • Docs
  • Blog
    • eCommerce
    • Plugins
    • How to
    • Coding
  • Affiliate Area
  • Contact Us
  • About Us

WPRuby Account

4
  • How to upgrade your license
  • How to renew your license
  • How to change your plugin’s license domain
  • How to cancel your subscription.

WooCommerce Australia Post Shipping Method Pro

14
  • Installation
  • How to activate your Australia Post Pro license
  • How to Upgrade from Free to Pro
  • Australia Post Zone Settings
  • Australia Post Global Settings
  • Australia Post Tracking
  • Pre-Paid Satchels
  • How to Mark a Product to be Shipped Individually?
  • TroubleShooting and Common issues
  • Available WordPress Actions and Filters
  • [Labels Pro] How to connect the plugin with your MyPost Business account
  • [Labels Pro] How to connect Labels Pro with your eParcel account
  • [Labels Pro] How to print labels and create shipping orders.
  • [Labels Pro] How to Mark a Product as Containing Hazardous Materials?

WooCommerce Custom Payment Gateway Pro

11
  • Getting Started
  • Custom Payment Gateway Settings
  • Custom Checkout Field Builder
  • Conditional Display Rules
  • Sending Payment Data to an External API
  • How to Create a Pay by Invoice Payment Method
  • How to Create a Manual Payment Link or Review-Based Payment Method
  • Troubleshooting
  • Frequently Asked Questions
  • Security and Sensitive Payment Data
  • How to Upgrade from Free to Pro

WooCommerce Royal Mail Shipping Calculator Pro

4
  • Installation
  • Settings
  • TroubleShooting and Common issues
  • How to activate your plugin license

Controlled Admin Access Pro

3
  • Available Actions for a Restricted Admin
  • Installation
  • Settings

WooCommerce Address Guard Pro

7
  • Get Started
  • Configuring Address Providers
  • Configuring Checkout Validation
  • Creating Address Rules
  • Customizing Customer Messages
  • Using the Address Tester
  • Reviewing Address Quality Inside WooCommerce Orders

WooCommerce Simple Table Rates Pro

8
  • Installation
  • Settings
  • Rules and Actions
  • How to Setup Weight Based Shipping
  • How To Setup Shipping By Shipping Class
  • How to Setup Shipping by Cart Total
  • How to Setup Shipping by Product
  • How to Setup Shipping by Product Category

WooCommerce Pack IQ

5
  • Installation
  • How to activate your plugin license
  • How to add a new box
  • How to change the boxes weight and dimensions units
  • How to view the packing results

WooCommerce Restricted Shipping and Payment Pro

4
  • Installation
  • Setting Up Shipping Methods Conditions
  • Available Shipping & Payment Rules
  • Setting Up Payment Gateways Conditions

Affiliate Butler PRO

9
  • Installation and Upgrade
  • Quick Start Guide
  • Settings
  • Keywords Management
  • Installation
  • Frequently Asked Questions
  • Files Structure
  • Links Types
  • Statistics

WooCommerce Adyen Payment Gateway

2
  • Setup the Adyen payment gateway
  • How to configure Adyen Webhook notifications? 

WooCommerce Free Shipping Per Product

2
  • Installation
  • How to setup free shipping for a certain product

WooCommerce UPS Shipping Method Pro

4
  • Installation
  • UPS Zone Settings
  • UPS Global Settings
  • How to get the UPS Access Key?

Delivery Promise for WooCommerce

9
  • Getting Started
  • Understanding Processing Time vs Transit Time
  • Setting the Cutoff Countdown
  • Configuring Default Delivery Estimates
  • Creating Delivery Rules
  • Setting Working Days and Holidays
  • Using Rule Presets
  • Product-Level Lead Times
  • Why the “Order Within” Countdown Is Not Showing

Cartavera

16
  • Cartavera documentation
  • Install Cartavera
  • Activate your licence
  • Import a starter site
  • Styles, colours and fonts
  • Headers and footers
  • The homepage
  • Catalog and filters
  • The product page
  • Cart and checkout
  • Translation and right-to-left languages
  • Child themes
  • Hooks and filters reference
  • Troubleshooting
  • FAQ
  • Changelog

Candy Shop

14
  • Candy Shop documentation
  • Install Candy Shop
  • Activate your licence
  • Import a starter site
  • Set up your products
  • Food information and allergens
  • Shop pages and filters
  • Styles, colors and fonts
  • Headers, footers and menus
  • The homepage
  • Child theme
  • Hooks and filters
  • FAQ
  • Changelog

Foliowick

16
  • Foliowick documentation
  • Install Foliowick
  • Activate your licence
  • Import a demo store
  • Authors and author pages
  • Book details and editions
  • Genres, reading lists and the Editor’s Pick
  • Secondhand copies and forthcoming books
  • Shop pages, search and book pages
  • Styles, colors and fonts
  • Headers, footers and menus
  • The homepage
  • The journal and editorial pages
  • Hooks and filters
  • FAQ
  • Changelog

Gemelune

14
  • Gemelune documentation
  • Install Gemelune
  • Activate your licence
  • Import a starter site
  • Metals, sizes and swatches
  • Size guide, delivery and care pages
  • Shop pages, product cards and product pages
  • Styles, colors and fonts
  • Headers, footers and menus
  • The homepage
  • Child theme
  • Hooks and filters
  • FAQ
  • Changelog

Formafern

15
  • Formafern documentation
  • Install Formafern
  • Activate your licence
  • Import the demo store
  • Finishes and swatches
  • Dimensions, materials and care
  • Rooms and Shop the Room
  • Shop pages, product cards and product pages
  • Styles, colors and fonts
  • Headers, footers and menus
  • The homepage and editorial pages
  • Child theme
  • Hooks and filters
  • FAQ
  • Changelog

Pawtani

15
  • Pawtani documentation
  • Install Pawtani
  • Activate your licence
  • Install a starter site
  • Pets, sizes, flavours and product facts
  • Size & fit guides
  • Shop pages, filters and product pages
  • Repeat purchases, subscriptions and wishlists
  • Styles, colors and fonts
  • Headers, footers and menus
  • The homepage
  • Child theme
  • Hooks and filters
  • FAQ
  • Changelog
View Categories
  • Home
  • Knowledge Base
  • WPRuby Themes
  • Cartavera
  • Child themes

Child themes

Waseem
Updated on November 4, 2026

2 min read

0:00 / 3:37
  • View as Markdown Open this page as plain Markdown (opens in a new tab)
  • Open in ChatGPT Ask questions about this page (opens in a new tab)
  • Open in Claude Ask questions about this page (opens in a new tab)
  • Open in Google AI Studio Ask questions about this page (Google account required) (opens in a new tab)

Table of Contents

Toggle
  • Do you need one?
  • Get the ready-made child theme
  • Create a child theme by hand
  • What the child theme can change
  • Things to know

Do you need one?

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

A child theme is worth it when you want to:

  • keep custom CSS, templates or patterns in files, under version control
  • add PHP: filters from the hooks reference, your own patterns or block styles
  • ship the same customizations to several sites

For PHP alone, a small plugin works just as well and doesn’t depend on the theme.

Get the ready-made child theme

Download cartavera-child.zip from your wpruby.com account, next to the Cartavera download. Keep Cartavera installed, then upload the child theme under Appearance → Themes → Add New → Upload Theme and activate Cartavera Child.

It contains exactly the files described below: style.css, a functions.php that loads it after Cartavera’s styles, an empty theme.json, and a screenshot. Start adding your changes from there.

Create a child theme by hand

If you’d rather build it yourself:

  1. Make a folder wp-content/themes/cartavera-child.
  2. Add style.css:
/*
Theme Name: Cartavera Child
Template: cartavera
Version: 1.0.0
Text Domain: cartavera-child
*/

Template must match the folder name of the parent theme, cartavera.

  1. Add functions.php:
<?php
defined( 'ABSPATH' ) || exit;

// Cartavera loads its own styles; load the child's stylesheet after them.
add_action( 'wp_enqueue_scripts', function () {
	wp_enqueue_style(
		'cartavera-child',
		get_stylesheet_uri(),
		array( 'cartavera-theme' ),
		wp_get_theme()->get( 'Version' )
	);
} );
  1. Add theme.json (it can start almost empty):
{
	"$schema": "https://schemas.wp.org/wp/6.7/theme.json",
	"version": 3
}
  1. Zip the folder (or upload it by FTP) and activate Cartavera Child under Appearance → Themes. Keep Cartavera installed: the child theme needs it.

What the child theme can change

To change Add to the child theme How it works
Colours, fonts, spacing, layout theme.json Merged with Cartavera’s: list only what you change
A template templates/<name>.html (same name as Cartavera’s, for example single-product.html) Replaces Cartavera’s copy
The header or footer parts/header.html, parts/footer.html Replaces Cartavera’s copy
New patterns patterns/<name>.php with a pattern header Registered automatically, next to Cartavera’s
CSS style.css (with the functions.php above) Loaded after Cartavera’s styles
Behaviour functions.php Runs before Cartavera’s functions.php

For example, to make buttons rounder and the accent colour a deep green, the child’s theme.json only needs:

{
	"$schema": "https://schemas.wp.org/wp/6.7/theme.json",
	"version": 3,
	"settings": {
		"color": {
			"palette": [
				{ "slug": "accent", "color": "#1f7a4d", "name": "Accent" }
			]
		}
	}
}

Be careful with the palette: a palette in the child replaces the parent’s whole palette, so copy all of Cartavera’s colours from its theme.json and change the ones you need. Check contrast for any colour you change; see Styles.

Things to know

  • Copy, then change. To override a template, copy it from Cartavera’s templates/ folder and change the copy. Cartavera’s templates hold no text of their own: they reference patterns (“). Keep those references and your template stays translatable; see Translation.
  • 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 the parent’s and the child’s file. Reset it (⋮ → Reset) to use the file.
  • Updates and the licence stay with Cartavera. Activate your licence under Appearance → Cartavera as usual. Cartavera itself keeps getting updates while the child theme is active, and your child theme’s files are never touched by them.
  • Style variations: Cartavera’s style variations are still offered with a child theme active. A child theme can add its own in a styles/ folder.
  • Use your own prefix for functions and pattern slugs (for example cartavera-child/…), so they never clash with Cartavera’s.
Translation and right-to-left languagesHooks and filters reference
WPRuby Logo WPRuby

In 2015, WPRuby was established as an independent agency where we focus on producing and supporting many WordPress plugins. Each product we develop is simple to use and easy to customize and backed by awesome support and regular updates.

Resources

  • Knowledge Base
  • Affiliate Area
  • About Us
  • Nomad Jar
  • GarnerDocs
  • UnavailableToday

Legal

  • Privacy Policy
  • Terms of Use

Follow us

  • Github
  • X.com
  • LinkedIn
  • Facebook

© 2026 - WPRuby