Задать вопрос

Почему не применяются стили родительской темы в дочерней в Wordpress?

Всем привет. Создала дочернюю тему на Wordpress, в functions.php дочерней темы подключила стили:
<?php
add_action ('wp_enqueue_scripts', 'theme_enqueue_styles');
function theme_enqueue_styles () {
wp_enqueue_style ('parent-style', get_template_directory_uri() . '/style.css');
wp_enqueue_style ('child-style', get_template_directory_uri() . '/style.css', array ('parent-style')); }
?>
Но теперь на сайте все стили пропали. По идее, дочерние стили должны дополнять родительские, но они почему-то их заменяют полностью. Что я делаю не так?
  • Вопрос задан
  • 3153 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
edalis
@edalis
HTML, CSS, JS, Node.js
Вы не правильно подключаете стили.
Используйте этот код, все будет работать 100%:
<?php

add_action( 'wp_enqueue_scripts', 'my_enqueue_styles' );

function my_enqueue_styles() {

    /* If using a child theme, auto-load the parent theme style. */
    if ( is_child_theme() ) {
        wp_enqueue_style( 'parent-style', trailingslashit( get_template_directory_uri() ) . 'style.css' );
    }

    /* Always load active theme's style.css. */
    wp_enqueue_style( 'style', get_stylesheet_uri() );
}


Ну, или проще:
<?php

add_action( 'wp_enqueue_scripts', 'my_enqueue_styles' );

function my_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( 'style', get_stylesheet_uri() );
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
deniscopro
@deniscopro Куратор тега WordPress
WordPress-разработчик, denisco.pro
Привет.

Для дочерних стилей нужно использовать функцию get_stylesheet_directory_uri().
Функция get_template_directory_uri() в данном случае вернет путь к родительской теме.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы