Поддержка Проблемы и решения Как подключить файл дополнительных стилей из дочерней темы

  • Нужно подключить файл дополнительных стилей из дочерней темы.
    Перепробовал несколько вариантов (3) не сработало. Может где-то ошибка в коде.
    файл functions.php в папке дочерней темы

    <?php
     
    // 1 вариант подключить файл стилей из дочерней темы
    add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
    function my_theme_enqueue_styles() {
        wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/stylemobile.css' );
    }
     
    // 2 вариант подключить файл стилей из ДТ
    function my_styles_scripts() {
        wp_enqueue_style( 'easywp-child-4L', get_stylesheet_directory_uri() . '/style.css', array(), '', 'all' );
    }
    add_action( 'wp_enqueue_scripts', 'my_styles_scripts' );
     
    // Exit if accessed directly
    if ( !defined( 'ABSPATH' ) ) exit;
     
    // BEGIN ENQUEUE PARENT ACTION
    // AUTO GENERATED - Do not modify or remove comment markers above or below:
     
    if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
        function chld_thm_cfg_parent_css() {
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array(  ) );
    // 3 вариант подключить файл стилей из ДТ       
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'stylemobile.css', array(  ) );
        }
    endif;
    add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );
     
    // END ENQUEUE PARENT ACTION

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 15 ответов — с 1 по 15 (всего 51)
  • E vtyz rjyabuehfnjh djn nfrjt lj,fdbk

    if ( !function_exists( ‘child_theme_configurator_css’ ) ):
    function child_theme_configurator_css() {
    wp_enqueue_style( ‘chld_thm_cfg_separate’, trailingslashit( get_stylesheet_directory_uri() ) . ‘ctc-style.css’, array( ‘chld_thm_cfg_parent’,’momentous-lite-stylesheet’,’genericons’ ) );
    }
    endif;
    add_action( ‘wp_enqueue_scripts’, ‘child_theme_configurator_css’, 20 );

    А где здесь в коде дополнительный стиль — stylemobile.css?

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

    Вы б для начала с одним разобрались..

    С одним основным все в порядке

    А зачем Вам второй? Почему Вам одного мало?

    ситуация такая: создал дочернюю тему через Child Theme Configurator. Создал файлы по умолчанию (т.е. style.css и functions.php).
    Внёс все нужные изменения через сам этот плагин в style.css дочерней темы по основным элементам. Но вот участок кода, отвечающий за адаптивность внёс редактирую style.css напрямую в конец кода.
    Только если вносить правки в ручном режиме напрямую в style.css то они не сохраняются при копировании дочерней темы (из самого плагина, видимо в базу не попадают).
    Вышел на решение — создать дополнительный stylemobile.css (отвечающий за адаптивность кусок кода) и подключать его после дочернего style.css.
    @import url("stylemobile.css"); в дочернем style.css работает, но тоже не сохраняется при копировании средствами самого плагина.
    Поэтому вижу решение через function.php подключить два стиля (как бы дополнительно к основному)
    Вот код файла функций, созданный дочерней темой — просьба прямо туда внести изменения (мне грамотности в коде не хватает)

    <?php
    // Exit if accessed directly
    if ( !defined( 'ABSPATH' ) ) exit;
    
    // BEGIN ENQUEUE PARENT ACTION
    // AUTO GENERATED - Do not modify or remove comment markers above or below:
    
    if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
        function chld_thm_cfg_parent_css() {
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array(  ) );
        }
    endif;
    add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );
    
    // END ENQUEUE PARENT ACTION

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

    Файлы нужно править по ФТП в правильных блокнотах — в кодировке UTF8 и подсветкой синтаксиса.

    так и делаю в phpStorm или Notepad++/ но «никакие ручные» правки не сохраняются при дублировании дочерней темы (средствами самого плагина)

    но «никакие ручные» правки не сохраняются при дублировании дочерней темы (средствами самого плагина)

    Плагином сделали дочку? Всё, удаляйте его.
    Дальнейшие правки файлов — по ФТП.

    стратегия однако… но через этот плагин удобно искать код и вносить в него правки (он ищет по классам и по стилям) и сразу показывает все компоненты.
    Неужели подключить дополнительный дополнительный стиль — такая сложная задача?

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

    • Ответ изменён 5 лет, 9 месяцев назад пользователем jurvrn.

    Неужели подключить дополнительный дополнительный стиль — такая сложная задача?

    Вообще — нет. Но для Вас — вопрос.
    Но это не нужно. Ни Вам ни для задач, подобным Вашим ни в большинстве случаев. Это нужно для других целей.

    Поэтом Вам я рассказываю как именно Вам будет проще и в тоже время правильнее.

    просто хотелось бы сохранить вот такую возможность как на скриншоте
    http://ipic.su/7yAF9n.jpg

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    
    // 1 вариант подключить файл стилей из дочерней темы
    add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
    function my_theme_enqueue_styles() {
        wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/stylemobile.css' );
    }
    

    Здесь подключается файл stylemobile.css родительской темы.

    
    // 2 вариант подключить файл стилей из ДТ
    function my_styles_scripts() {
        wp_enqueue_style( 'easywp-child-4L', get_stylesheet_directory_uri() . '/style.css', array(), '', 'all' );
    }
    add_action( 'wp_enqueue_scripts', 'my_styles_scripts' );
    

    Здесь подключается файл style.css дочерней темы.

     
    // BEGIN ENQUEUE PARENT ACTION
    // AUTO GENERATED - Do not modify or remove comment markers above or below:
     
    if ( !function_exists( 'chld_thm_cfg_parent_css' ) ):
        function chld_thm_cfg_parent_css() {
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'style.css', array(  ) );
    // 3 вариант подключить файл стилей из ДТ       
            wp_enqueue_style( 'chld_thm_cfg_parent', trailingslashit( get_template_directory_uri() ) . 'stylemobile.css', array(  ) );
        }
    endif;
    add_action( 'wp_enqueue_scripts', 'chld_thm_cfg_parent_css', 10 );
     
    // END ENQUEUE PARENT ACTION
    

    Здесь подключаются файлы style.css и stylemobile.css родительской темы.

    Если нужно подключить дополнительный файл дочерней темы — замените get_template_directory_uri() на get_stylesheet_directory_uri().

    Sergey Biryukov , спасибо, но так как я в коде так и не разобрался, то создал средствами плагина функцию загрузки стилей из двух файлов

Просмотр 15 ответов — с 1 по 15 (всего 51)
  • Тема «Как подключить файл дополнительных стилей из дочерней темы» закрыта для новых ответов.