Создание дочерней темы WordPress

Иногда, когда Вы обновляете тему в Вордпрессе, ранее сделанные настройки после обновления слетают (не сохраняются). Так происходит в случае, если Вы ранее делали какие-то изменения не с использованием стандартных инструментов Вордпресс, а внося их прямо в код (в файлы). Хорошо, если Вы понимали, что ранее делали и можете исправить. Но бывает и так, что эти правки Вы внесли не понимая, просто скопировав их на каком-нибудь форуме. Цель этой статьи – показать как можно вносить изменения в WordPress, которые позволят не терять свои правки после обновлений.

Это можно сделать с помощью дочерней темы. Она позволяет менять существующий функционал родительской темы и добавлять новый без утраты изменений во время загрузки обновлений.

Рассмотрим пример создания дочерней темы для родительской Twenty Ten:

1. Создайте новую папку в директории www/wp-content/themes/.
2. Назовите её, например, my_child_theme_twentyten.
3. Скопируйте себе на рабочий стол из директории www/wp-content/themes/twentyten файл style.css.
4. Откройте его в текстовом редакторе, например, блокнот или notepad++ или подобном.
5. Удалите из него весь контент.
6. Вставьте в него следующее содержание:

/**
 * Theme Name: My Child Theme Twentyten
 * Template: twentyten
 */

@import url('../twentyten/style.css');

В этом файле:

  • Theme Name: My Child Theme Twentyten – это название дочерней темы.
  • Template: twentyten – это папка с родительской темой Twentyten.
  • @import url(‘../twentyten/style.css’); – это команда, позволяющая импортировать стили родительской темы в дочернюю.

Строка с командой импорта стилей является обязательной, т.к. после активации Вашей дочерней темы все стили будут браться только из неё.

7. Сохраните файл и положите его в папку дочерней темы www/wp-content/themes/my_child_theme_twentyten .
8. Активируйте тему My Child Theme Twentyten.

Чтобы активировать новую тему:

  • Зайдите в админку WordPress.
  • В панели инструментов выберите: Внешний вид – Темы.
  • Найдите среди тем тему My Child Theme Twentyten.
  • И нажмите кнопку «Активировать».

Теперь все изменения, которые Вы планируете вносить в коды функционала или в коды стилей сайта необходимо делать только в этой теме (в папке созданной для неё). Например, чтобы добавить какие-то собственные функции php, работающие с сайтом, нужно добавить в папку дочерней темы свой файл function.php и написать код Ваших функций в нём. В отличие от style.css файл function.php не отменяет действие родительского, а только дополняет его, поэтому импортировать контент родительского файла не требуется.

Приятной работы!