Сегодня разберемся как создать дочернюю тему в WordPress.
Видео-версия
Механизм дочерних тем позволяет вносить изменения в тему, используемую на сайте WordPress, не опасаясь потерять их при её обновлении. С помощью дочерней темы мы можем переопределить шаблон или функцию родительской темы, а также добавить свои css-правила или js-код.
Родительской темой может выступать любая тема, кроме тех, что уже являются дочерними.
Создавать дочернюю тему будем для одной из стандартных тем WordPress — Twenty Seventeen.
Создание дочерней темы
Подключаемся к сайту по FTP, переходим в папку wp-content и создаем папку для дочерней темы, например, twentyseventeen-child.
В созданной папке нам необходимо добавить два файла: style.css и functions.php.
В файл style.css необходимо поместить следующий код
1 2 3 4 |
/** * Theme Name: Twenty Seventeen Child * Template: twentyseventeen */ |
- Theme Name — название нашей дочерней темы
- Template — имя папки родительской темы
В файле functions.php нам необходимо подключить style.css родительской темы
1 2 3 4 5 |
<?php add_action( 'wp_enqueue_scripts', 'twentyseventeen_child_theme_scripts' ); function twentyseventeen_child_theme_scripts() { wp_enqueue_style( 'parent-theme-css', get_template_directory_uri() . '/style.css' ); } |
Далее нужно активировать тему в админ-панели в разделе Внешний вид -> Темы.
Наша дочерняя тема готова к использованию. Переходим к внесению изменений.
Модификация родительской темы
Для примера уберем отображение авторства и даты на странице записи.
Для этого находим какой файл или функция отвечает за вывод данного элемента, в данном случае это шаблон content.php, и копируем его в папку дочерней темы.
Удаляем из него вызов функции twentyseventeen_posted_on() и сохраняем.
Аналогичным образом можем убрать отображение меток на странице записи.
Копируем функцию twentyseventeen_entry_footer() из файла /inc/template-tags.php в functions.php дочерней темы, удаляем участок кода, отвечающий за вывод меток, и сохраняем.