Что такое дочерняя тема WordPress

что такое дочерняя тема wordpressПривет!

Дочерняя тема — это не так давно появившаяся фишка WordPress.

По идее, она типа как бы копия родительской темы. Но по факту, в файловом смысле она выглядит, как «обсос».

Нет ряда папок, нет некоторых файлов в корне.

Для чего она нужна?

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

И вот тут начинается неприятное.
Вы-то за год, предположим, кучу всяких дел наворотили с темой. Обычно изменения касаются файлов style.css, header.php, footer.php, single.php, functions.php
А при обновлении все они автоматом замещаются новыми редакциями этих файлов. Смотрите вы на результат и плакать хочется. Нужно всё вспоминать и по новой переделывать.

Так вот, дочерняя тема (если она прилагалась изначально к родительской) в этом случае = спасение.
Сейчас я кратко и по порядку расскажу, как устанавливать и как работать с дочерней темой. Какие у неё возможности и ограничения.

Установка темы с дочерней темой

Вначале из дистрибутива, полученного от поставщика темы, ставите родительскую тему.

Всё как обычно: Внешний вид > Темы > «Добавить новую» > «Загрузить тему» > "Выбрать файл".
Выбераете zip архив родительской темы  на компьютере, загружаете, жмете «Установить».
И вот тут ВАЖНО — активировать её НЕЛЬЗЯ!

Далее возвращаетесь на страницу тем и также устанавливаете дочернюю тему. С той лишь разницей, что в конце ее АКТИВИРУЕТЕ!

В итоге у вас будет две темы — родительская тема установлена и НЕ активирована, дочерняя тема установлена и активирована.

Что если нужно внести изменения в тему

СмОтрите, есть ли в корне дочерней темы нужный файл. Обычно это style.css, header.php, footer.php, single.php, functions.php

И обычно изначально в корне дочки имеется только style.css

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

ВнОсите изменения и всё работает.

А когда появится обновление темы, и вы загрузите её на сайт, то ничего не потеряете, все ваши изменения-дополнения будут на месте.

Ограничения дочерней темы

Проблема 1

Лично у меня не «прошел номер» когда понадобилось внести изменения в файлы, которые не в корне, а в папках.

С дочерними темами действительно не все так просто, как хотелось бы.
Когда я столкнулся с ними впервые, то обрадовался, пока не понадобилось изменить jQuery в дочерней теме.
Тогда выяснилось, что с js в дочерней теме работать не получится.
То же самое касается файлов, отличных от стандартного набора.

Со стандартными файлами из корневой папки работается нормально, изменить style.css или single.php, например, не составляет труда.
Но проблемы начинаются, когда речь идет о дополнительных файлах, библиотеках, о более сложной структуре, нежели стандартная.

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

Проблема 2

Даже с файлами, которые в родительской теме в корне — есть проблемы. Это конкретно single.php, header.php, footer.php

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

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

В целом не всё так грустно. Обычно изменения при обновлении касаются style.css и functions.php. А эти файлы как раз заточены под дочернюю тему. То есть они как бы «чистый лист» там. Всё, что туда добавляем (в дочерней теме), не повлияет на обновления. Точнее, не помешает обновлениям родительской темы.

Вывод

Настоятельно рекомендую дочернюю тему ставить и все возможные изменения производить именно в ней и с ней.


P.S. Хотите получать уведомления о новых статьях этого блога? Нажмите на эту кнопку -

Хочу сразу узнавать о новых публикациях!

Предыдущая запись Реклама салона красоты | которая работает

Ваш комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Чтобы отправить комментарий, разрешите сбор ваших персональных данных .
Пользовательское соглашение