wp_dequeue_style nu funcționează - Soluții pentru eliminarea fonturilor în WordPress

16 sept. 2015, 20:23:02
Vizualizări: 13.6K
Voturi: 11

Încerc să elimin un font pe care un plugin îl încarcă pe front-end, deoarece eu deja îl încarc singur și pluginul încarcă toate stilurile fontului, care nu îmi sunt necesare.

Iată codul meu:

// Elimină Open Sans  
function custom_dequeue() {
    wp_dequeue_style('et-gf-open-sans');
}

add_action( 'wp_enqueue_scripts', 'custom_dequeue' );

// Am încercat și
add_action( 'wp_print_styles', 'custom_dequeue', 9999 );

// De asemenea, am testat hook-urile: wp_footer, wp_head, wp_print_scripts, 
// toate cu prioritate mare și prioritate implicită, fără succes

Toate acestea fac doar să mute codul din head chiar înainte de tag-ul de închidere </body>.

Am contactat autorul plugin-ului și răspunsul a fost codul pe care l-am încercat deja. Aștept un alt răspuns.

De asemenea, sunt sigur că am identificat corect numele handle-ului. Am modificat URL-ul codului pentru a localiza exact linia care încarcă fontul. (autorul are multiple locuri care încarcă fonturi.)

Idei?

---------------------------------------------

Editare

Fontul este încărcat cu această acțiune:

add_action( 'wp_enqueue_scripts', array( $this, 'load_scripts_styles' ) );

Și este enqueued în funcția load_scripts_styles

Am încercat cu prioritate mare pe toate hook-urile.

Folosesc și un plugin numit Query Monitor care afișează ordinea tuturor hook-urilor și ce plugin se atașează la ce, împreună cu funcția care face hook-ul. Codul meu apare după codul plugin-ului, dar tot ce se întâmplă este că este mutat din header în footer. Mă enervează!

8
Comentarii

Cum este încărcat?

birgire birgire
16 sept. 2015 21:09:12

Ai încercat să folosești o prioritate mare pe acțiunea 'wp_enqueue_scripts'? Întreb pentru că nu ai arătat sau menționat explicit. Majoritatea plugin-urilor și temelor în zilele noastre încarcă stilurile prin acest hook, deci ești foarte aproape, poți adăuga prioritatea și acolo.

totels totels
16 sept. 2015 21:12:23

@birgire Am editat postul meu răspunzând la întrebările tale. mulțumesc pentru ajutor

John_911 John_911
16 sept. 2015 21:23:26

@totels Am editat postarea mea răspunzând la întrebările tale. mulțumesc pentru ajutor

John_911 John_911
16 sept. 2015 21:23:45

ești sigur că nu există cod în altă parte care verifică și încarcă mai târziu? dacă apare în subsol, ar putea fi conectat la orice declanșează înainte sau la wp_footer.

Milo Milo
16 sept. 2015 21:27:24

@Milo asta trebuie să fie cazul, este singurul lucru care ar putea explica, nu?

John_911 John_911
16 sept. 2015 21:32:05

Presupun că da. Ai putea încerca și să îl deregistrezi în loc să doar îl scoți din coadă, astfel încât să nu poată fi adăugat din nou fără a fi reînregistrat sau adăugat din nou fără toți parametrii.

Milo Milo
16 sept. 2015 21:43:46

@Milo mulțumesc pentru ajutor. Am postat un răspuns. Totul e în regulă acum.

John_911 John_911
16 sept. 2015 22:09:29
Arată celelalte 3 comentarii
Toate răspunsurile la întrebare 1
1
22

Bun, am reușit să rezolv această problemă.

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 avea dreptate. Plugin-ul relua încărcarea fontului, așa că deregistrarea l-a oprit din a se încărca.

Apoi, plugin-ul avea o altă verificare, unde înregistra și încărca un alt font cu același handle. Acțiunea era conectată la wp_head, așa că am adăugat o altă acțiune la wp_head și am reușit în sfârșit să îl opresc complet din încărcare!

Mulțumesc pentru ajutorul tuturor!

16 sept. 2015 22:08:38
Comentarii

aceeași problemă aici, dar încă nu se rezolvă în cazul Modern Events Calendar Lite :(

eapo eapo
12 mai 2019 08:30:43