Дочерняя Тема

Что такое: Дочерняя Тема

Дочерняя тема в WordPress – это подтема, которая наследует функциональность, структуру и стили родительской темы. Она позволяет безопасно вносить изменения, не затрагивая файлы исходной темы. Когда родительская тема обновляется, все ваши правки, сделанные в дочерней теме, продолжают работать, а обновление не стирает внесённые изменения. Поэтому работа через дочернюю тему считается надёжным способом кастомизации. Вы меняете не файлы родительской темы, а создаёте их переопределённые версии в дочерней.

Чтобы создать дочернюю тему, необходимо создать отдельную папку внутри каталога тем. Главный файл, без которого она не будет распознана, — это style.css. В его заголовке указывается родительская тема через параметр Template, который должен точно соответствовать имени папки родительской темы. После включения дочерней темы её стили подключаются поверх стилей родительской, поэтому вы можете переопределять любые правила CSS. Родительская тема при этом продолжает работать полностью, предоставляя функциональность, которую вы не изменяли в дочерней теме.

Пример правильного файла style.css дочерней темы

/*
 Theme Name:   My Child Theme
 Theme URI:    https://example.com/
 Description:  Child theme for the Twenty Twenty-Five theme
 Author:       Your Name
 Author URI:   https://example.com/
 Template:     twentytwentyfive
 Version:      1.0.0
 Text Domain:  my-child-theme
*/

/* Ваши пользовательские стили */

Важно:
Template: должен быть строго названием папки родительской темы. Например, если тема находится в /wp-content/themes/twentytwentyfive, то Template: twentytwentyfive.

Пример functions.php для правильного подключения стилей

Хотя дочерняя тема может работать и без собственного functions.php, на практике он нужен почти всегда — прежде всего для подключения стилей родительской темы.

<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_styles' );
function my_child_theme_styles() {
    // Подключаем стиль родительской темы
    wp_enqueue_style(
        'parent-style',
        get_template_directory_uri() . '/style.css'
    );

    // Подключаем стиль дочерней темы
    wp_enqueue_style(
        'child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( 'parent-style' )
    );
}

Структура файлов дочерней темы

Минимальная структура выглядит так:

my-child-theme/
│
├── style.css ← обязательный файл
├── functions.php ← подключение стилей и пользовательский код
└── screenshot.png ← (необязательно) миниатюра темы в админке
Вы можете добавлять в дочернюю тему любые файлы с такой же структурой, что и у родительской. Если файл существует и в родительской, и в дочерней теме — используется файл дочерней.

Пример переопределения шаблона:

my-child-theme/
└── header.php ← заменит header.php родительской темы

Поддержка theme.json в дочерних темах

Если родительская тема является блочной темой (FSE), она использует файл theme.json. В дочерней теме можно создавать свой theme.json — он:

  • не заменяет, а дополняет и переопределяет настройки родительской темы
  • позволяет менять цвета, типографику, настройки блоков, шаблоны и многое другое

Пример минимального theme.json в дочерней теме:

{
  "version": 2,
  "settings": {
    "color": {
      "palette": [
        {
          "name": "Брендовый цвет",
          "slug": "brand",
          "color": "#0066ff"
        }
      ]
    }
  }
}


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


0 ответы

Ответить

Хотите присоединиться к обсуждению?
Не стесняйтесь вносить свой вклад!

Добавить комментарий