There are a ton of plugins for WordPress out there and they range from useful to useless. It is hard to comb through all the garbage to find the gems but they are out there. Here I will list the cream of the crop, or at least the best in my opinion… whatever that is worth.
One thing to keep in mind when installing plugins is that for each plugin you activate on your site, the slower your site will become. This is due to one of the things that make WordPress sites so easy to customize, the hooks.
If you are not familiar with how hooks work in word press, I will give you a basic high-level overview of how WordPress builds a page or post.
At its basic level, WordPress performs a series of actions and there is quite a long list of action. You can check out this page (https://codex.wordpress.org/Plugin_API/Action_Reference) for a complete list of action and the order in which they are performed. For every action, a plugin can add a function to the queue to be executed during a particular action. These added functions are what allow the plugins to perform tasks at a particular time.
To go a little bit deeper into the weeds, let say your plugin needs to do something once the header is loaded. You may add an action to wp_head.
For a good intro to plugin development, check out this site (https://developer.wordpress.org/plugins/intro/).
Okay, so now you may be asking “what does this have to do with your top five WordPress plugins?” Well, when picking my top five, performance is key. Like I mentioned above, plugins add overhead because every added action requires processing even if it is to return nothing. Even an action that returns false or blank needs some processing.
With all the above in mind, here are my top five plugins for WordPress.
1. Jet Pack
Jetpack may be an obvious pick, but this is a great plugin by the WordPress team that does so much. There are tools for site analytics, security and social engagement. I altered my list because of this plugin since it has JSON API built into it. Now all features are not free, but you have a choice if you want to spend a few extra bucks for some added features. Quite honestly, the free features are pretty good.
Advanced Custom Fields is a great plugin for adding custom data to your posts. Using advanced custom fields you can create some really custom content. The possibilities with this plugin are numerous and I will be going into this plugin in greater detail in the future.
Page Builder allows you to customize your post and page layouts making it a great tool to make those pieces of custom content that break the mold of your theme. Page Builder is a fairly easy to use layout editor with many different widgets you can add to a post or page. You can get many different add-ons to make your layout even more customizable, but I find that you can do pretty much everything you need with the standard tool. Also, check out the Widget Bundles page for some great add-on features.
Enhanced Text Widget has some of the same features as Custom css-js-php except you can apply them to widget areas. Enhanced Text Widget goes beyond Custom css-js-php allowing you to place shortcodes and even HTML into a widget. It also allows you to enter plain text into a widget area as well.
So, there you have it. If you agree or disagree, let me know by posting a comment.
One thing that I failed to put on my list is a good form tool, but that may be a post all in itself.