wp_dequeue_style не работает
Я пытаюсь убрать шрифт, который подключает плагин на фронтенде, так как я уже подключаю его сам и мне не нужны все стили этого шрифта.
Вот мой код:
// Удаляем Open Sans
function custom_dequeue() {
wp_dequeue_style('et-gf-open-sans');
}
add_action('wp_enqueue_scripts', 'custom_dequeue');
// Также пробовал
add_action('wp_print_styles', 'custom_dequeue', 9999);
// Пробовал хуки: wp_footer, wp_head, wp_print_scripts,
// с высоким приоритетом и по умолчанию - безрезультатно
Всё, что это делает - перемещает код из head перед закрывающим тегом </body>
.
Я связался с автором плагина, и он предложил тот же код, который я уже пробовал. Жду дальнейшего ответа.
Я уверен, что работаю с правильным именем handle. Я изменил URL в коде, чтобы точно определить, какая именно строка загружает шрифт (у автора несколько мест, где подключаются шрифты).
Есть идеи?
---------------------------------------------
Обновление
Шрифт загружается с этим действием:
add_action('wp_enqueue_scripts', array($this, 'load_scripts_styles'));
И он ставится в очередь в функции load_scripts_styles
Я пробовал использовать высокий приоритет везде.
Я также использую плагин Query Monitor, который показывает порядок всех хуков, какой плагин к чему подключается, и какую функцию использует. Мой код появляется после кода плагина, но всё, что происходит - это перемещение из заголовка в подвал. Это сводит меня с ума!
Хорошо, я разобрался с этой проблемой.
function custom_dequeue() {
wp_dequeue_style('et-gf-open-sans');
wp_deregister_style('et-gf-open-sans');
}
add_action( 'wp_enqueue_scripts', 'custom_dequeue', 9999 );
add_action( 'wp_head', 'custom_dequeue', 9999 );
@milo был прав. Плагин повторно добавлял шрифт, поэтому его отмена регистрации остановила загрузку этого файла.
Затем плагин также имел дополнительную проверку, где он регистрировал и добавлял другой шрифт с тем же идентификатором. Действие было привязано к хуку wp_head
, поэтому я добавил свое действие к wp_head
и наконец полностью остановил его загрузку!
Спасибо всем за помощь!

та же проблема здесь, но до сих пор не решена в случае с Modern Events Calendar Lite :(
