When building a WordPress site, depending on your audience, you may wish to disable comments entirely. There are a number of reasons why. If your client doesn’t have the time to be manually checking the comment it can be a major issue for small firms. Comments can be inappropriate, include spam links or in some cases be even potentially libelous. A growing issue for businesses these days, particularly in Europe.
The trouble with comments
Even when comments are respectful, appropriate and contribute in a positive manner to a discussion they can still take considerable time out of a business day. They need to be reviewed, moderated if needed and approved. Sure, Akismet will send the worst offenders to the spam folder but there is still inevitably a manual job for someone.
But bear in mind that allowing comments have a real positive side. They can help continue the conversation ‘below the line’ and real insights can be added which add enormous value to the original article. In fact, on plenty of occasions, they are more interesting than the article itself! I don’t, of course, mean a generic ‘Nice post’ comment but rather a deeper response which could even contradict the entire article’s premise. It’s always good to get an opposing viewpoint for a lively discussion. Some articles remain relevant solely due to the discussion within its comments.
Now the benefits of this depend on the nature of your website. If you have a small business and you’ve just published an article about a new product launch you may not want to get alternative suggestions from commenters – as helpful as they may seem.
So let’s look at a number of ways to disable the default WordPress comments. We’ll cover how to do this for new posts, a single particular post, as well as disabling them entirely for existing articles and all future ones. I’m using our Production Pro WordPress theme for the screenshots.
Turn off comments for a single post
Say that you generally have comments enabled but on a particular post, you’d prefer to turn them off. It could be, for example, a legal statement or press release. Something that doesn’t need anything to be added to by commenters, even the well-meaning ones.
Edit the post in WordPress and click on Screen Options at the very top right corner.
Tick the Discussion checkbox. WordPress has always hidden some very useful functionality into this Screen Options slideout bar which many people miss. Now, scroll down to the very bottom, below the contents of the post and you’ll see the Discussion panel has appeared.
Here, you can untick the ‘Allow comments‘ checkbox. Save the post and comments will be removed from this particular article.
Turn off comments for future posts (but leave existing comments already published)
Now say that you have existing posts with comments pre-approved that you’re happy with. You have done the moderation and cleanups but you’d like to disable comments for any future articles.
WordPress has a built-in way to do this within the Settings > Discussion section.
Under the ‘Default article settings’ section untick ‘Allow people to post comments on new articles‘. This will turn off comments on all posts you publish from now on. But, importantly, keep your existing comments.
Also, depending on your theme, I’ve noticed that WordPress will still occasionally display a ‘Comments are closed’ message which can be annoying.
To hide this, try adding the following CSS snippet to Appearance > Customize > Additional CSS:
1 2 3 |
.comments-area p.no-comments { display: none; } |
Turn off comments completely – for existing posts, pages, and all future ones
Strange as it may seem there isn’t a built-in way to do this in WordPress natively that satisfies the requirement of removing comments for every post or page which includes existing comments so we’ll resort to a plugin. Fortunately, a clever tool by Samir Shah comes to the rescue. Disable Comments has over 1 million active installs on the plugin repository on WordPress.org which tells us something about the number of people who need this functionality. It seems like an obvious option to include within core WordPress but anyway, here we are.
So search for ‘disable comments’ within ‘Plugins‘ and install it.
Once installed you’ll have a new option with Settings called Disable Comments. Navigate to that and you’ll see a panel like this:
Choosing Everywhere will remove all comment-related functionality from your entire site. The plugin will even remove it as an option within the admin bar in WordPress – there will be no trace of comments to be seen.
The plugin also gives you the option to remove comments on certain post types. You can remove them from only pages for example but leave them visible on posts. I find that on most occasions it’s good to disable them from ‘Media’ items also. It’s rare unless you’re running a photography site, that you would want comments on individual images or video.
Plugin Features
For completeness and to provide its full list of features, the Disable Comments plugin will do the following:
- Removes any references to Comments within the Admin Menu and sidebar.
- Hide the Recent Comments and Discussion sections from the dashboard when you log in to your WordPress site.
- Hide the Discussions settings. Remeber that option we looked at earlier to hide comments on an individual post? The option will vanish as it’s no longer needed with comments being removed site-wide.
- Removes the ‘Comments’ widget (Appearance > Widgets) entirely so if you’re already using this somewhere, it a sidebar, for example, it will disappear.
- Disables RSS/Atom feeds and pingbacks from posts and pages. Any requests will be redirected to the post itself.
Summary
So that concludes three approaches to dealing with comments on your WordPress site. Let us know below the line which approach worked for you and why.
Also, do you leave comments switched on or not, and if not, why? Plus, if you use any particular tools to deal with comment spam and the moderation queue let us know which ones you recommend.