Have you ever wondered how WordPress plugins affect your site load time? WordPress plugins allow you to add features to your site, but they can also affect the speed of your website. In this article, we'll show you how WordPress plugins affect your site's load time and how you can control them more efficiently.
WordPress plugins are like apps for your WordPress site. You can install them to add more features to your website, such as contact forms, photo galleries, or an e-commerce store.
When someone visits your website, WordPress loads your core files first, and then loads all of your active plugins.
For more details, take a look at our article on what are WordPress plugins? And how do they work?
Each WordPress plugin offers different functionality and features. To do that, some plugins make database calls on the backend, while others load assets on the front-end, such as CSS style sheets, JavaScript files, images, etc.
Performing database queries and uploading assets adds to your site load time. Most plugins make an HTTP request to load assets like scripts, CSS, and images. Each request increases the page load time of your site.
When done correctly, the performance impact is often not too noticeable.
However, if you are using multiple plugins that make too many http requests to upload files and assets, then it will affect your site performance and user experience.
To see how plugins affect your page load time, you need to check the files uploaded by WordPress plugins.
There are many tools you can use to solve this.
You can use your browser's developer tools (Inspect in Google Chrome and Inspect Element in Firefox).
Simply visit their website and right click to select Inspect. This will open the developer tools panel.
You need to click on the "Network" tab and then reload your website. When the page reloads, you can see how your browser loads each file.
You can also use third party tools like Pingdom and GTmetrix to see this. Among other useful information, these tools will also show you all the files that are uploaded and how long they took to upload.
When you see these files upload, you may start wondering how many plugins I should use on my site. How many plugins is too many?
The answer really depends on the set of plugins you are using on your website.
A single bad plugin can load 12 files, while several good plugins will add only a couple of extra files.
All well-coded plugins try to keep the files they upload to a minimum. However, not all plugin developers are so careful. Some plugins will load files on every single page load, even when they don't need them.
If you are using a lot of these plugins, this will start to affect the performance of your site.
The most important thing you can do on your WordPress site is to only use plugins that are well coded, have good reviews, and are recommended by trusted sources.
See our guide on how to find which WordPress plugins.
If you find that a WordPress plugin is affecting your site load, look for a better plugin that does the same job but better.
Next, you should start using caching and CDN to further improve the performance and speed of your site.
Another factor that you need to consider is the hosting of your website. If your hosting servers are not properly optimized, it will increase the response time of your site.
This means that not only the plugins, but the overall performance of your site will be slower. Make sure you are using one of the best WordPress hosting companies.
As a last resort, you can uninstall plugins you can live with. Carefully review the plugins installed on your website and see if you can uninstall some of them. This is not an ideal solution as you will have to compromise on speed features.
Advanced WordPress users can try managing how WordPress plugins upload files to their site. Doing so requires some coding knowledge and some debugging skills.
The correct way to load scripts and style sheets in WordPress is to use the wp_enqueue_style
and wp_enqueue_script
functions.
Most WordPress plugin developers use them to upload plugin files. WordPress also comes with easy features to unregister those scripts and style sheets.
However, if you simply disable the loading of those scripts and style sheets, this will break your plugins and they won't work properly. To fix this, you'll need to copy and paste those styles and scripts into your theme's stylesheet and JavaScript files.
This way you will be able to load them all at once, minimizing http requests and effectively reducing page load time.
Let's see how to easily unregister style sheets and JavaScript files in WordPress.
First, you'll need to find the name or identifier of the style sheet you want to unregister. You can locate it using your browser's inspection tool.
After finding the stylesheet controller, you can unregister it by adding this code to your theme's functions.php file or a site-specific plugin.
add_action ('wp_print_styles', 'my_deregister_styles', 100); function my_deregister_styles () wp_deregister_style ('gdwpm_styles-css');
You can unregister as many style handlers as you like within this function. For example, if you have more than one plugin to unregister the stylesheet, then you would do it like this:
add_action ('wp_print_styles', 'my_deregister_styles', 100); function my_deregister_styles () wp_deregister_style ('gdwpm_styles-css'); wp_deregister_style ('bfa-font-awesome-css'); wp_deregister_style ('some-other-stylesheet-handle');
Remember that unregistering these style sheets will affect the features of the plugins on your website. You need to copy the content of each style sheet you want to remove and paste them into your WordPress theme's style sheet or add them as custom CSS.
Like style sheets, you'll need to figure out the identifier used by the JavaScript file to unregister. However, you will not find the handle using the inspection tool.
To do this, you'll need to dig into the plugin files to find out the identifier used by the plugin to load a script.
Another way to discover all handlers used by plugins is to add this code in your theme's functions.php file.
función wpb_display_pluginhandles () $ wp_scripts = wp_scripts (); $ handlename. = "
After adding this code, you can use [manijas del plugin]
shortcode to display a list of plugin script handles.
Now that you have script handlers, you can easily unregister them using the following code:
add_action ('wp_print_scripts', 'my_deregister_javascript', 100); function my_deregister_javascript () wp_deregister_script ('contact-form-7');
You can also use this code to disable various scripts, like this:
add_action ('wp_print_scripts', 'my_deregister_javascript', 100); function my_deregister_javascript () wp_deregister_script ('contact-form-7'); wp_deregister_script ('gdwpm_lightbox-script'); wp_deregister_script ('otro-plugin-script');
Now, as we mentioned earlier, disabling these scripts will stop your plugins from working properly.
To avoid this, you'll need to combine JavaScripts together, but sometimes it doesn't work properly, so you need to know what you're doing. You can learn by trial and error (like many of us), but we recommend that you don't do it on a live site.
The best place to test is on a local WordPress installation or a test site with managed WordPress hosting providers.
If you know that you will need a plugin script to load on a specific page of your website, then you can allow a plugin on that particular page.
This way the script remains disabled on all other pages of your site and loads only when needed.
Here is how you can load scripts on specific pages.
add_action ('wp_print_scripts', 'my_deregister_javascript', 100); function my_deregister_javascript () if (! is_page ('Contact')) wp_deregister_script ('contact-form-7');
This code simply disables the contact-form-7 script on all pages except the contact page.
That is all for now.
We hope this article has helped you learn how WordPress plugins affect your site load time. You can also check out our ultimate guide to improve WordPress speed and site performance.
If you enjoyed this article, please subscribe to our WordPress YouTube Channel video tutorials. You can also find us on Twitter and Facebook.