Как создать дочернюю тему в WordPress?

Как видно из названия, дочерняя тема – это тема, унаследованная от родительской темы. Это будет отображаться на панели администратора WordPress, как и любая другая тема, в разделе «Внешний вид> Темы». В этой статье мы обсудим, в каких сценариях вам может понадобиться дочерняя тема и как создать дочернюю тему в WordPress, а также обсудим часто возникающие проблемы с дочерними темами.

Почему люди изменяют файлы основной темы?

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

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

  • Чтобы расширить возможности родительской темы, вам может потребоваться добавить функции или определенные php-коды в любой файл основной темы, например functions.php.
  • Чтобы расширить возможности любого из плагинов, установленных на вашем сайте, вам может потребоваться изменить файлы родительской темы.
  • Иногда требуются настройки файла темы из-за конфликта с такими функциями, как электронная почта, совместное использование и т. Д.
  • Возможно, вам придется изменить макеты ваших сообщений или страниц. Например, вместо отображения даты публикации в статьях вы можете захотеть отобразить дату последнего обновления, которая требует изменения, в файле single.php вашей родительской темы.
  • Создание пользовательских типов сообщений, таксономий и любых дополнительных настроек.
  • Вы можете добавлять рекламные коды прямо в шаблоны php.

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

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

Зачем вам нужна детская тема?

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

Как создать дочернюю тему в WordPress?

Создать дочернюю тему в WordPress легко, поэтому вам не нужно паниковать или беспокоиться о технических вещах. Вы можете сделать это вручную прямо из панели администратора WordPress, и мы объясним пошаговые инструкции, как показано ниже.

Создание локальной папки дочерней темы

Мы объясним на примере темы WordPress «twentysixteen» в качестве родительской темы и создадим дочернюю тему под названием «twentysixteen-child» для простоты понимания. Хотя вы можете дать любое имя, добавление префикса «-child» поможет понять, что это дочерняя тема, особенно если у вас многопользовательская среда.

Первый шаг – создать новую папку на вашем ПК или Mac и назвать ее «twentysixteen-child». Внутри папки создайте два текстовых файла и назовите их «style.css» и «functions.php». Вы также можете скопировать эти два файла из родительской темы двадцать шестнадцать и удалить содержимое, чтобы остались пустые файлы. Структура папок на вашем ПК должна выглядеть так:

Создание папки дочерней темы локально

Создание файла style.css для дочерней темы

Создание таблицы стилей для дочерней темы

Второй шаг – открыть файл style.css и вставить следующий код:

/*
Theme Name:   Child Twenty Sixteen
Theme URI:    http://www.yoursite.com/twenty-sixteen-child/
Description:  Twenty Sixteen Child Theme
Author:       Your Name
Author URI:   http://www.yoursite.com
Template:     twentysixteen
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
Text Domain:  twenty-sixteen-child
*/

Замените yoursite.com и имя автора своими данными. Заполнитель «Шаблон» важен для обозначения имени родительской темы, в нашем примере мы используем «twentysixteen» в качестве шаблона.

Добавление родительского стиля в дочернюю тему

Третий и последний шаг – связать таблицу стилей родительской темы с дочерней темой. Метод импорта путем добавления «@import url (« ../ twentysixteen / style.css »);» к вашей дочерней теме style.css больше не является лучшим, и рекомендуемый способ – поставить родительский стиль в очередь к стилю вашей дочерней темы. Для этого добавьте следующий код в файл functions.php дочерней темы:

<?php
add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {
wp_enqueue_style( 'twentysixteen-css', get_template_directory_uri() . '/style.css' );
}
?>

Здесь предполагается, что родительская тема имеет только один файл style.css, что верно для двадцати шестнадцати в этом примере. Если ваша тема имеет более одной таблицы стилей, убедитесь, что все зависимости помещены в очередь в файл functions.php дочерней темы.

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

Загрузка и активация дочерней темы

Заархивируйте папку «twentysixteen-child» на вашем ПК или Mac в файл .zip, поскольку тема WordPress должна быть в сжатом формате .zip. Сжатый zip-файл вашей дочерней темы должен иметь style.css и functions.php, как указано выше. Теперь войдите в панель администратора WordPress и перейдите к «Внешний вид> Темы»И загрузите файл дочерней темы« twentysixteen-child.zip ». После успешной загрузки дочернюю тему можно увидеть в разделе «Внешний вид> Темы», Которую можно активировать, как и любые другие темы.

Активация дочерней темы в WordPress

Активация дочерней темы в WordPress

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

Изменение стиля родителей

Это важная потребность дочерней темы в настройке стилей и других шаблонов родительской темы. Любые определения стилей в файле style.css дочерней темы будут ПЕРЕПРЕРЫВАТЬ определение в style.css родительской темы. Например, родительская тема twentysixteen имеет цвет фона тела # 1a1a1a, который вы можете изменить на # 5a1c1c, просто добавив следующий код в style.css twentysixteen-child:

тело {background-color: # 5a1c1c;}

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

Добавление дополнительных функций

Подобно стилям, вы также можете добавить дополнительные функции в файл functions.php вашей дочерней темы вместо изменения файла родительской темы. Разница здесь в том, что в то время как файл style.css дочерней темы переопределяет стиль родительской, любые функции, определенные в functions.php дочерней темы, будут загружаться ДОПОЛНИТЕЛЬНО в файл function.php родительской темы. В основном файл functions.php дочерней темы загружается раньше родительского файла functions.php и помогает вам добавлять любые дополнительные функции, которые вам нужны.

Изменение или добавление других файлов шаблонов

Вы также можете изменить любые файлы шаблонов вашей родительской темы, например header.php или single.php. Например, если вы хотите изменить код PHP внутри single.php, добавьте файл single.php в каталог дочерней темы и измените код. WordPress будет ИСПОЛЬЗОВАТЬ ФАЙЛ ШАБЛОНА ДЕТСКОЙ ТЕМЫ вместо файла родительской темы. Убедитесь, что для работы файлов используется та же структура каталогов, если вы хотите изменить файл loop.php, который находится в папке «twentysixteen / template-parts / content.php», затем создайте аналогичную файловую структуру для дочерней темы, например «twentysixteen- дочерний / шаблон-части / content.php ».

WordPress сначала заглянет в каталог дочерней темы, чтобы использовать файлы шаблона, а затем, если он не найден, использует файл родительской темы. Это будет очень полезно для добавления настраиваемых шаблонов сообщений или страниц для вашей темы. Например, если вы хотите иметь собственный шаблон для демонстрационных сообщений, создайте шаблон с именем «single-demo.php» и поместите его в каталог дочерних тем. Вы можете изменить файл «single-demo.php», и WordPress будет использовать этот шаблон (вместо single.php из родительской темы) при загрузке демонстрационных сообщений.

Общие проблемы с дочерними темами

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

  • Когда вы активируете дочернюю тему, некоторые элементы, такие как меню, виджеты боковой панели и параметры темы, могут исчезнуть. Возможно, вам потребуется повторно сохранить или воссоздать эти материалы для своей дочерней темы.
  • Если вы видите белый экран смерти, то вероятной причиной может быть неправильное использование кавычек. Попробуйте отредактировать файлы с помощью простых текстовых редакторов, таких как Блокнот, или скопируйте и вставьте код из родительских файлов шаблонов.

Похожие записи

Добавить комментарий

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