5 Ways to Make Default WordPress Comments Better

A few weeks back I wrote an article about 7 reasons to avoid Disqus & similar 3rd party commenting system, pointing out all the flaws and problem that you might have to face if you stick with these commenting system and sometime there is even no way of coming back to the default WordPress comments, even though you have understand what a blunder you have made. Starting from that post I have received quite a few request on comments and email about how to improve the default WordPress commenting system.

Some realized the benefits of the default WordPress commenting system compared to the 3rd party ones but the only reason they still wanna use the 3rd party commenting system on their website is because of the amazing features that they provide. But, if they can get most of those cool features within the default WordPress commenting system, then they won’t go back to the third-party ones.

So, I spend my last few weeks finding out the loopholes (in terms of feature) of default WordPress commenting system and a way to incorporate those cool features into the default WordPress commenting system. No matter how much I love the extraordinary coding and cache functionality of default WordPress comment system and needless to say may other good things which I’ve already described in my previous article, but I do admit that it does lack quite a few important features which lure people towards these bad 3rd party commenting systems.

Before taking a dive into the cool stuffs, I must admit that this post is not just about adding a bunch of plugins into your website and activating it. In my quest to make default WordPress comment more feature rich, I have to write some code myself to give the proper nexus feel. But anyways, the point is, if you are not familiar at all with coding or how to add a function into your functions.php file or how to add a jQuery code into your website, you might find enabling some features a little difficult. But if you are well familiar with these basic things then we are all set to go.

1. Allow Anonymous Users to Edit Comments

This is one of the most favorite feature of popular 3rd party commenting system. So, if you post a comment and you feel like you have made a typo or you need to add some more texts into it, you can simply edit the comment and post your new thoughts. But this feature doesn’t comes with WordPress CMS default commenting system. But you can easily achieve this feature in your website just by using a plugin named Simple Comment Editing.

Simple Comment Editing

This tiny little plugin will allow anonymous users to edit and/or delete their comments for a period of time. The time period is set up by the website admin. This is really a great plugin and I use it on this website of mine. If you wanna increase the amount of time users are allowed to edit their comments. You can do that simply with a basic function like this:

add_filter( 'sce_comment_time', 'edit_sce_comment_time' );
function edit_sce_comment_time( $time_in_minutes ) {
return 60;

Not just this, there are many other hooks available for this plugin here at github. Which you can take advantage of, if you know when you are doing…

2. Create Account with Social Login

Though many people think this is a great thing, but I personally believe this is really not something that I should use on my website or suggest anyone to use this feature. Because if you are asking your user to register before they can even post a comment on your website, then they are simply just going to walk away from commenting. As they already have many things to do.

But every website has different needs and user base. So, if you really want to add a social registering system like we are used to see on disqus and other 3rd party commenting system, you should definitely try out the plugin named WordPress Social Login.

WordPress Social Login

With this plugin you can enable any social network through which your visitors can register in your website. But again I’m saying, I do not like these sorts of restrictions for basic task. It just makes simple things complicated and people just walk away from engaging with your website and doing basic stuffs. So, do not use this unless you really wanna use it on your website.

3. Mentioning other Commenters

This is another great feature that many of those 3rd party commenting system provides. You can mention any of the previous commenters in your comment and they get notified via email. Now this can be done in two ways, one is mentioning the user like we do in facebook, which I’m going to share in this point and the next one I will share at the point below this.

Mention comment's Authors

If you want to enable the facebook like mentioning system in your WordPress default commenting system, you should opt for a plugin named Mention Comment’s Authors. With this plugin your website commenters will be able to mention any previous commenters on that particular post and works just like facebook mention system. You just have to start with @ and then start typing the name. Cool right?

4. Better Email Notification to Commenters when Reply Received

This is one of the most important loophole in WordPress default commenting system. Though there are a few plugins and modules available to get rid of this issue, but let’s be honest, none of them work well. As an example WordPress’s own Jetpack plugin comes with a subscription module which gives two options to the users. One is to subscribe for the reply received on their comments and the other is to subscribe for the future posts by the author/website.

No matter which one you select, WordPress will send the user a notification to confirm their subscription. Which is great in terms of getting less spammed and being sure that the people who are opted into the subscription are really interested on getting emails from you and will not click “Spam” while they receive on their inbox.

But no matter how good the intention of most of these subscription plugins are, most people will never click the conformation link. Because people are lazy and clicking a conformation link feels like driving a car to the other end of the city. The other reason of people not clicking on the conformation link is because sometimes these verification emails land onto their “Junk/Spam” folder and most people barely look into it.

Subscribe To Comments Reloaded

The solution of this whole fiasco is to use a plugin which does the exact job much better way while reducing the user side effort just to receive updates on their comments. I personally use and suggest everyone to use a plugin named Subscribe To Comments Reloaded.

This small plugin does the job so perfectly like no other big brand plugin can do it. After you install this plugin into your website, it automatically subscribe all commenters for the replies posted on their comments, unless the manually turn it off from the dropdown. But with the default settings they get email notification when somebody replied to his comment. If he wants to receive updates for all the comments posted for that article, then he has to choose “All new comments” from the dropdown.

This plugin is a great alternative of the above mention system I’ve talked about. As this also send an email notification to the commenter when any reply gets posted under his comment.

5. Getting rid of Blank Comment Posting

The blank comment posting issue is one of the most hilarious issues present in WordPress comments. If a visitor visit your article and scroll down to the “Post Comment” section and just click the Post Comment button, instead of filling up the form, WordPress will take the user to the PHP page that handles the user comment and show a wired error message, without giving a link to getting back to the page/post when the user has accidentally clicked the comment button.

Now the only option the user has is to click on the browser’s back button and if it is disabled by some website’s theme then he is completely screwed. Unfortunately to get rid of this situation I didn’t find any plugin and hence I’ve to write code by my own. Anyways, there are two ways you can handle this situation.

Via PHP Function

If you add the following php function in your WordPress theme’s functions.php file, it will show the use a hyperlink to get back to the post from where he has come to the error page. Here is the code:

Via jQuery Magic

You can also add the following jQuery code into your website to create a client side validation before making the “Post Comment” button enable. So, by default the “Post Comment” button will be disabled so that the user cannot click it even accidentally. But when the user starts filling up the comment form and when all the validation gets checked, then the comment button gets auto enabled so that the user can post the comment. You can see this exact technique in this website’s comment form. I’m sharing the jQuery code that I’ve written for my website and if your theme is also coded following all WordPress coding standards and functions then it will work right out of the box. If your theme already has a custom.js file then add it within that file otherwise use a plugin like Insert Headers and Footers to add the following jQuery script into the footer of your website.

Please note I’m sharing these scripts with you for free of cost. So do not expect any free support from my end if you face any issue implementing them. If you need any support contact me for my paid support service.

Even if you use the jQuery based validation on your comment form, I will still suggest you to add the PHP based function in your website, in case someone visit your website from a JavaScript blocked browser. The jQuery validation won’t work from them and you will only have the PHP based option. In fact this is the exact reason WordPress uses that php based validation instead of using any client side validation.


So, now if you wanna quit using the 3rd party commenting system like disqus and others and make your website faster while taking all the benefit of awesome WordPress coding and amazing features of 3rd party commenting system, I think this is the right time to do it.

As I’ve already showed you how you can make your default WordPress commenting system more awesome and amazing, it’s your time to give it a try.


So, have you ever used any of the plugins I’ve mentioned above? Do you use any other plugin besides what I’ve mentioned above to enrich the feature of your commenting system? I would love to hear your thoughts about this matter in the comment section below. Let me know what you guys think about these features, what other features you might want to see incorporate into WordPress default commenting system.

You can also connect with me via twitter @iSaumya. If you like this post, please don’t forget to share it with others who might enjoy reading it. Also if you have any other ideas or request about future posts, you can let me know in the comment section below or via twitter.

Published by Saumya Majumder

Passionate, Hard Worker. Love to develop new things, Singing Songs, playing computer Action Games, tweaking with computer languages, Riding Bikes, Love long driving, love books, web & Photography. You can follow me on twitter @iSaumya


  1. Thanks Saumya, for this follow-up article on comment-functionality. Some of it you’ve told me already in reaction to my questions in you earlier article, but tips 3 and 5 are new to me (and like you I have no need for people to login using social media). Since my page already uses jquery I’m guessing the effect on pageload time would be small?

    I am wondering if you use the plugin in tip 4 on this site because you seem to have more options and it’s presented better than after installation on my own website. Have you added custom css en html in the options? And the subscribe blog option f.i. is that Jetpack? Anyway, thanks for the article that will make commenting on my website a better experience.


    • Hey Hans,
      Thanks for your comment. You see moderate about of jQuery doesn’t make a website slow, though badly coded jQuery code, no matter how tiny it is, can make your website load significantly slower. Also the plugin that I’ve mentioned in tip 4 is used by me all the time. Even in this website I do use the plugin that I’ve mentioned in tip 4 and of course this website has tons of custom designs, so obviously it looks a little better the fresh install look. You are also right, I do use Jetpack Subscribe module to show up that check-box for subscribing my blog.
      I’m glad that you liked this article and it helped you 🙂

      • Odd, I haven’t received notice of this reply of yours although I’ve set the subscription. Don’t know why.

        I’ve got it all running now, and the javascript works fine. By the way, the word charecter in the js should be spelled character. Also the js message says comments must be at least 15 characters but validates for at least 16 characters. You might want to correct that (also on your website), and I found it better to add an extra < br / > (you might want to close the < br > too) in the php so the back link doesn’t stick to the error-message as much. I find a bit whitespace often enhances readability. Small details, I know.

        In the previous article about comments you also spoke in a comment-reply of a setting in WordPress that made it remember the name, email address and website, so you don’t have to always enter that again. Is that default now, or is that also something that I still should change? And if so, can you remind me about where and how?

        I find that the subscribe list and message present now the same as on your website, so the javascript might be what was the difference.

        Thanks again.

        • First of all, it’s not possible that you didn’t receive the notification email. It’s either in your spam box your you accidentally deleted it. Nextly thanks for the typo thing. Will fix it as soon as I get some free time. Also validator doesn’t check for 16 character. 15 character is must needed so when you type the 16th one it enabled the button. I don’t think that the br would be a good thing, but if you feel that way, feel free to edit the code in your way, I’ve shared it for free so others can edit.

          Also about the comment name and email thing, it’s a default wordpress feature, nothing to be add extra. As I said earlier, the only reason it doesn’t work in most cases is because most cache plugin deletes the wordpress cookie mostly after 5 min. So, check your cache plugin settings to disable that option. Also I didn’t understood your last question.

        • I’m sure I haven’t received any email, but that doesn’t mean they were not send. Like you I thought it would probably be because of some spam detection or something, but I’ve looked and there were no emails in the spam-folder so for me it’s just a mystery. I don’t think its something on your side. Today I received the notice, so it’s okay again.

          About your reaction on the at least 15 character subjects, I will argue that you are wrong about your interpretation of what “at least” means (and I’m sorry to say so). At least 15 means that when I have entered 15 characters I have already complied to that validation rule, and you forcing me to enter a 16th character is in that sense confusing to the purists. “At least” means “no less than”, and 15 characters is no less then 15 characters. It’s a small point, but in programming it’s all about details.

          The extra <br> is a personal choice, but at least it is correct html syntax to close the <br> so it should be <br /> . It will work now too, so that is a very minor point and you can leave it if you like.

          The last question you reacted on (and said you didn’t understand) was not important, it was about that I mentioned earlier that the default install of the plugin didn’t look as nice as on your website. After implementing the js-solution it showed the same.

          In using the end result, I noticed three things as a visitor:

          1 If I’m logged in the javascript doesn’t seem to work (the button is then enabled and the messages are not shown). Since that only affects me, that’s okay I guess.

          2 When data is remembered and auto filled the javascript only notices the content after I’ve entered a keystroke. So the messages will initially be shown even if the fields are correctly filled before I use a keystroke. I guess that is not to be helped, but it seems strange to get a message about fields that are correctly filled.

          3 The button is enabled before the email address is validated a being correct. That means a visitor can already enter the form when the email address isn’t yet correct. The fall back of the php-code will stop him, but the javascript could perhaps better check if the messages are empty or use some variable that is set in the code that sets the messages or in some other way. I haven’t yet found how to do it, but if we wanted to close the validation, that is something I would do. Helas my knowledge of javascript isn’t yet sufficient to change it.

          For now it works fine, and is a big improvement, and I thank you for sharing your work and knowledge herein. Although we haven’t met, I consider you a true friend. 🙂

          • Thanks fr the 15 character thing. I will change that when I get some time. About the
            thing, I do know how to write it, but I’m so busy now a days that I don’t get time for these minor things. Also about the javascript, it is intentionally made to work only for non-registered user, so for admin and any register user it wont fire and those registered users don’t have to put the name emails too. So, it’s not a bug, it’s intentional. The thing you said about when those name, email fields get auto populated, the javascript doesn’t work, it would be great if you can share a screen record of this issue.

          • Hi Saumya,

            I’ve send you some screenprints (initial and after) via the contact-form (by lack of a better category filed under Website bugs). I trust it will find its way to you.

            For me point three was the main point I still want to change (when the button is activated), the others are less important to me, although the initial state (point two) would be nice to fix also. I understand point one was by design.

            Kind regards, Hans

          • Hi, I just updated the jQuery with all the fixes. Now it doesn’t show the error when name, email fields are auto populated.
            Hope this helps. 🙂

          • Great, thanks. It works fine now.

            I have translated the messages to Dutch for my own version (don’t know how to make language files for js).

            To enable the button only when a correct email is entered, I have repeated the line (line 36) that tests using isEmail against result-value true (inserted as line 53). Then the button is only enabled when basic validation has a positive result. It might be a bit more processing, but there seems to be no noticeable performance-difference.

            Thanks, for completing it.

            Kind regards, Hans

          • You can edit it anyway you want. It’s under GPL v2 and also shared for free, so do as many experiment you wanna do with the code ?

  2. Although the javascript works fine now, I have the problem that when I load it on a page where no comments can e entered there is a javascript error and other scripts on my pages on tinekevanurk.nl don’t function either (a script to hide social buttons and some messages f.i., but also the sticky menu-script).

    It means I need some code to select only pages that actually use comments. I could do that in functions.php but then I would probably select something like singles and a few selected pages, and need to change that when other pages are going to use comments. it would be nice if there is a more flexible and general way.

    What I haven’t tested is what happens on blog article page (single) when the comments are closed because the article is to old or something. It might also break the scripts and than I surely need a method that tests on the entry fields or something. I haven’t found advice on how to link the scripts in the above article so started by just linking it in all pages. I now find that is not working.

    Do you perhaps have a suggestion?

  3. I’ve checked and replied too. Thanks. 🙂

  4. That is a very good tip especially to those fresh to the blogosphere.
    Simple but very precise information… Thank you for sharing
    this one. A must read post!

  5. Comment section many times affect by spammers. But there are plugins which can block the spanners
    By Default, Akismet plugins come when you install wordpress on your server, but looks like it is not capable to block harmful spammers or trojans which activates through the comments.

    Any suggestion on this, please?

    • Akismet is a great plugin. In my opinion it blocks almost 99.5% spams by it’s own and for the rest 0.5%, the moderator has to use some common sense. I think if you have Akismet installed and using a theme which is properly coded (following wordpress best coding guidelines) then you don’t have to worry about these spammers. 🙂

  6. OKay Thanks Saumya, I read somewhere on the top blogs that Akismet is just waste plugins which slow your server, but I too experiment that it is a great plugins when it blocking automatically, though server taking load, but its worth rather than having spams 🙂

    • I have been using that plugin for last 6 years and never ever felt that it slows down the site. Because Akismet actually doesn’t do anything on your server it uses APIs for the checking which is extremely fast. Most sites write whatever comes in their mind to get more hits.


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Subscribe To My Newsletter

Subscribe To My Newsletter

Join my mailing list to get meaningful content, useful information, how-tos, tricks, tips for webmaster, bloggers and entrepreneurs to rise and profit in your online business.

You are almost there! Just check your Inbox to confirm the Subscription & you are all set.


By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.