Entfernen Sie nicht verwendete Stile aus WordPress

Lesezeit: 3 Minuten

Benutzer-Avatar
Ognj3n

Ich versuche zu aus der Warteschlange nehmen/abmelden Stile, die unnötig sind (WooCommerce, Kontaktformular 7) von allen Beiträgen/Seiten meiner WordPress-Website.

Versucht offiziell Die Methode von WooCommerce, diese zusätzlichen Stile und Skripte zu deaktivieren, aber sie werden nicht aus der Warteschlange entfernt, da Stile immer noch im Quellcode geladen sind und Google PageSpeed ​​Insights sie immer noch als gerendert anzeigt; Also:

add_filter( 'woocommerce_enqueue_styles', 'jk_dequeue_styles' );
function jk_dequeue_styles( $enqueue_styles ) {
    unset( $enqueue_styles['woocommerce-general'] );    // Remove the gloss
    unset( $enqueue_styles['woocommerce-layout'] );     // Remove the layout
    unset( $enqueue_styles['woocommerce-smallscreen'] );    // Remove the smallscreen optimisation
    return $enqueue_styles;
}

// Or just remove them all in one line
add_filter( 'woocommerce_enqueue_styles', '__return_false' );

in functions.php Funktioniert nicht. Ich habe auch versucht, sie wie folgt zu entfernen:

function remove_assets() {
    wp_dequeue_style('wc-block-vendors-style-css');
    wp_deregister_style('wc-block-vendors-style-css');
}
add_action( 'wp_print_styles', 'remove_assets', PHP_INT_MAX );

Zeigt auf eine bestimmte Stil-ID wc-block-vendors-style-css und Einstellung PHP_INT_MAX. Dieser spezifische Stil wird immer noch nicht entfernt.

Geben Sie hier die Bildbeschreibung ein

Anmerkungen:

Dies functions.php gehört zum Child-Theme eines benutzerdefinierten, überarbeiteten Twenty-Twenty-WordPress-Themes und der Cache wurde geleert. Ich habe die meisten Antworten hier aus dem StackOverflow von Benutzern mit ähnlichen Problemen ausprobiert, aber keine einzige hat funktioniert.

Die Woocommerce-Unterstützung ist im Design aktiviert.

Wie kann ich Stile und Skripte mit WordPress 5.6 im Jahr 2021 aus der Warteschlange entfernen/deregistrieren?

  • Zusätzlich zu der bereitgestellten Antwort … Ihre offizielle Antwort verwendet die falsche Funktion. gist.github.com/woogists/…

    – Howard E

    4. Januar 2021 um 10:49 Uhr


  • @HowardE Dieses Snippet ist Teil der Woocomerce-Dokumentquelle, die ich in Frage gestellt habe, habe es auch versucht und funktioniert nicht. Alle WooCommerce-Stile und -Skripte werden weiterhin geladen

    – Ognj3n

    4. Januar 2021 um 10:53 Uhr

  • Das Wesentliche sagt add_filter( 'woocommerce_enqueue_styles', '__return_empty_array' ); was du oben schreibst ist __return_false

    – Howard E

    4. Januar 2021 um 10:55 Uhr

  • docs.woocommerce.com/document/disable-the-default-stylesheet/… lesen Sie dies; Dein Vorschlag ist da drin, probiert, funktioniert nicht..

    – Ognj3n

    4. Januar 2021 um 10:57 Uhr


  • In diesem Fall sollten Sie sicherstellen, dass Ihre Funktionen tatsächlich ausgeführt werden. Sie können versuchen, etwas in error_log zu speichern, um zu überprüfen, ob Ihre Funktionen ausgelöst werden.

    – Howard E

    4. Januar 2021 um 10:59 Uhr

Laut @Aliakseyenka Ihar – ich habe mich selbst getestet, als ich hinzufügte deregister Vor wp_dequeue_style – es entfernt den Vendor-Stil

function remove_assets() {
    wp_deregister_style('wc-block-vendors-style');
    wp_dequeue_style('wc-block-vendors-style');
}
add_action( 'wp_enqueue_scripts', 'remove_assets', 11);

Oder Ninja-Art

add_filter( 'wp_enqueue_scripts', 'jk_dequeue_styles', 99999 );
function jk_dequeue_styles( $enqueue_styles ) {
    global $wp_styles;
    unset ( $wp_styles->registered['wc-block-vendors-style'] );
}

Wenn Ihr Stylesheet registriert und korrekt in die Warteschlange eingereiht ist, dann …

function dequeue_css() {
    wp_dequeue_style('wc-block-vendors-style');
    wp_deregister_style('wc-block-vendors-style');
}
add_action('wp_enqueue_scripts','dequeue_css');
// add a priority if you need it
// add_action('wp_enqueue_scripts','dequeue_css',100);

Oder Sie können es auf diese Weise versuchen:

add_filter('style_loader_src', function($href){
    if(strpos($href, "wc-block-vendors-style") !== false) {
        return false;
    }
    return $href;
});

Ich habe herausgefunden, dass zum Entfernen dieser Stile die Woocomerce-Integration in das aktive Design erforderlich war.

add_theme_support( 'woocommerce' );

Dies hat mein Problem gelöst.

1385770cookie-checkEntfernen Sie nicht verwendete Stile aus WordPress

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy