Дочерняя тема WordPress

Дочерняя тема WordPress служит своего рода надстройкой, используемой для изменения и дополнения функционала родительской темы. Главное преимущество дочерней темы — возможность безопасного обновления родительской темы без риска при этом потерять ранее внесенные изменения. В этой статье я расскажу как создать простую дочернюю тему.

Создать дочернюю тему в WordPress очень просто. Самая простая дочерняя тема состоит всего из одного файла. Для этого в themes создайте каталог дочерней темы и положите в него файл style.css следующего содержания:

/*
Theme Name:     Дочерняя тема WordPress
Theme URI:      http://codebeer.ru/
Description:    Описание для дочерней темы
Author:         Code.Beer
Author URI:     http://codebeer.ru/
Template:       twentyfifteen
Version:        0.1.0
*/

Краткое описание каждой строки:

  • Theme Name — название дочерней темы.
  • Theme URI — адрес сайта дочерней темы.
  • Description — описание дочерней темы.
  • Author URI — адрес сайта автора дочерней темы.
  • Author — имя автора дочерней темы.
  • Template — название папки родительской темы.
  • Version — версия дочерней темы.

Файл стилей родительской темы полостью заменяет стили родительской темы. Если вы планируете использовать стили родительской темы, используя директиву @import, выполните импорт стилей родительской темы.

/*
Theme Name:     Дочерняя тема WordPress
Theme URI:      http://codebeer.ru/
Description:    Описание для дочерней темы
Author:         Code.Beer
Author URI:     http://codebeer.ru/
Template:       twentyfifteen
Version:        0.1.0
*/

/* Импорт стилей родительской темы */
@import url("../twentyfifteen/style.css");

/* Далее идут стили дочерней темы */
#site-title a {
    color: #009900;
}

Файлы шаблона дочерней темы

В дочерней теме мы можем добавить новый или заменить любой из имеющихся компонентов в родительском шаблоне, для этого просто создайте файл с таким же именем в каталоге дочерней темы.

В отличии от других компонентов темы, файл functions.php дочерней темы дополняет функции, описанные в родительской теме. Дочерняя тема может переопределить функцию PHP родительской темы, для этого просто объявите ее снова.

Если для использования функции require_once, вам нужно указать расположение файлов, которые находятся внутри папки дочерней темы, используйте get_stylesheet_directory():

require_once( get_stylesheet_directory(). '/my_included_file.php' );