Дочерние темы

Дочерние темы
Автор блога
Андрей WPM

Андрей WPM

Дочерние темы (Child Themes) для WordPress.

Приветствую, дорогие читатели блога WPMaster.KZ. В этой статье, речь пойдет о важности использования дочерних тем на сайтах WordPress. И чтобы понять их важность, нужно в первую очередь понять вообще, что такое дочерние темы и для чего они нужны.

Наверняка, многие из вас уже меняли что-то в исходном коде WP, не так ли? Возможно кто-то добавлял какие-то скрипты в шапку сайта, а кто-то исправлял копирайт в подвале. Практически каждый это делает, но ни каждый задумывается, что же будет дальше?

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

Но, правильно ли это? Зачастую, разработчики не просто так апгрейдят свои творения. В каждом новом обновлении могут быть как просто правки какого-то незначительного кода, так и серьезные изменения. Например, внедряют в поддержку новую версию PHP. Или поддержку новых иконок. Или же поддержку новой версии самого движка WordPress. Очень часто, разработчики закрывают дыры в безопасности своей темы, чтобы через неё нельзя было взломать сайт. Ну и подобные значительные и не значительные правки.

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

Дочерние темы, это только один из пунктов по оптимизации WP. Подробное руководство по самым важным направлениям, вы найдете в статье – Внутренняя оптимизация WordPress на пальцах. Обязательно ознакомьтесь с ней.

 

Создание дочерней темы – Инструкция.

Существует, как минимум два варианта, чтобы создать дочернюю тему. Первый вариант вручную и второй, с помощью специального плагина. Я рассмотрю второй вариант, так как считаю это более правильным подходом. Тем более плагин нам нужен только для правильного создания и подключения. После всех манипуляций, плагин можно будет удалить и пользоваться дочерней темой уже без него.

Обратите внимание!
Не все бесплатные темы поддерживают дочерний функционал. Если ваш шаблон не поддерживает, то рекомендую установить одну из бесплатных премиум тем из моей подборки или же найти тему самостоятельно на wordpress.org. Обычно разработчики указывают, поддерживает ли их тема дочерний функционал или нет.

Итак, для установки нужного плагина, вам как обычно, нужно открыть вкладку Плагины -> Добавить новый и ввести ключевую фразу child в поиск. Нужный нам плагин, находится на первой позиции и называется он Child Theme Configurator.

Плагин дочерней темы Child Theme Configurator
Добавить плагин дочерней темы Child Theme Configurator

Итак, чтобы открыть настройки конфигуратора, нужно перейти в Инструменты -> Child Themes. Далее я покажу пошагово, что конкретно нужно отметить или прописать, для успешного создания. Не пугайтесь, что настройки на английском, я покажу на скринах, что конкретно нужно отметить.

1,2 и 3 пункты:

Создание дочерней темы Child Theme
Вкладка создания конфигурации дочерней темы

Здесь вам предлагают проанализировать тему и в последующем настроить на основе вашей темы, дочернюю. Во втором пункте выберите нужную вам тему, если у вас несколько и нажмите кнопку Analyze. Практически любая тема из репозитория ВордПресса поддерживает дочернии темы. Рекомендую при выборе тем, обращать внимание, на список поддерживаемых функций. Обычно там упоминают, что тема поддерживает.

 

4 и 5 пункты:

Настройка child theme
Правильная настройка дочерней темы

В четвертом пункте можете написать любое название, какое хотите. Просто, чтобы ориентироваться потом, где какая тема, рекомендуется в конце добавлять слово child.

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

 

6 пункт:

Конфигурация дочерней темы
Правильная конфигурация дочерней темы

Шестой пункт позволяет выбрать способ подключения к родительской теме. Рекомендую выбирать первый пункт. Он подключит ваш файл стилей через специальную функцию, что является самым быстрым способом на сегодняшний день. Способ подключения через @import крайне не рекомендуется.

 

7 пункт:

Название и описание в дочерней теме
Дополнительная информация дочерней темы

Здесь, по желанию, вы можете изменить данные о дочерней теме, такие как: описание, версия, автор и название. Если лень, можете не заполнять. Особого значения эти пункты не представляют. Разве что, если вы делаете сайт на заказ, то целесообразно здесь будет написать свой сайт и контакты. Чтобы после вас ребята, могли познакомиться с вами если что. В общем, по желанию.

 

8 и 9 пункты:

Завершение настройки дочерней темы
Обязательная настройка перед первой генерацией

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

Далее нажимаете на кнопку "Create New Child Theme" и ждете, когда ваша дочерняя тема создастся. Это может занять от нескольких секунд, до минуты. Всё зависит от размера темы и количества файлов. Не переходите на другие страницы и не пытайтесь перезагрузить её, иначе получите ошибку. В таком случае, вам придется зайти в папку сайта и удалить файлы, которые плагин успел создать. Потом повторить процедуру установки с самого начала.

 

Настройка Child Themes.

После успешного создания темы, вы увидите сообщение с просьбой перейти на созданную дочернюю тему и активировать её. Для этого кликаете по ссылке и переходите в кастомайзер вашей темы. Уведомление с ссылкой выглядит следующим образом:

Уведомление о создании

После того, как вы активировали вашу новую тему, пришло время перейти в каталог с сайтом и посмотреть, что там появилось. Если у вас сайт уже на хостинге находится, переходите в панель управления файлами. Затем выбираете папку с нужным сайтом (если у вас их несколько) и следуете по пути wp-content -> themes. В этой папке появиться отдельная тема, рядом с основной, с названием, которое вы установили в пункте 4.

Папка дочерней темы
Файловая система дочерней темы

Если папка появилась, значит всё хорошо. Большую часть пути, вы уже прошли. Осталось добавить необходимые файлы, которые вы хотите редактировать, в дочернюю тему. Для этого вам нужно перейти опять в настройки конфигуратора и выбрать пункт Files:

Копирование файлов в дочернюю тему
Копирование файлов из родительской в дочернюю тему

На этой странице представлена информация обо всех файлах, которые смог найти конфигуратор при создании дочерней темы. Выбираете нужные для редактирования файлы и нажимаете кнопку "Copy Selected to Child Theme". Обычно, самые редактируемые файлы в WordPress темах это – header.php и footer.php. Если вам нужно отредактировать или дополнить какой-то другой файл (например поправить комментарии или вывод статей на блоге) то ищите нужный файл и отмечаете его галочкой тоже.

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

Чтобы проверить, что все нужные файлы добавились, переходите опять в менеджер файлов, в папку своего сайта и открывайте новую папку темы-child. Там должны быть все файлы которые вы добавили, а так же стандартные файлы style.css и functions.php. Нашли? Поздравляю, теперь у вас подключена дочерняя тема.

Структура файлов в дочерней теме
Базовый набор файлов в дочерней теме

 

Как пользоваться дочерней темой?

Здесь всё довольно просто! Любые правки по коду, которые вы собираетесь делать на сайте, теперь вы будете делать в дочерней теме. Если вдруг, понадобиться произвести правки в каком-то другом файле, просто скопируйте его в дочернюю тему и творите с ним, всё что хотите. Я рекомендую не удалять полностью плагин конфигуратора, а просто его отключить. Если вдруг понадобиться добавить новый файл, вы его просто включите и добавите.

Почему нельзя это сделать вручную? Можно, но для определенных файлов, должна быть соблюдена вся последовательность адреса. Например, вам нужно отредактировать файл, который находится не в корне темы, а, к примеру, в папке ins. Чтобы файл корректно подключился, просто скопировать не получится. Придется создать в дочерней теме такую же папку и помещать скопированный файл туда. В общем, не всё так просто, нужно соблюдать уровень вложенности. Поэтому, советую пользоваться плагином. Вы его просто отключите, а когда нужно будет скопировать в тему файл, включите, скопируйте и опять выключите. Так он и не будет жрать ресурсы сайта и головняка с копированием будет гораздо меньше.

На сегодня у меня всё. Но на долго я с вами не прощаюсь, увидимся на страницах блога wpmaster.kz.

Так же рекомендую прочитать: Полная оптимизация WordPress по шагам.

Андрей WPM
Опубликовал - Андрей WPM

Друзья, блогу нужна ваша поддержка. Если вам понравилась статья или она вам помогла решить задачу, поделитесь ею в одной из соцсетей. Этим вы поможете дальнейшему развитию. Всем активистам - спасибо!


CTRL+D

Бонус для читателей WPMaster.kz. Предлагаю познакомиться с новым разделом на блоге - Промокоды. Только самые лучшие и нужные промокоды для покупок плагинов, тем, обучения, сервисов и т.д.



13
Вопросы не по теме статьи, задавайте в разделе "Флудилка".

avatar
1000
  Подписаться  
новее старее
Уведомление о
Анонимус
3 комм.
Анонимус

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

Евгений
8 комм.
Евгений ( elektro-spb.ru )

Здравствуйте. Я поставил конфигуратор дочерних тем на свой сайт, создал дочернюю тему и активировал ее. Насколько я понял, дочерняя тема загружает файл style.css из основной темы. Мне нужно сделать верстку адаптивной, зависимой от размера экрана, на котором просматривают мой сайт. Я сделал файл style.css в папке активной дочерней темы. Однако у меня впечатление, что wordpress игнорирует записи из нового файла. Может ли такое быть и как это проверить?

Евгений
8 комм.
Евгений ( elektro-spb.ru )

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

Дмитрий
10 комм.
Дмитрий ( dmitrylee.ru )

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

zVz
1 комм.
zVz

Я так понял, в плагине ничего трогать не надо, только галочку в конце поставить, что бы тема автоматически активировалась, и доп. файлы добавить, всякие хедеры с футерами если нужны)