Child-темы или дочерние темы — это замечательный инструмент для настройки внешнего вида вашего сайта. Он позволяет глубоко изменять и настраивать тему, при этом делать это безопасно для кода вашей основной темы. Таким образом вы можете без проблем продолжать обновлять главную тему и ваши изменения никуда не денуться.
Создаем child-тему для своего сайта
Я пользуюсь сразу Файл Менеджером хостинга, по-моему так намного быстрее и удобнее. Находим внутри public_html наш сайт и в нём папку wp-content/themes, здесь хранятся темы нашего сайта. Дальше нам нужно создать папку с названием существующей материнской темы и дописать -child в её имени без пробелов.
Итак, показываю на примере этого сайта и его темы minimer, для которой я собственно и создавал дочернюю тему. В итоге в папке тем у меня появилась папка wp-content/themes/minimer-child.
Далее создаем внутри нее файл style.css. Его необходимо заполнить таким контентом:
/*
Theme Name: Minimer Child
Theme URL: http://ktoit.com
Description: Minimer Child Theme
Author: Alex Gulak
Author URL: http://ktoit.com
Template: minimer
Version: 1.0.0
Text Domain: minimer-child
*/ Custom CSS goes after this line
В этом коде измените данные под себя, главное, чтобы поля Template (как называется папка материнской темы) и Text Domain (название папки дочерней темы) соответствовали вашим значениям.
Далее создаем в нашей child-теме пустой файл functions.php.
После этого идем в панель управления нашего WordPress-сайта, а конкретно в Внешний вид — Темы и активируем нашу новую Child-тему.
Сразу после этого наш сайт будет выглядеть очень криво, но очень недолго. Заходим Внешний вид — Редактор тем. В появившемся списке справа выбираем Функции темы (functions.php) и в поле слева от него вставляем:
<?php
add_action( 'wp_enqueue_scripts', 'enqueue_parent_styles' );
function enqueue_parent_styles() {
wp_enqueue_style( 'parent-style', get_template_directory_uri().'/style.css' );
}
?>
После этого сайт начнет отображаться как следует.
Кастомизируем child-тему нашего WordPress сайта
Далее нам просто нужно взять любой интересующий нас файл из материнской темы и скопировать его в нашу child-тему. При этом важно соблюдать порядок пути файла, если он находится внутри ряда папок на материнской теме, такой же порядок папок должен быть и в дочерней.
Например, мне надо было отредактировать внешний вид темы через файл single.php. Я скопировал этот файл в папку child-темы, отредактировал его и всё, теперь тема показывает именно версию single.php из моей child-темы.