20 of My Favourite WordPress Plugins
Since I started working with WordPress almost 7 years ago, I’ve had a lot of time to check out WordPress plugins and try them on client sites and on my own websites. Here’s a list of some of the plugins I’ve found most useful.
I’m putting WordFence as number one because it’s basically one of the main reasons why I’m still able to take holidays without worrying that my clients’ websites will be hacked while I’m gone. While I do include other security features when launching a new website, WordFence’s firewall tools keep a ton of malicious site visitors at bay. While I still recommend manged WordPress hosting with security monitoring, WordFence is a good fall-back for smaller WordPress websites.
One of the main benefits of hiring someone like me to create a custom designed WordPress website is the ability to create custom layouts. While the new Gutenburg editor is coming closer to offering this in WordPress, as a designer Advanced Custom Fields offers greater control over the layout and design of the content. I can build custom layouts and feel confident that the client won’t simply delete them. Custom PHP code in the theme file detects when an admin area is left empty and hides the content section.
Here’s a gallery of custom layouts built with Advanced Custom Fields:
While I’ve become comfortable with adding the theme code for ACF and have created my own snippet collection of ACF’s code, I find that the ACF Theme Code plugin helps save time on development, especially with more complicated nested or repeating fields. Because the Theme Code plugin also outputs the field names, I don’t have to spend hours troubleshooting my code just to realize there is a typo or spelling mistake in the field name.
ACF Theme Code Pro is only $48 AUD and worth it if you are likely to end up using repeating fields. The developer license can be used on an unlimited number of websites.
It seems like this plugin has become a little unpopular lately because of their choice to switch to re-captcha V3. I still find that it’s one of the best free form plugins for WordPress from a developer’s perspective. It’s not a drag and drop builder, but I’ve found that for long or complex forms drag and drop builders can be slow to load in the admin area. The numerous free extensions for Contact Form 7 allow many additional features such as multi-page forms, conditional fields, and saving form submissions to a database. The HTML/shortcode format of the editor allows me to customize the code around the form elements. Here are some examples of forms built with Contact Form 7:
WooCommerce is the most popular WordPress plugin for eCommerce. The number of features and extensions available for Woo make this my favourite eCommerce plugin as it can create just about any custom shopping experience required. Though it may take clients some time to get used to the Woocommerce product admin, the ability to duplicate products makes it easy for me to create sample products with different options which they can copy for future use.
Here are some of the other features that can be added to WooCommerce through extensions:
- Additional payment methods
- Currency switchers – or automatically detect the user’s currency using geolocation
- Custom product fields
- Subscription products
- Connect subscriptions to private content on the website
- Advanced shipping methods
- Coupons and discounts
- Product variations with different prices
WooCommerce also has their own mobile app for shop managers.
WPStageCoach is a paid plugin which allows you to quickly duplicate your WordPress website in order to make changes and updates without affecting your live site. I find this plugin invaluable when it comes to making updates smoothly on live websites. It also has an import feature to quickly and safely migrate the changes to the live site. Although this plugin still has some kinks and doesn’t work with all servers or websites, it has still made my life less stressful. Although it is still preferable to have a staging solution which is provided by the web server as it is more likely to be compatible, I find this plugin useful for sites on basic hosting plans that don’t come with a staging feature.
When Contact Form 7 falls short, I’ve found Gravity Forms can usually do the job, especially for complex registration forms involving online payments. With a starting price of $59 US per year, Gravity Forms offers a drag and drop builder, conditional fields, and saves form submissions in the admin area. Their Pro plugin at $159 US per year includes Paypal Payments and connections to project management and accounting tools such as Freshbooks, Trello, Slack, Highrise and more. Stripe payments is available with their Elite bundle at $259 US annually.
I love The Events Calendar for its simplicity and easy set up. The calendar styles are minimal and match most website themes without needing custom styling. It’s also a responsive calendar. For clients who don’t have events often enough to need a calendar view, there is a list view, and website visitors can change views using tabs.
While I highly recommend managed WordPress hosting which includes scheduled offsite backups, for websites on basic shared hosting I recommend installing Updraft Plus Backups and scheduling it to make automatic backups.
WordPress functionality can be extended using custom post types to create content sections that are similar to WordPress posts or pages. Post functionality can be modified based on what fields and options are required. For example, a custom post type for a banner image can just have a title and a featured image. A custom post type built to display company team member bios can have a photo, text area, social media links, etc. Custom Post Types can have their own design and layout customized through a template file. The Custom Post Type UI plugin makes it quick and easy to set up and customize additional post types, whereas creating them using PHP in the theme functions.php file can take time and requires PHP experience. If you’re building themes for re-sale or for the WordPress.org theme directory you will want to stick with adding the CPT by editing functions.php.
The default WordPress text widget is pretty basic. This plugin adds TinyMCE, also known as the classic WordPress editor, as a text Widget that can be used in any widget area on your site.
I use Yoast SEO on most of my client’s websites and on my own website. It provides custom fields for editing the SEO Title and Description tags for each page and post as well as automatically generated SEO sitemaps. Submitting the sitemap to Google and Bing allows the search engines to keep track of new pages on your site.
This handy plugin lets you display different widgets on each page without creating custom page templates for each page. This is especially helpful when your site has a lot of pages with different sidebar content. Creating a custom page template with a custom widget area for each page could get out of hand (your widgets page would get very crowded). This widget adds a list of pages with check boxes below the widget box. You can select whether the checked pages are included or excluded from showing the widget.
This plugin uses the WordPress page child/parent relationships to create an automatically generated sidebar menu of child pages. If you have a large site with many drop down menus and want to include a sidebar menu of child pages, this plugin can save you from having to create custom menus for each sidebar. Downside: If you use any custom post types, external links, or pdf files in your menu you will want to create a custom menu instead.
If you’re going to be including Google Analytics tracking on your site, this plugin makes connecting analytics easy. The admin dashboard provides a basic overview of site visitor statistics to clients. Monster Insights Pro offers extensions for enhanced eCommerce tracking, GDPR compatibility, and event tracking. I offer a group rate on Monster Insights Pro for my clients.
The Disable Comments plugin is especially helpful for business websites or static websites where the site owner isn’t interested or doesn’t have time to manage WordPress comments. It saves your comment admin section from filling up with spam.
In the past while adding features to an eCommerce website, I ran into problems with conflicts between a couple extension plugins. I found that Booster Plus for WooCommerce offered a ton of extensions that were all compatible with each other because they are built and maintained by the same plugin authors. I frequently use this plugin to add special features to WordPress such as multi-currency, name your price products, coupons, and shipping options. I have an unlimited site licence for this plugin so I offer it to clients for free when I set up their eCommerce website.
I often use this simple plugin to display testimonials on my client’s websites. It includes a rotating widget and a short code page that displays all the testimonials. Quotes or testimonials can be easily added through the admin area.
This plugin can be used to speed up your website by removing CSS and JS files that have been added through plugins but are not necessary on every page of your site. While this tool isn’t a replacement for a properly coded website, it can be helpful for quickly speeding up sites that are built using themes. I recommend that only experienced WordPress developers use this plugin as you risk turning off a file that is essential to your site.
WP All Import is a great tool for importing large amounts of data from a spreadsheet or CSV file into WordPress posts. It’s a major time savor if you’re importing data from another CMS or application where you can export as a CSV file. While I don’t use this plugin very often it still makes the list for the amount of time it has saved me in the past and for being a fallback when other import/export methods fail.
That’s it for now! If you’re looking for an experienced WordPress developer, I provide custom design and development services for WordPress in Victoria, BC. Contact me for help with your WordPress website.