• Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Elementor Skin

ADv

Гуру
Местный
Приветствую. Вопрос по Elementor. Может приходилось кому-нить сталкиваться.

Есть Controls_Manager::SELECT, которы "переключает" пресеты оформления блока.
Выглядит это как:

Код:
    'options' => [

        '1' => __( 'Style 1', 'plugin' ),

        '2' => __( 'Style 2', 'plugin' ),

        '3' => __( 'Style 3', 'plugin' ),

        '6' => __( 'Style 6', 'plugin' ),

    ],

Значение передается в $params['style']

include( plugin_dir_path( __FILE__ ) . '../templates/content-style-'.$params['style'].'.php' );

и, таким образом, переключаем пресеты.

К примеру, для Style 1 задаем синий фон, затем переключаемся на Style 2.
Фон блока при этом остается синий. Как его сбрасывать на дефолтный при переключении "пресетов"?

Вроде Skin_Base - Elementor Code Reference должно помочь, но не могу разобраться как это применить к своему кейсу.
 

ADv

Гуру
Местный
А если задать блоку id?
Он есть :)
Суть в том, что в лив превью при выборе стиля ты задаешь ему другие свойства (типа фона, border-radius и т.п.)
Так вот, когда переключаемся на другой стиль, то для Элементора - мы редактируем всё тот же элемент, поэтому вся стилизация сохраняется.

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

В итоге, я победил с помощью Skin_Base как и писал. Теперь все работает в рамках "контейнера стиля".
Наговнокодил правда... Но это поправимо же :)
 
Сверху Снизу