# Speedup WordPress By Dequeue Unused Scripts

- Link: https://www.agilicus.com/speedup-wordpress-dequeue-scripts/
- Published: 2021-03-16T21:34:32+00:00
- Author: Don Bowman

[Core Web Vitals](https://web.dev/vitals/) is coming. Users prefer faster pages,
so on search, faster pages (that are relevant) will be returned first. Recently 
I installed “[The Events Calendar](https://theeventscalendar.com/products/wordpress-events-calendar/)”
for WordPress. I found it was loading a large amount of Javascript and CSS on ever
page. But I only use it on /events (and its own post types). What do to to speedup
wordpress?

In my [Quest for Web Site Performance Perfection](https://www.agilicus.com/the-quest-for-web-site-performance-perfection/),
I found these enqueues scripts, no matter whether you minifed or preloaded, were
causing a lot of excess CPU and parse time. An infinitely fast network cannot help.
Its probably also using your battery up. So, let’s dig in.

First, we have to track them all down. To do this I added an echo statement to where
they were enqueued. There may be a more elegant way by reading the fine documentation,
but, I was in a hurry and this worked.

Once done, I added this below function to my theme functions. What it does is “if
this page is a tribe_event or /events then allow else dequeue”. This will speedup
wordpress: less things sent to user.

Install, load, done. Now I have 42 less scripts/js enqueued, and this means more
CPU for parsing other things, and, more battery for you the reader.

You can test your changes with the Chrome Lighthouse, or web.dev. Efficiency is 
in everyones interest, so save a bit, save a watt, speedup wordpress.

    ```php
    add_action( 'wp_enqueue_scripts', function() {

        global $wp;

        $post_type = get_post_type();
        if ($post_type != "tribe_events" && $wp->request != "/events/") {

    	wp_dequeue_style('tribe-tooltip-css');
    	wp_dequeue_script('tribe-tooltip-js');
            $junk_script = [
    	    "event-tickets-attendees-list-js",
    	    "event-tickets-details-js",
    	    "event-tickets-tickets-rsvp-js"
    	];

            $junk_style = [
    	    "event-tickets-reset-css",
    	    "event-tickets-tickets-css",
    	    "event-tickets-tickets-rsvp-css",
    	    "promoter",
    	    "tribe-events-admin-menu",
    	    "tribe-events-bar",
    	    "tribe-events-block-classic-event-details",
    	    "tribe-events-block-event-category",
    	    "tribe-events-block-event-datetime",
    	    "tribe-events-block-event-links",
    	    "tribe-events-block-event-organizer",
    	    "tribe-events-block-event-price",
    	    "tribe-events-block-event-tags",
    	    "tribe-events-block-event-venue",
    	    "tribe-events-block-event-website",
    	    "tribe-events-block-featured-image",
    	    "tribe-events-calendar-full-mobile-style",
    	    "tribe-events-calendar-mobile-style",
    	    "tribe-events-calendar-script",
    	    "tribe-events-calendar-style",
    	    "tribe-events-dynamic",
    	    "tribe-events-full-calendar-style",
    	    "tribe-events-views-v2-accordion",
    	    "tribe-events-views-v2-bootstrap-datepicker",
    	    "tribe-events-views-v2-bootstrap-datepicker-styles",
    	    "tribe-events-views-v2-breakpoints",
    	    "tribe-events-views-v2-datepicker",
    	    "tribe-events-views-v2-events-bar",
    	    "tribe-events-views-v2-events-bar-inputs",
    	    "tribe-events-views-v2-full",
    	    "tribe-events-views-v2-month-grid",
    	    "tribe-events-views-v2-month-mobile-events",
    	    "tribe-events-views-v2-multiday-events",
    	    "tribe-events-views-v2-navigation-scroll",
    	    "tribe-events-views-v2-skeleton",
    	    "tribe-events-views-v2-tooltip",
    	    "tribe-events-views-v2-viewport",
    	    "tribe-events-views-v2-view-selector",
    	    "tribe-tooltip"
    	];
    	wp_deregister_script($junk_script);
    	wp_deregister_style($junk_style);

        }
    }, 99);
    ```
