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