Поддержка Плагины Подключение к плагину своего стиля

  • Решено jurvrn

    (@jurvrn)


    Есть плагин, который допускает применение своего стиля к элементам. Можно менять через настройки самого плагина. Чтобы было удобнее править код можно ли как-то подключить к этому плагину отдельный файл css?
    Как вариант в основном файле стилей этого плагина сделать include ?

Просмотр 15 ответов — с 16 по 30 (всего 45)
  • Yui (@fierevere), tuxfighter (@tuxfighter) я вас понял, принципа никакоо нет, просто отдельный файл я могу как угодно править, архивировать и т.д. и.т.п….

    Модератор Yui

    (@fierevere)

    ゆい にゃん子

    со сниппетами вы можете делать то же самое
    еще разик: https://ru.wordpress.org/plugins/code-snippets/

    jurvrn
    еще раз:
    не нравиться существующий функционал:
    форк — свой функционал — свои правила — свои шахматы и монашки.

    Если искренне убеждены, что ВП без ваших хотелок ну ни как не обойтись — тикет в общею поддержку.

    Yui (@fierevere), tuxfighter (@tuxfighter), мне нужно чтобы файл стиля лежал в папке дочерней темы

    мне нужно чтобы файл стиля лежал в папке дочерней темы

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

    Модератор Юрий

    (@yube)

    мне нужно чтобы файл стиля лежал в папке дочерней темы

    А лежащий там style.css не устраивает? Подключите к нему еще один (или больше) при помощи @import.

    • Ответ изменён 2 мес. назад пользователем  Юрий. Причина: ох уж мне этот пинг юзеров :/

    Yui (@fierevere), посмотрел ваш плагин, действительно удобная вещь. Но мне нужно чтобы файл с изменениями был как бы физически и визуально доступен, а не скрыт в недрах wordpress’a
    Как я понял в моем бы случае подошел сниппет CSS с таким кодом и он бы применился ?

    
    add_action( 'wp_head', function () { ?>
    	<style>
    
    		/* Напишите CSS код здесь */
    
    	</style>
    <?php } );
    

    Юрий (@yube), то есть нет разницы между элементом страницы записанной в коде страницы, и элементом выводимым плагином? их можно править через основной css? а к style.css можно подключать дополнительно??? не знал

    • Ответ изменён 2 мес. назад пользователем  jurvrn.

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

    Можно и так:
    @import url (..wp-content/child-theme/your-style.css);
    Но с данной функцией есть проблема. Стили будут грузиться не параллельно, а сначала потребуется полная загрузка для style.css дочерней темы и только потом браузер возьмется за ваш скрипт, потому, предпочитаю так:

    add_action('wp_enqueue_scripts', 'winnet_theme_styles' );
    function winnet_theme_styles() {
    	wp_enqueue_style('child-theme-css', get_stylesheet_directory_uri() .'/style.css', array('parent-theme-css') );
    }

    Обратите внимание, для подключения в дочерней теме всегда используйте get_stylesheet_directory_uri()
    А для родительской темы get_template_directory_uri()
    И да, вы можете через style.css или другой файл переназначить любой стиль. В крайнем случае достаточно указать !important

    • Ответ изменён 2 мес. назад пользователем  ren334.

    ren334 (@ren334), спасибо за исчерпывающий ответ. Что любой элемент на странице можно изменить через свой дочерний стиль не сразу понял, сбило по неопытности то, что плагин имеет окно настроек своего стиля внутри административной консоли wordpress.
    Проверю как у меня подключен дочерний стиль к основной — мне надо чтобы параллельно загружались. Это через функцию php только. Правильно?
    То что стиль дополнительный можно подключить прямо из стиля дочернего — это то, что мне нужно. (сделаю это через get_stylesheet_directory_uri() ).
    «child-theme-css» — это указание названия файла стиля дочерней темы?
    «.’/style.css’,» — это название дополнительного подключаемого файла стиля?
    «parent-theme-css» — это указание названия файла стиля родительской темы?
    Как сделать ещё функцию wp_style_add_data() чтобы добавить условия подключения стилей — только для сайта внешнего? (если это нужно конечно)

    Значит мой php код в файле function.php, который у меня в дочерней теме я напишу код:

    add_action('wp_enqueue_scripts', 'winnet_theme_styles' );
    function winnet_theme_styles() {
    	wp_enqueue_style('style-child.css', get_stylesheet_directory_uri() .'./style-plugin.css', array('style.css') );
    }
    • Ответ изменён 2 мес. назад пользователем  jurvrn.
    Модератор Юрий

    (@yube)

    Можно и так:
    @import url (..wp-content/child-theme/your-style.css);

    Так нельзя, потому что ..wp-content/child-theme/ — путь в никуда.

    Модератор Юрий

    (@yube)

    «child-theme-css» — это указание названия файла стиля дочерней темы?

    Это хендлер (идентификатор). См. https://developer.wordpress.org/reference/functions/wp_enqueue_style/
    По нему можно отменить подключение стиля или заменить подключаемый файл на другой.

    Юрий (@yube), не так я правильно понимаю что это название файла подключаемого стиля ?

    $handle
    (string) (Required) Name of the stylesheet. Should be unique.

    Модератор Юрий

    (@yube)

    название файла подключаемого стиля

    Не файла, а стиля. К собственно файлу это имя имеет очень опосредованное отношение. Фишка в том, что по хендлеру можно снять с регистрации ранее зарегистрированный стиль/скрипт или подключить другой файл. Это часто используется для подмены версии jQuery.

    Смотрите, 'style-child.css' (точку лучше убрать, тут их быть не должно) — это $handle, дескриптор, условно можно назвать псевдонимом, по которому файл будет определяться в общей структуре. Для каждого стиля должен быть новый дескриптор.
    array — массив, который должен отвечать за приоритет загрузки. Фактически, это нужно, чтобы стиль дочерней темы грузился первее родительской, вам это ни к чему.
    wp_enqueue_style('style-child-css', get_template_directory_uri() .'/plugin-style.css');
    Фактически, вам нужен такой код.

Просмотр 15 ответов — с 16 по 30 (всего 45)