---
title: "How to Disable Comments in WordPress (With or Without a Plugin)"
url: https://nexterwp.com/blog/disable-comments-in-wordpress/
date: 2026-06-30
modified: 2026-06-30
author: "Aditya Sharma"
description: "Want to turn off WordPress comments? Here is how to disable comments on new posts, existing posts, pages, and media, with or without a plugin, step by step."
word_count: 1493
---

# How to Disable Comments in WordPress (With or Without a Plugin)

#### Key Takeaways
- WordPress turns comments on for every new post by default. You switch them off under Settings > Discussion.- That checkbox only affects future posts. Use Bulk Edit to close comments on content you already published.- The Disable Comments plugin (1M+ installs) switches everything off site-wide in one click, including the admin clutter.- Developers can disable comments with a few lines in functions.php and skip the plugin entirely.- Disabling comments does not hurt your SEO, and it does not delete content, only the comment form.

 

A friend who runs a small accounting site messaged me in a panic last month. Forty-seven comments overnight, every one of them pushing counterfeit handbags, all sitting under pages that never asked for comments in the first place. Her site has no blog. It has no reason to accept a single comment. WordPress was just leaving the door open by default.

If that sounds familiar, you are in the right place. WordPress enables comments on every new post out of the box, and on a lot of sites that one setting does nothing but invite spam and create moderation work. The good news: you can shut it off completely, and you get to pick how far you go, from a single checkbox to a one-click plugin.

Here is every reliable way to disable comments in WordPress, when to use each one, and how to clear out the leftover comment clutter in your admin afterward.

Table of Contents

## Why turn off WordPress comments?

Not every site wants a comment section. A brochure site for a law firm, a portfolio, a documentation hub, a landing page: none of them gain much from open comments, and all of them attract bots the moment they go live. People usually switch comments off for three reasons:

- **Spam.** Automated bots hammer the default comment form with links to sketchy stores and malware.- **Time.** Every comment is a moderation decision. On a site that does not need discussion, that is wasted effort.- **Focus.** A pile of empty or low-quality comments under a sales page makes a business look neglected.

## First, decide: disable comments or just fight spam?

Turning comments off is not the only option, and it is not always the right one. If readers genuinely reply to your posts, you want to keep that and filter the junk, not throw the feature away. A quick way to choose:

- **Keep comments and filter:** blogs, news sites, anything where readers reply. Pair moderation with a spam tool.- **Disable comments:** brochure sites, portfolios, stores, docs, or any post type where comments serve no purpose.

***Also Read:** [How to stop WordPress comment spam](https://nexterwp.com/blog/stop-wordpress-comment-spam/) if you would rather keep comments and filter the junk instead.*

If you landed on disable, here are four built-in methods, from a single checkbox to a full site-wide switch.

## Method 1: Disable comments on new posts (Settings > Discussion)

This is the master switch for everything you publish from now on.

- In your dashboard, go to **Settings > Discussion**.- Under *Default post settings*, uncheck **Allow people to submit comments on new posts**.- Scroll down and click **Save Changes**.

![WordPress Settings Discussion screen showing the option to allow people to submit comments on new posts](https://iad.microlink.io/GbhYB_PZbacmLNyeBktIJEU8Q7y0Qn2Aq0e_zzgtMOykyeqKHaLi12bv4w1G_BGvr4gw3whZCxe8CaswSmYJCg.png)The Settings > Discussion screen is where you control comments site-wide. Source: WordPress.org documentation.

That handles future content. One important catch: this setting does not touch posts and pages you already published. WordPress saves the comment status on each post when you create it, so existing content keeps whatever setting it had. To fix those, use Method 2.

## Method 2: Disable comments on existing posts and pages

To close comments on content that is already live, use Bulk Edit.

- Go to **Posts > All Posts**.- Tick the checkbox at the top of the list to select every post on the screen.- From the **Bulk actions** dropdown, choose **Edit** and click **Apply**.- In the Bulk Edit panel, find the **Comments** dropdown and set it to **Do not allow**.- Click **Update**.

Repeat the same steps under **Pages**. If you have more posts than fit on one screen, raise the per-page count first under *Screen Options* in the top right. To change a single post, open it, turn on the **Discussion** panel from the options menu, and uncheck **Allow comments**.

## Method 3: Auto-close comments on older posts

If you want comments open for a while and then closed automatically, WordPress has a built-in timer. Go to **Settings > Discussion**, check **Automatically close comments on posts older than [X] days**, and enter a number such as 14 or 30. After that window, WordPress disables the comment form on older posts while leaving any existing approved comments visible. It is a useful middle ground for active blogs, where older posts tend to attract the most spam.

## Method 4: Turn off comments on media, and delete existing comments

Two cleanup jobs people forget:

- **Media attachments.** WordPress can attach comments to image and media pages. The Settings > Discussion checkbox covers new uploads going forward. For older attachments, Bulk Edit the Media library the same way you did with posts.- **Existing comments.** Disabling the form does not remove comments that already came in. To clear them, go to **Comments**, select all, choose **Move to Trash** from Bulk actions, and apply. Empty the trash to delete them for good.

## The one-click way: the Disable Comments plugin

If you would rather not work through settings page by page, the [Disable Comments](https://wordpress.org/plugins/disable-comments/) plugin does it all at once. It has passed one million active installs, holds a 4.7 star rating, and is tested up to WordPress 7.0, so it is actively maintained.

Install it from **Plugins > Add New**, activate it, and open **Settings > Disable Comments**. You can switch comments off everywhere in one click, or limit it to specific post types. The plugin also hides the clutter most manual methods leave behind: the Comments link in the admin menu and admin bar, the comment widgets, the comment RSS feeds, and the Discussion settings page itself.

![The Disable Comments plugin page on WordPress.org showing more than one million active installations](https://iad.microlink.io/VFbv-bbCSHV8PQ75qJ3_eTNLdPojDyFFQnihn0uaI4FClAOKm-FVjz8P9TbpPEuufzGR2Wi0-6mo7tTEpkqXFw.png)The Disable Comments plugin has over 1M active installs and switches comments off site-wide. Source: WordPress.org plugin directory.

***Also Read:** [How to customize the WordPress admin dashboard](https://nexterwp.com/blog/customize-wordpress-admin-dashboard/) to tidy up the rest of your back end.*

For people running several sites, this is the fastest route. For a single site where you want zero extra plugins, the code method below does the same job.

## The developer way: disable comments with code

Prefer to keep the install lean? Drop this into your theme’s functions.php file, or better, a small must-use plugin. It closes comments everywhere, removes comment support from every post type, and hides the admin menu item.

`// Remove comment support from every post type.
add_action('admin_init', function () {
foreach (get_post_types() as $type) {
if (post_type_supports($type, 'comments')) {
remove_post_type_support($type, 'comments');
remove_post_type_support($type, 'trackbacks');
}
}
});

// Close comments and pingbacks on the front end.
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);

// Hide any existing comments.
add_filter('comments_array', '__return_empty_array', 10, 2);

// Remove the Comments item from the admin menu.
add_action('admin_menu', function () {
remove_menu_page('edit-comments.php');
});`

A lot of developers favor this approach because it lives in version control and travels with the site instead of sitting in the database. If you manage client sites, it pairs well with a hardened setup. Our [ultimate WordPress security guide](https://nexterwp.com/blog/ultimate-wordpress-security-guide/) covers the rest of the checklist.

## Clean up: remove Comments from the admin menu and bar

Even after comments are off, WordPress often leaves the Comments link sitting in your admin menu, the dashboard At a Glance box, and the top admin bar. Both the plugin and the code snippet above remove it. If you went the manual settings route, the small code block clears the menu item on its own.

A tidy back end is part of a tidy site. If you like keeping the WordPress admin lean, the Nexter Extension gives you a set of controls for trimming admin clutter and shaping the dashboard around how you actually work. While you are at it, you can also [disable the WordPress admin bar](https://nexterwp.com/blog/disable-wordpress-admin-bar-for-all-users-except-administrators/) for non-admin users.

## Frequently asked questions

### Does disabling comments hurt SEO?

No. Comments are not a ranking requirement. Removing an empty or spam-filled comment section has no negative effect on search rankings, and cutting spammy outbound links can actually help.

### Will disabling comments delete my existing comments?

No. Turning off the comment form only stops new comments. Your existing comments stay in the database until you delete them from the Comments screen.

### Can I disable comments on posts but keep them on one page?

Yes. Use the per-post Discussion panel from Method 2 to allow or disallow comments on any single post or page, no matter what the site-wide default is.

### Is a plugin or code better for disabling comments?

For most site owners, the plugin is simpler and safer. If you are comfortable editing functions.php and want to avoid an extra plugin, the code method is just as effective.

## Suggested reading

- [How to stop WordPress comment spam](https://nexterwp.com/blog/stop-wordpress-comment-spam/)- [Best anti-spam plugins for WordPress](https://nexterwp.com/blog/best-anti-spam-plugins-for-wordpress/)- [How to stop spam registrations on WordPress](https://nexterwp.com/blog/how-to-stop-spam-registrations-on-wordpress/)- [How to customize the WordPress admin dashboard](https://nexterwp.com/blog/customize-wordpress-admin-dashboard/)- [How to disable the WordPress admin bar](https://nexterwp.com/blog/disable-wordpress-admin-bar-for-all-users-except-administrators/)

#### Stay updated with Helpful WordPress Tips, Insider Insights, and Exclusive Updates – Subscribe now to keep up with Everything Happening on WordPress!

Subscribe