Speeding up your WordPress site
Over time, I often noticed that my WordPress site gets slower and slower to load. With attention spans so short these days, the faster your site, the better. I like to review my site periodically to see if if there is anything I can do to make sure its running fast and efficently. I made a few tweaks and have managed to reduce the load time substantially without really changing how my site looks and functions. Without a doubt, plug-ins are the #1 cause of slow-loading sites and here are some steps you can take to reduce their impact:
- Scan through your plug-ins and see which ones you aren’t using. Delete them. (You will have to deactivate them first.)
- If you have some rarely used utility type plug-ins, deactivate them. Now, although they shouldn’t impact your load time if they are deactivated, they will take up storage space and unnecessarily slow down backups. Consider deleting them as well, since you could always just re-install.
- If you’ve got Jetpack installed–which must of us do–look at your widgets and see if you might be able to use Jetpack alternatives instead of separate plug-ins.
- Go through Jetpack and deactivate any of its features you aren’t using.
- Install P3 Plugin Profiler. This cool plug-in will scan your site and let you know which plug-ins are taking the most time to load.
- Go through the load-time hogs and decided if they are really worth it. Perhaps there are faster alternatives. Maybe you don’t really need it.
I try to avoid plug-ins that change basic built-in behavior, particularly those that are pervasive throughout your site. I good way to think about this is determine what would be required if you decided to uninstall at a later time. Would it be as simple as uninstalling the plug-in or would it require editing many posts or pages.
A good example is Nextgen Gallery. It’s a great plug-in, but doesn’t use the native Media library; it creates its own separate one. If you use it, you are married to it. Should you want a divorce, you’ll have to manually edit posts, pages, widgets, etc. that use its custom features. Say they release a major upgrade that breaks your site. Sure you might be able to restore from a backup, but that’s a big headache. Of course, this means you may have to live without some cool features, but you have to balance the risks and rewards. (Here’s my post on my move from NextGen.)
A plug-in that just creates a nice new widget function is probably fine. I like plug-ins that just enhance functionality, but don’t require special shortcuts or other custom things. A lot of the lightbox display plug-ins are like this. They change the native behavior of clicking on an image link or gallery. If you decided you don’t like it, you just uninstall and the native functionality returns.
Widgets Dependent on Other Sites
I found that a plug-in that listed the top 5 songs I listened to via Last.fm was taking 25% of the load time! As much as I liked the convenience of this, the overhead cost was just too much. I was also using a plug-in that allowed me to embed URLs in my posts, showing a Facebook-like snippet. This guy was taking about 5% of the load time. Not really worth it.
I recommend you run P3 Plugin Profiler every couple months and see if you need to revisit your plug-ins. My plug-in load time was about 1.5 seconds before today’s pruning and I got it down to about a half second! I only have 12 active plug-ins and several of them are utility-type that don’t run every time the site is loaded. When I did have Nextgen Gallery installed, the plug-in load time was over 6 seconds! (Note: I’m not trying to pick on NG, but just illustrating how much a plug-in can impact load times.)
Well, I hope this post gives you some ideas on how to reduce your WordPress site load times.