Для чего нужны дочерние темы, как правильно создать дочернюю тему и работать с ней?


Ни для кого не секрет, что для сайтов на WordPress существует множество шаблонов оформления (так называемых «тем»). Они могут нести в себе не только оформление, но и расширение функционала. То, что темы хорошо поддерживаются и регулярно обновляются — обычное явление, при чем это касается как платных, так и бесплатных шаблонов.

Темы обновляются по многим причинам:

  • Исправляются различного рода ошибки. Это могут быть javascript-ошибки, доработки стилей для кроссбраузерности, а также доработки по функционалу;
  • Обновляются библиотеки js, css-фреймворки;
  • Добавляются новые возможности. Настройки, новые типы записей, новые таксономии и прочее.

Из всего вышеперечисленного вывод можно сделать довольно однозначный:

Обновлять темы нужно!

Однако, при обновлении темы все файлы внутри папки перезаписываются. Поэтому если вы вносили изменения в файлы темы, а потом решили обновиться — все ваши доработки пропадут.

Избежать этого как раз помогают дочерние темы!

Дочерние темы в WordPress позволяют вносить изменения в код темы без внесения изменений в файлы

Разберем подробнее!

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

Самая простая дочерняя тема содержит всего один файл

style.css

.

/*
Theme Name:     Twenty Ten Child
Theme URI:      https://remontka.com/
Description:    Пример дочерней темы на базе Twenty Ten 
Author:         @remontka
Author URI:     https://remontka.com/
Template:       twentyten
Version:        0.1.0
*/@import url("../twentyten/style.css");

Вы видите пример дочерней темы. В качестве родительской выступает тема Twenty Ten.

Особенности работы

Родительская тема указывается в параметре

Template

, и при этом там должно быть указано не название темы, а название папки, в которой эта тема лежит.

Файл стилей дочерней темы

style.css

полностью заменяет собой файл стилей родителя

Это значит, что для сохранения стилей родителя первым делом необходимо будет выполнить импорт файла

style.css

из родительской темы.

Файл с функционалом дочерней темы

functions.php

загружается перед аналогичным файлом родителя

Это связано с тем, чтобы:

  • не дублировать код;
  • оставить возможность добавлять функционал, и вносить изменения в существующий.

Именно поэтому правилом хорошего тона является оборачивать каждую функцию в оболочку:

if (!function_exists("function_name")) {
  function function_name() {
    //  Код.
  }
}

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

Остальные файлы оформления шаблона

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

Таким образом можно изменять темы до неузнаваемости, и при этом сохранить возможность получать обновления!


admin

Share
Published by
admin

Recent Posts

После включения диагностического запуска не удается войти в Windows — как исправить?

Некоторые пользователи, экспериментируя с конфигурацией системы в окне msconfig могут столкнуться с ситуацией, когда после…

1 неделя ago

WinScript — очистка и настройка Windows 11 и 10

На сайте не раз публиковались обзоры программ, предназначенных для очистки или настройки последних версий Windows.…

1 неделя ago

Предварительный просмотр накопительного обновления не устанавливается — решение

При установке некоторых обновлений Windows 11, имеющих в названии «Предварительный просмотр накопительного обновления», многие пользователи…

1 неделя ago

FixExec — восстановление ассоциаций .exe, .bat и .com файлов

Некоторые пользователи Windows 11, 10 и предыдущих версий системы могут столкнуться с ситуацией, когда исполняемые…

1 неделя ago

Ошибка 0x800705b4 при обновлении Windows 11 и 10 — как исправить?

При установке обновлений Windows 11/10 некоторые пользователи могут столкнуться с ошибкой с кодом 0x800705b4 и…

1 неделя ago

Обслуживание вашей версии Windows 11 окончено — что делать?

Пользователи Windows 11 могут столкнуться с сообщением «Обслуживание вашей версии Windows окончено» (Your version of…

1 неделя ago