The MainWP Comments Extension allows you to Approve, Disapprove, Mark as spam, Spam, Edit and Delete comments in all your child sites from one place. By using bulk actions you will save time for more important tasks or if you prefer you can still moderate your comments one by one.

Plugin Version: 6.0.0
 
WordPress plugin MainWP Comments

Plugin Features

The plugin, a vital Comment Addon for the platform, allows users to efficiently manage and oversee comments across multiple websites, enhancing workflow and productivity seamlessly. With its intuitive interface and robust features, it simplifies the process of moderating and responding to comments, ensuring a smooth user experience. Its compatibility with MainWP makes it a valuable addition for those seeking to streamline comment management tasks effortlessly.

Ensuring user engagement and interaction is effortless, thanks to this versatile tool. It empowers users to stay organized by centralizing comments, allowing for quick responses and moderation. The plugins seamless integration with MainWPs ecosystem enhances the overall efficiency of managing comments, making it a must-have for those looking to optimize their workflow effectively. With its user-friendly design and powerful functionalities, it simplifies the task of overseeing comments across various websites, fostering a dynamic and engaging online presence.

The plugins advanced features offer users a comprehensive set of tools to effectively handle comments, from moderation to response management. Its intuitive controls and customizable settings provide users with the flexibility to adapt to their specific needs, ensuring a tailored user experience. By centralizing comment management tasks, it streamlines the process, saving time and effort. With its focus on usability and functionality, it equips users with the necessary tools to maintain an interactive and user-friendly website effortlessly.

Keeping track of comments and interactions is made convenient with MainWP Comments robust notification system, alerting users to new comments promptly. This feature ensures that users can stay informed and engaged with their audience, fostering a sense of community and interactivity. By consolidating comment management into a single, user-friendly interface, it enhances the overall user experience, promoting better engagement and communication. Its seamless integration with MainWP further enhances its capabilities, making it a valuable asset for website owners seeking to manage comments effectively.

Users can leverage the plugins insightful analytics and reporting tools to gain valuable insights into comment trends and user interactions, empowering them to make data-driven decisions. By providing a comprehensive overview of comment activity, it enables users to optimize their engagement strategies and enhance user satisfaction. The plugins emphasis on user experience and efficiency makes it a valuable asset for website owners looking to create a dynamic and engaging audience experience. Its seamless integration with MainWP underscores its reliability and performance, making it an indispensable tool for comment management across multiple sites.

Specifications:

Release date: 11-10-2020
Last updated: 04-05-2026
Type: Paid
License: GPL 
Subject: Communication for MainWP
Compatibility: W5.x W6.x
Includes: Plugin
Language packs: English
Developer: MainWP

Rating:
4.5192307692308 1 1 1 1 1 (208 Votes)

Download by subscription!

You need to log in on the site and purchase a club subscription!

Share with your friends!

 

MainWP Comments Guide: Centralized Comment Moderation Across WordPress Sites

MainWP Comments is not meant to replace standard WordPress comments. Its purpose is different: it brings comment moderation from multiple child sites into one MainWP Dashboard. In this guide, we will walk through how to prepare the environment, install the extension, find the comments you need, apply bulk actions safely, verify the result on the child site, and troubleshoot common issues.

This article is for people managing multiple sites, support agencies, blog network editors, and administrators who regularly review pending comments, spam, and trash. We will not repeat the product's marketing description. Instead, we will go through a practical workflow, from checking the Dashboard and Child plugin to a real-world "morning moderation for client sites" routine.

The key idea is simple: the extension saves time only if you understand which actions can be handled centrally, which settings still belong to WordPress itself, and which operations require extra verification. Bulk comment moderation is useful, but it should never turn into blindly clicking "approve all" or "delete all".

MainWP Comments in a real-world centralized WordPress comment moderation workflow
Overall workflow: a filtering rule in MainWP Dashboard leads to a clear, predictable result on child WordPress sites.

What problem the extension solves and where its limits are

In standard WordPress, comments live inside a specific site: the administrator opens Comments, switches between Pending, Approved, Spam, or Trash, and then processes entries one by one or through bulk actions. That works fine for a single project. The problem starts when you have ten, twenty, or more sites: comments are spread across different admin panels, notifications arrive in different inboxes, and some client sites are reviewed inconsistently.

MainWP Comments adds a single place inside MainWP Dashboard where you can find comments from child sites and perform common actions remotely. According to the official documentation, the extension lets you approve, unapprove, mark as spam, restore from spam, move to trash, restore, edit, and permanently delete comments. One important detail: this is a MainWP Dashboard extension, not a standalone anti-spam filter for the public comment form.

That leads to the first boundary of the product. MainWP Comments helps you moderate comments that have already been submitted, but it does not replace Settings > Discussion, an anti-spam plugin, link policies, limits on old posts, or the rules that determine whether a new comment is published immediately or sent to moderation. If comments are disabled for new posts on a child site, the extension should not "enable discussions" for you. If spam is pouring in through the form, you need to configure WordPress and protection first, then deal with the accumulated queue from the Dashboard.

The second boundary is tied to MainWP's architecture. The extension works through the MainWP Dashboard and MainWP Child pairing. Dashboard sends requests to child sites, and Child verifies the signature and performs the allowed actions. As a result, MainWP Comments depends not only on the extension itself, but also on a stable connection to the child site, an up-to-date Child plugin, sufficient Dashboard resources, and correct authorization.

Who the extension is a good fit for

MainWP Comments is especially useful when comments are not just an occasional feature, but part of the site's regular maintenance routine. For example, an agency manages client blogs, an editor runs a network of content sites, a niche site owner reviews reader questions, or a technical specialist clears spam once a day and restores useful comments that were mistakenly caught by the filter.

  • Support agencies where comment moderation is part of the maintenance workflow and client reporting.
  • Editors managing multiple blogs who need to quickly find reader questions and avoid leaving helpful replies stuck in moderation.
  • Site administrators working with custom post types, if comments are enabled beyond standard blog posts.
  • MainWP Dashboard owners who already use MainWP for updates, monitoring, and site management.

When a different approach may be better

If you only have one site, the standard WordPress Comments screen may be simpler. If the main issue is automated spam before moderation, the first step is not MainWP Comments, but discussion settings, an anti-spam plugin, link limits, and manual approval rules. If you need a full client support system with tickets, assigned owners, and conversation history, this extension is not a replacement for a dedicated help desk platform either.

Practical takeaway: use MainWP Comments as a moderation hub, not as a security filter. It handles "where can I quickly process comments across all sites" very well, but it is not supposed to solve "how do I stop getting bad comments entirely".

What to check before installation

Before installing the extension, it is worth checking not just whether MainWP Dashboard is present, but also how cleanly the whole management environment has been set up. MainWP officially recommends installing Dashboard on a separate, clean WordPress installation rather than on a live client site. The reason is practical: the fewer extra plugins and public-facing features on the Dashboard site, the fewer conflicts you will run into and the easier it becomes to troubleshoot connection issues.

Every managed site should have MainWP Child installed and activated. That plugin creates the secure link between the child site and Dashboard. If the Child plugin is disabled, outdated, blocked by hosting, or requires a different authorization method, comments from that site may not appear correctly in the shared table.

Mini environment checklist

  • Dashboard is installed on a separate WordPress site with no unnecessary public-facing load.
  • The administrator has access to the Dashboard site and to the child sites that will be moderated.
  • MainWP Child is active on every child site, and the connection passes Test Connection.
  • The Dashboard server meets MainWP requirements for PHP, memory, cURL, and request execution time.
  • The Settings > Discussion settings on child sites have been reviewed, because those settings define how comments are handled.
  • You understand which sites can be moderated in bulk and which ones require separate editorial review.

Why WordPress discussion settings matter

WordPress itself defines the core logic of comments. In Settings > Discussion, the administrator decides whether comments are allowed on new posts, whether the author must provide a name and email address, whether only registered users can comment, whether discussions close on older content, how many nesting levels are allowed, when notifications are sent, and whether manual approval is required.

For MainWP Comments, these are the starting conditions. If one child site requires manual approval for all comments, while another publishes comments from previously approved authors, you will see a different picture in the shared table. That is not an extension error. It is the result of different discussion policies on different child sites.

Before doing bulk moderation, bring your rules into a clear, consistent structure. For example, for client blogs it often makes sense to require manual approval for a first-time commenter, limit comments with a high number of links, and keep questionable words in the moderation queue rather than deleting them without review. That approach reduces the risk of a useful comment disappearing before an editor sees it in MainWP.

Installing MainWP Comments and running the first Dashboard check

MainWP Comments is installed on the site where MainWP Dashboard is running. This is an important detail: you do not install the extension on child sites. Child sites keep MainWP Child, while the extension adds functionality specifically to the management panel. If you install the add-on on a child site, you will not get the centralized interface you expect.

The official MainWP documentation describes several ways to install add-ons: through MainWP > Add-ons > Manage Add-ons, through the standard WordPress plugin uploader, or manually over FTP. For most administrators, the first option is the most convenient because it uses the built-in extension manager and lets you find the add-on by category or name.

Installation and verification path for MainWP Comments in MainWP Dashboard
Installation path: Dashboard, add-ons manager, extension activation, and the comments page.

Installation through the add-ons manager

  1. Open the MainWP Dashboard site under an administrator account.
  2. Go to MainWP > Add-ons > Manage Add-ons.
  3. If your add-ons access key has not been connected yet, add it in the license section and verify it. Do not share that key with external text generators, contractors who do not need it, or public support tickets.
  4. Click Install Add-ons, find Comments through search or the administrative extensions category.
  5. Select MainWP Comments and install it using Install Selected Add-ons.
  6. After installation, activate the extension in the same section or through the standard WordPress plugins list on the Dashboard site.

If you are installing from a ZIP file, use the standard path WP Admin > Plugins > Add New > Upload Plugin on the Dashboard site. Leave the manual FTP option for cases where the WordPress admin cannot upload the archive because of hosting restrictions.

First check after activation

After activation, open the comments page in MainWP. In the newer documentation, the path is listed as MainWP > Sites > Content Operations > Comments. There you choose the child sites, set the status and search criteria, then click Show Comments. If the list is empty, do not assume the extension is broken right away: the selected sites may not have comments with that status, or the filter may be too narrow.

Test the page on a small set of sites. Choose one site where you know a pending comment exists, set the status to Pending, leave the keyword field blank, and display the list. Then repeat with Approved, Spam, and Trash. This kind of test shows whether the extension can see different comment states rather than just displaying a general count.

Safe verification: start with actions that do not permanently delete anything. For example, approve one test comment, then open that child site and make sure the comment appears under the correct piece of content.

The comments panel: sites, statuses, search, and date

The real value of MainWP Comments is not in the action buttons, but in the filtering. If you simply load all comments from all sites, the table quickly becomes noisy. A strong workflow works differently: first choose the sites or a group of sites, then the status, then a keyword or date range, and only after that perform an action.

MainWP documentation lists three important filters: status, keyword, and date range. The statuses follow WordPress logic: approved comments are visible on the site, pending comments are waiting for a decision, spam is hidden from visitors, and trash contains deleted comments that can still be restored before WordPress permanently removes them according to its own rules.

Statuses and actions are not always symmetrical

The action interface follows important logic. Unapprove appears for already approved comments because only a published comment can be sent back to pending. Approve appears for comments waiting for approval. Delete Permanently is available for comments already in Trash or Spam. This protects you from deleting ordinary comments too aggressively from the main list.

For administrators, this means one thing: if you do not see the action you need, first check the comment's current status. For example, you cannot "restore" a comment that is not in trash or spam. You cannot "unapprove" a comment that is already waiting for review.

Keywords and date as editorial tools

Keyword search is useful for more than just spam. You can use it for practical tasks: find shipping-related questions across several sites, pull comments about a campaign, review mentions of a problematic product, locate repeated complaints, or find comments containing the same domain. The date range helps you work through the queue in shifts: for example, start with comments from the last 24 hours, then move on to anything left from the week.

Do not try to review everything every day. It is better to create a simple routine:

  1. Start with Pending for a short recent period - this is where comments waiting for a decision will be.
  2. Then check Spam on the same sites - this is where you may find false positives and restore useful messages through Not Spam.
  3. Next, review Trash - it is worth checking before final cleanup, especially if several people handle moderation.
  4. Finally, spot-check Approved if you need to take down a comment that was published by mistake or edit its text.

Comment display limit

The MainWP documentation states that Dashboard returns up to 50 comments per child site by default. That is a reasonable balance between speed and readability, but on larger projects the limit may get in the way when you are working through a long queue. The official documentation also links to a gist with the mainwp_comments_widget_limit_string filter, which changes the displayed comment length in the widget.

The important thing here is not to confuse two different things: the number of comments found and the length of the comment text shown in Dashboard. If you need to see the full text of longer messages, you can apply a small PHP filter on the Dashboard site. If the problem is that the list itself is too large, it is usually better to narrow the results by status, date, and site.

Safe snippet for widget text length

The following example is based on the officially referenced MainWP gist. You add it not to child sites, but to the Dashboard site: either in the PHP section of MainWP Custom Dashboard Extension or in the active theme's functions.php on the Dashboard site. Using a dedicated snippet plugin or child theme is safer than editing the main theme directly.

<?php
// MainWP Dashboard site: show longer comment text in the Comments widget.
add_filter( 'mainwp_comments_widget_limit_string', 'my_mainwp_comments_widget_limit_string', 10, 1 );

function my_mainwp_comments_widget_limit_string( $length = false ) {
    return 500;
}

Do not set an excessively large value right away. Start with 300-500 characters, check the Recent Comments widget and the comments page, then decide whether you really need a higher limit. To roll it back, remove the snippet or restore the previous value. Do not edit the files of the MainWP Comments extension itself, because an add-on update may overwrite your changes.

Bulk moderation without mistakes: how to choose actions

In MainWP Comments, you can process comments one at a time or in batches. Bulk actions save the most time, but they are also where discipline matters most. A mistake with one comment is annoying. A mistake with a hundred comments across multiple client sites becomes an operational incident.

Before running a bulk action, ask yourself three questions. First: do all selected comments share the same context? Second: is the action reversible? Third: how will I verify the result afterward? If the answers are vague, it is better to split the selection into smaller groups.

MainWP Comments bulk actions for Pending, Spam, Trash, and Approved statuses
Statuses and actions should be read as a safe chain: find, review, apply, confirm the result.

Approve and Unapprove

Approve publishes a comment. Before approving, check not only the text but also the author's link, email address, IP, the context of the post, and the history of similar messages. A good comment may include a question, criticism, or clarification, while spam often disguises itself as a neutral phrase with a suspicious URL.

Unapprove sends a published comment back to pending. This is useful if a comment becomes questionable after a client complaint, contains outdated information, violates community rules, or was approved by mistake. The action is reversible: after review, the comment can be approved again.

Spam and Not Spam

Spam hides the comment and helps keep the queue cleaner. But if the site has a separate anti-spam plugin installed, it is important to understand how that plugin reacts to manual spam marking. Some solutions use those actions to train the filter. Do not mark useful comments as spam just because you want them out of view.

Not Spam is for false positives. A typical example is a regular reader who posts a comment with two links to useful sources, and the filter sends it to spam. Restore the comment from spam, then decide whether it should be approved immediately or stay in manual review.

Trash, Restore, and Delete Permanently

Trash is a soft delete. The comment is hidden, but it can still be restored. This is a convenient first step for questionable comments that are not spam but should not remain published: duplicates, accidental messages, empty replies, or inappropriate remarks.

Restore brings a comment back from trash. Use it when a comment was removed by mistake or when a client asks to restore the discussion. Delete Permanently is the final action for items already in trash or spam. It should only be used after filtering and spot-checking. Once something is permanently deleted, do not expect a simple rollback from the MainWP Comments interface.

Edit as a careful tool, not a way to rewrite meaning

Editing a comment is useful for fixing an obvious typo, removing accidentally posted personal data at the author's request, correcting a broken link, or adjusting formatting. But do not turn Edit into a way to rewrite the user's position. If a comment needs substantial changes, it is better to coordinate with the author or post a separate editorial reply.

Editorial rule: fixing technical errors is acceptable, changing the meaning of someone else's comment without a transparent reason is bad practice and undermines trust in the site.

Recent Comments Widget: a quick overview instead of a full audit

On the Site Overview page, MainWP Comments adds a Recent Comments widget. It shows the latest approved and pending comments, along with quick links to moderation or to the full comments page. This is not a replacement for detailed filtering. It is more of an operational awareness panel: the administrator can see that new messages have appeared on a specific site and decide whether a deeper review is necessary.

The widget is especially convenient for sites where comments do not require deep daily moderation, but still should not be ignored. For example, a client publishes news once a week and comments appear only occasionally. Instead of logging into that site's admin every day, you can watch the MainWP overview and open the detailed list only when activity appears.

How to use the widget in a support workflow

If you manage many sites, do not overload your process by fully reviewing every project every time. Split sites into groups. For active blogs, use the Content Operations > Comments page with filters. For low-activity projects, the overview widget is enough. For problem sites that attract frequent spam, combine the widget with a weekly check of Spam and Trash.

The widget is good at showing fresh activity, but it does not answer every question. If a client asks why an older comment disappeared, go to the full table and check statuses. If you need to find comments from a specific period, use the date filter. If you need to verify a repeated domain or author name, use the keyword filter.

When it makes sense to change the display length

A short comment excerpt makes scanning faster, but sometimes it gets in the way. On sites with technical questions, legal consultations, or long reviews, the first few words may be identical while the real meaning appears later. In that case, increase the display length through the filter, but keep a reasonable limit so the widget does not turn into a long feed.

Test the change on real comments. If the widget starts taking up too much space and interferes with other Site Overview blocks, lower the value again. There is no single "best" number here. What matters is the balance between readability and panel density.

Practical scenario: morning moderation for client sites

Let us walk through a real-world scenario for an agency that manages several client blogs. The goal is to process new comments in 15-20 minutes each morning without logging into every site separately, without deleting useful messages, and while leaving a clear record of actions for the client or internal team.

Practical MainWP Comments workflow for morning moderation across client sites
Moderation workflow: fresh queue, selective actions, result verification, and documenting questionable comments.

Goal

You need to find all pending comments across a group of client sites, approve the useful ones, send obvious junk to spam, leave questionable comments pending or move them to trash, and then confirm that the public result matches the editor's decision.

Preparation

Before starting, child sites should already be connected in MainWP, MainWP Child should be responding to requests, and the Comments extension should be active on Dashboard. Discussion rules should already be configured on the sites: comments from new authors go to moderation, messages with many links are held back, and notifications should not replace the daily review process.

Steps

  1. Open MainWP > Sites > Content Operations > Comments.
  2. Select the group of client sites where comments are part of daily maintenance.
  3. Set the status to Pending, choose a recent date range, and click Show Comments.
  4. Review comments in batches. Use Approve for clearly useful ones, Spam for obvious junk, and for questionable ones either leave them in the queue or move them to Trash if they violate the site's rules.
  5. Repeat the search with status Spam for the same period and identify false positives. Use Not Spam for those, then Approve if appropriate.
  6. Open one or two child sites on the public side and check the posts where comments were approved. The comments should appear under the correct content if the theme and discussion settings allow them to be displayed.
  7. If a comment is tied to a client request, record the decision in your internal support system or maintenance report.

Verifying the result

After approval, the comment should become visible on the child site under the relevant post. After unapproving, it should disappear from the public side and return to the queue. After marking as spam, it should no longer be visible to visitors. After moving to trash, it should remain restorable until WordPress clears it permanently according to its own rules.

If the public result does not match the action you took, do not repeat the action over and over. First open the child site directly, check its standard Comments screen, then review page cache, theme settings, and MainWP Child availability.

Nuance: comments on custom post types

The MainWP Comments page states that the extension can work not only with standard posts, but also with comments on custom post types. In practice, this is useful for directories, knowledge bases, courses, documentation, or other structures where discussions are enabled outside of regular blogs. But before applying bulk actions, verify exactly where such a comment appears. A custom post type may have its own template, its own permissions, or hidden comment output in the theme.

How it works alongside anti-spam and WordPress settings

MainWP Comments becomes much more effective when child sites are already protected from a flood of junk. If a site receives a large amount of automated spam, the central table simply moves the problem into Dashboard. The better approach is layered: WordPress holds questionable comments, the anti-spam plugin blocks obvious junk, and MainWP Comments helps the administrator quickly decide what to do with the remaining queue.

What should stay in WordPress

The Settings > Discussion options control the site's core policy. For most client sites, it is worth reviewing these points: manual approval for a first-time commenter, required name and email address, limits on comments with many links, closing older discussions where old posts constantly attract spam, and comment notifications if the client participates in moderation.

Do not enable every restriction at once without testing. For example, requiring registration may sharply reduce the number of legitimate comments. Closing older discussions is useful for news sites, but it may be harmful for a knowledge base where users ask questions on older content. The main goal is to set rules that fit the type of site, not rules driven by fear of spam.

What the anti-spam plugin does

An anti-spam plugin analyzes incoming comments before an editor sees them in the queue. Akismet, Antispam Bee, and other solutions address a similar problem, but they do so in different ways: some services use external validation, some try to work more locally, and some add extra form rules. The right choice depends on your privacy policy, audience language, comment volume, and client requirements.

MainWP Comments should not replace that layer. It helps you find a comment that was wrongly sent to spam, restore it through Not Spam, and make an editorial decision. But if the spam volume is too high, fix the source of the problem: the form, discussion settings, anti-spam, blocklist, and link limits.

How not to damage SEO and user trust

Comments can add useful clarification, questions, and genuine trust signals, but they can also weaken a page: spammy links, repeated text, aggressive promotion, personal data, or toxic threads. That is why the goal of moderation is not to "leave everything" and not to "shut everything down", but to maintain discussion quality.

For commercial sites, create clear rules: which links are acceptable, when a comment may be edited, when it should be deleted, when it should go back to pending, and who responds to questions. MainWP Comments speeds up the enforcement of those rules across several sites, but the rules themselves should be written before large-scale moderation begins.

How MainWP Dashboard sends the decision to a child site

To use MainWP Comments confidently, it helps to understand not just the interface buttons but also the action flow behind them. When an administrator clicks Approve, Spam, or another action in Dashboard, MainWP does not open the child site's admin panel in the browser for you. Dashboard sends a request to the connected site, and MainWP Child verifies that the request really came from your Dashboard and has a valid signature. Only then is the action applied on the child WordPress site.

The official MainWP documentation describes the Dashboard and Child connection as HTTPS requests using cURL and signed communication. For administrators, that translates into one simple practical point: if the connection is broken, comments may fail to load or an action may fail to apply. So when behavior seems strange, do not start by reinstalling the extension. Start by checking the connection for that specific site.

Why one problem site should not break the whole workflow

In a large network, sites almost always vary: one may be on weak hosting, another behind basic authentication, a third may have changed domains recently, and a fourth may sit behind a strict firewall. If you select all sites at once and get incomplete results, it becomes difficult to see where the failure actually is. It is much more reliable to work in groups: active client blogs, sites on the same hosting, projects for one client, or sites with the same comment policy.

If one site regularly slows down comment loading, move it into a separate review step. In your normal process, handle stable sites first and return to the problematic one afterward. That way the team does not lose time because of one connection issue, and moderation for the rest of the portfolio does not stop.

What "check the connection" means in practice

MainWP includes Test Connection. The documentation explains that this check shows what Dashboard itself can reach, and that does not always match what you see in your browser. A site may open manually for you, while the Dashboard server may receive a different response because of a firewall, DNS, SSL, basic authentication, or hosting restrictions.

If comments fail to load from only one site, check the following:

  • The site exists in MainWP > Sites > Manage Sites and is not marked as disconnected or requiring reconnection.
  • MainWP Child is active on the child site and is not blocked by a security plugin.
  • Test Connection returns a successful response rather than an access error, timeout, or invalid HTTP code.
  • If the site is protected by basic authentication, the credentials have been added to the connection settings.
  • If the site changed domain, protocol, or SSL certificate, the MainWP entry has been updated.

This kind of check may seem technical, but it directly affects moderation. MainWP Comments cannot process a comment correctly if the controlling Dashboard cannot reliably communicate with the child site.

Privacy and responsibility for comment data

Comments often contain personal data: a name, email address, author website, IP address, and sometimes a phone number, order details, or the full context of a request. MainWP positions Dashboard as a self-hosted approach where management happens on your own server instead of through an external SaaS panel. That gives you more control over the data, but it does not remove the administrator's responsibility.

In practice, that means: do not give access to MainWP Dashboard to people who do not need to see comments across all clients. Do not copy comment text into public support channels. Do not send screenshots showing email addresses or IPs without masking them. If a client asks you to remove personal data from a comment, use Edit, Trash, or another agreed process and record the decision in your work system.

Access rule: anyone who can moderate comments through MainWP Comments effectively gets access to user messages across multiple sites. Grant those permissions as a work tool, not as casual shared access just to "look at Dashboard".

Verifying results and rolling back questionable actions

After centralized moderation, it is important not just to see a message in Dashboard, but to confirm that the child site changed the way you expected. This matters especially when the site uses page caching, a non-standard theme, a separate comment block, or discussions tied to a custom post type.

What to check after each type of action

Result checks after actions in MainWP Comments
Action Expected result How to verify
Approve The comment is published and visible to visitors if the post and theme display comments. Open the post on the public side and refresh page cache if needed.
Unapprove The comment is hidden and returned to pending review. Check the public side and the status in the child site's standard admin screen.
Spam The comment is hidden and moved to spam. Open the Spam status in MainWP or on the child site.
Not Spam The comment is removed from spam, but it may still require separate approval. Check which status it moved to after being restored.
Trash The comment is hidden and available for restoration. Check the Trash status before final cleanup.
Delete Permanently The comment is permanently removed from spam or trash. Before using it, make sure the comment is definitely not needed for history or review.

Rollback without panic

The safest actions are the ones you can reverse quickly: Unapprove, Trash, Spam followed by Not Spam or Restore. The riskiest is permanent deletion. If the team is still learning the extension, prohibit bulk Delete Permanently in the normal workflow and reserve it for a separate weekly cleanup after spot-checking.

If a comment was approved by mistake, unapprove it and check the public page. If it was sent to spam incorrectly, restore it with Not Spam. If it was moved to trash, use Restore. If it was permanently deleted, the standard comments interface will no longer help, and you will need to look at site or database backups, assuming they exist and the comment is important enough to recover.

Why cache can interfere with verification

Page cache may still show the old comment state after moderation. That does not necessarily mean MainWP Comments failed. If a comment was approved but does not appear on the public page, check the child site's standard admin first. If the status is correct there, refresh page cache, review theme settings, and confirm that comments are enabled for that post.

On heavily cached sites, it is useful to add a line to your workflow: "after moderating a disputed page, clear the post cache". A full global cache purge after every comment is usually unnecessary unless comments are displayed inside a heavily cached area.

Common MainWP Comments issues and troubleshooting

Most problems with MainWP Comments are not caused by the comments list itself, but by the surrounding environment: the Dashboard and Child connection, permissions, filters, comment status, cache, or administrator expectations. Troubleshoot the symptom as a chain: "where are we looking - which status - is the site responding - what does the child admin show".

MainWP Comments troubleshooting for filters, connection, and result verification
Troubleshooting flow: symptom, cause, verification, fix, and re-check without unnecessary actions.

Comments do not appear in the table

Symptom: you choose a site and a status, click Show Comments, and the list is empty even though you expect comments to be there.

Possible causes: the wrong status was selected, the date range is too narrow, there are no comments in that state on the child site, MainWP Child is not responding, the site connection is broken, or the comments belong to a context you have not checked directly.

What to check: open the child site directly and view the normal Comments screen. Then in MainWP select only that site, remove the keyword, widen the date range, and check Pending, Approved, Spam, and Trash one by one. If that does not help, run Test Connection for the site.

How to fix it: restore the MainWP Child connection, narrow or widen the filter deliberately, and refresh site data through MainWP sync. If the problem repeats on only one site, look for the conflict there rather than across the entire Dashboard.

The action you need is missing from the menu

Symptom: you want to click Approve, Unapprove, Restore, or Delete Permanently, but that action does not appear on the comment row.

The cause is often completely normal: the action depends on the current status. Approve is for pending comments, Unapprove is for already approved ones, Restore is for trash, Not Spam is for spam, and permanent deletion is available for spam or trash.

What to check: switch the filter status and find the same comment in the correct group. If the comment is already published, look for it under Approved. If it was deleted, look under Trash. Do not try to force an action that does not match the item's current state.

An approved comment does not appear on the site

Symptom: the action shows as completed in MainWP, but the visitor does not see the comment under the post.

Possible causes: page cache, comments disabled for that specific post, the theme does not output comments for that post type, the comment is attached to a different post, or the action never reached the child site because of a connection issue.

What to check: open the standard Comments screen on the child site and find the comment. If the status there is Approved, the problem is more likely in public output, cache, or post settings. If the status did not change, check the MainWP Child connection and retry the action on a single comment.

Too much spam in the shared queue

Symptom: Dashboard shows a flood of junk comments, and moderation takes too much time.

MainWP Comments helps process the queue, but it is not responsible for preventing that queue from filling up. Review Settings > Discussion on child sites: the number of links that triggers moderation, manual approval, closing older discussions, blocklist rules, and author rules. Then configure or replace the anti-spam plugin.

How to fix it: do not start by mass deleting everything. First reduce the incoming volume of spam, then use MainWP Comments filters to clean up what has already accumulated. For problematic sites, temporarily shorten the date range and work through the queue in smaller parts.

Dashboard is slow when loading comments

Symptom: the comments list takes a long time to load, especially when many sites are selected.

Possible causes: a filter that is too broad, too many child sites, weak Dashboard resources, limited cURL timeout, connection problems on individual sites, or a general traffic spike on the server. MainWP documentation specifically warns that syncing and child-site requests require server resources.

What to check: select fewer sites at once, limit the date range, and verify Dashboard system requirements and connection stability. For large networks, it may be worth reviewing server resources and MainWP concurrent request settings so you do not overload the Dashboard.

After editing the snippet, the widget breaks or a PHP error appears

Symptom: after adding the comment length filter, Dashboard shows an error or the widget layout looks wrong.

The cause is usually the insertion point, PHP syntax, or a value that is too large. Remove the snippet, make sure Dashboard is working again, and then add the code through a safer mechanism. Do not place code inside extension files or edit WordPress core.

When rollback is the better choice: if the team does not actually need long comment text in the widget and the full comments table already solves the task, keep the default behavior. Any customization should have a clear practical benefit.

Useful rules for teams and client projects

MainWP Comments becomes truly valuable when it is part of an editorial process. The interface gives you buttons, but it does not decide who is allowed to approve questionable comments, how complaints should be recorded, when to reply on behalf of the client, or what to do with personal data inside a comment.

Separate responsibilities

If several people work inside Dashboard, assign responsibility levels. A junior specialist can send obvious spam to Spam and move duplicates to Trash, an editor can approve borderline comments, and a project lead can handle conflict cases. If you use separate MainWP team tools, review permissions before giving someone access to comments across all client sites.

Do not delete questionable comments immediately

For questionable comments, it is better to use reversible actions: unapprove them or move them to trash. Leave permanent deletion for obvious junk, and only after the team is confident in the rules. This is especially important on sites where comments may be part of user support, reviews, or public discussion.

Document unusual decisions

If a comment is removed because of personal data, legal risk, a client complaint, or a conflict, record that in the support system. MainWP Comments helps you perform the action, but it is not a full editorial decision log. For an agency, it matters that you can explain to the client why a comment was approved, hidden, or deleted.

Review sites with custom post types separately

If comments are enabled for a catalog, course, knowledge base, or documentation section, manually verify one comment first. Check where it appears, who can see it, how the theme outputs replies, and whether the comment is actually part of the site's support flow. Only then should you apply bulk actions.

Create a decision matrix for moderators

The team works faster when it does not argue over every routine comment type. Create a short internal matrix: what gets approved immediately, what goes to spam, what moves to trash, what is escalated to a senior editor, and what requires a client response. This matrix is especially important across sites with different subject matter. An external link in a technical blog comment may be a useful reference, while the same kind of link on a commercial services page may be unwanted advertising.

Example of an internal decision matrix for MainWP Comments
Situation First action Who reviews it
A normal question related to the post, with no suspicious links. Approve or leave it for an editor response. Moderator or project editor.
A comment containing multiple external links. Leave it pending and review the links and context. Editor or technical specialist.
Repeated promotional text across multiple sites. Spam, then review anti-spam settings. Moderator, and administrator if it continues.
A message containing personal data that should not be public. Unapprove or Trash, then coordinate the edit. Client account owner.
A conflict-heavy review or complaint. Do not permanently delete it; escalate it to a senior editor. Project lead or client.

This matrix should not turn into bureaucracy. Its purpose is to reduce randomness. When a new employee opens MainWP Comments, they should understand why one comment is approved, another goes to spam, and a third stays pending until the client decides.

Separate daily and weekly moderation

On a daily basis, process only what affects public communication: pending comments, false positives in spam, and fresh complaints. On a weekly basis, do a calmer cleanup: review trash, remove obvious old spam, check repeated domains, and review sites with unusual spikes in comment volume. This rhythm helps you avoid spending time every day on deep cleanup while also keeping junk from sitting there forever.

For agencies, it is helpful to adopt a simple rule: the daily pass should not include bulk permanent deletion unless there is an urgent reason. Permanent deletion is better handled in a separate time slot, when the person doing it is not rushed and can review the selection carefully. That reduces the risk of losing a useful comment that the client later asks you to restore.

Use site tags and client groups

MainWP lets you organize sites by client, tags, and groups. For comments, this is more practical than it may seem. An online store, corporate blog, knowledge base, and personal client blog may all have different communication rules. If you put them all into one selection, the moderator has to switch context on every row.

Create groups based on workflow meaning: "active blogs", "sites with comments only on articles", "projects requiring client approval", "sites without public comments". Then MainWP Comments becomes more than a shared table - it becomes a tool that reflects your actual service model.

What to include in a client report

Not every client needs a detailed list of every comment. But if moderation is part of your service, it is useful to show the outcome: how many comments were processed, how many were approved, how many were marked as spam, whether there were any questionable cases, and whether discussion rules need to be adjusted. You do not have to do this inside MainWP Comments itself, but the data from it helps you build a clear report.

Try to write the report in plain human language: "Reader replies on two new blog posts were approved, five promotional comments were sent to spam, and one review was left for approval". That format is better than a dry number because the client sees not just the action, but the purpose behind the work.

When not to overcomplicate the setup

MainWP Comments creates a temptation: once a central panel exists, it is easy to want a complex workflow immediately, add snippets, change widget length, split sites into many groups, and move the entire editorial process into Dashboard. That is not always necessary. Sometimes the best starting point is a simple setup: install the extension, test one site, process comments in one status, confirm the result on the public side, and only then add new rules.

Do not customize just for the sake of customization

The comment length filter is useful if moderators genuinely need more visible text. But if the team already opens the full comment before deciding, the snippet may be unnecessary. The same goes for large selections: you can try to pull more data into one table, or you can filter carefully by date and status. The second approach is usually clearer and more stable.

Do not move into MainWP what should be solved on the site itself

If the client has no discussion policy, MainWP Comments will not resolve borderline cases. If the theme does not display comments on the relevant custom post type, moderation in Dashboard will not make them appear correctly. If the site has no spam protection, the central panel will only show the accumulated junk faster. Fix the problem at the right level first, then use MainWP as a convenient control center.

Do not review the entire portfolio the same way

Different sites require different levels of attention. An active blog with ongoing discussion may need daily moderation. A brochure site may have comments disabled. A knowledge base may benefit from user questions, but spam on old articles should be limited. A client project in a sensitive niche may require approval before any questionable comment is published. A strong workflow takes those differences into account.

That is exactly why MainWP Comments is best treated as an editor's working tool rather than as one universal button. It speeds up actions, but the quality of the result still depends on your rules, site grouping, and verification on the child WordPress site.

MainWP Comments FAQ

Do I need to install MainWP Comments on every child site?

No. The extension is installed on the MainWP Dashboard site. Child sites only need MainWP Child, because that is what Dashboard uses to communicate with managed sites. Installing the add-on on a child site will not give you a centralized interface.

Can I moderate comments on custom post types?

The official MainWP Comments page says it supports comments for custom post types. Even so, before using bulk actions, test one example first: a custom post type may have its own template, hidden comment output, or separate access rules.

Does MainWP Comments replace Akismet or another anti-spam plugin?

No. MainWP Comments helps the administrator work with comments that already exist on child sites. Anti-spam tools and discussion settings determine which comments end up in moderation, spam, or published state. The best results come from combining those layers.

Why does the extension not show all comments?

First check the selected sites, status, keyword, and date. Then open the standard Comments screen on the child site and make sure the comments really are in the expected status. If one site's data does not appear at all, check MainWP Child and Test Connection.

Is it safe to use bulk deletion?

Bulk deletion is safe only when the selection is correct and the workflow is clear. For questionable comments, it is better to use Trash or Spam, because those states give you more options for recovery. Leave Delete Permanently for obvious junk after review.

Can I increase comment length in the widget?

Yes. MainWP documentation references the mainwp_comments_widget_limit_string filter. Add the snippet on the Dashboard site, not inside the extension files. Start with a moderate value, check how the widget looks, and keep the ability to remove the code quickly.

Will moderation through MainWP affect SEO?

Using MainWP for moderation by itself does not create an SEO benefit, and it does not automatically hurt SEO either. What matters is the quality of the comments on the page: useful discussion can help users, while spam, junk links, and toxic threads reduce trust. That is why moderation rules and public-page verification matter.

What should I do if the action completed, but the public page did not change?

Check the comment status in the child site's standard admin. If the status changed, the issue is likely related to cache, the theme, or post settings. If the status did not change, check the MainWP Child connection, verify site availability, and retry the action on a single comment after restoring the connection.

When MainWP Comments is the right choice

MainWP Comments is worth using if you already have MainWP Dashboard, several connected WordPress sites, and an ongoing need to moderate comments. The extension is especially useful when you need to move quickly through Pending, Spam, and Trash, find comments by keyword, handle multiple sites without switching between admin panels, and verify results on the child site.

Before rolling it out, check the environment: a separate Dashboard site, active MainWP Child, a stable connection, system requirements, WordPress discussion settings, and anti-spam protection on child sites. Then start with one or two sites, work through a safe scenario, document the team rules, and only after that apply bulk actions across the full group.

If you are ready to build that process, you can move on to the download section and get the WordPress version to test on your own MainWP Dashboard. Start with a small batch of comments, verify the result on the public side of the site, and gradually make the extension part of your support workflow.

The decision comes down to a simple standard: if comments across several sites are already taking time and require regular discipline, MainWP Comments gives you a clear control center. If comment volume is low or the real problem is spam volume, configure WordPress and protection first, then add the extension as the next layer of practical moderation.

By OceanTheme.org Editorial Team

 

You are not logged in to post comments.