An ongoing battle for most of blog or website which allows commenting is Spam Comments. Unfortunately, It is almost impossible to succeed on that battle of spammers trying to comment your site…
However, There are a few ways which may help you to combat spam comments.
1. Close comments on older articles
Leaving comments open for old articles makes a blog vulnerable to spam comments. They normally target very old blog posts because They are more difficult to identify although you may notice your blog will start loading slower than normal.
If you want to modify that Go to Settings > Discussion > Other comment settings panel
Automatically close comments on articles older than [X] days.
Once you give a value to that parameter WordPress will automatically flag eligible posts so that no more comments are accepted.
2. Hold comments which contains links
Comment spammers’ aim is to have a link in your site to their site to raise their page ranking on search engine results with external links (External reputation which is measure on the number of links and the importance of sites that link to you) and also to attract visitors.
WordPress allows you to set up this parameter by going to Settings > Discussion > Comment Moderation panel
Hold a comment in the queue if it contains [X] or more links.
WordPress will automatically put those comments for you to moderate. Some people recommends to put 2 instead of 1. Personally, I will put 1 to play safe. Here you can also enclose any words, names, URL’s, emails or IP addresses that you would like to manually approve.
3. Make comment authors to have their first comment previously approved
Go to Settings > Discussion > Before a comments appears panelComment author must have a previously approved commentIf you select that option, you will cut down on the number of comments you need to approve. Once an author has a comment approved, their future comments will be automatically approved.
There is another option where you will need to manually approve every comment, but this will be a quiet laborious depending on the volume visitors in your blog It may be something you want to consider.
4. Blacklist certain words
If you tend to find the same spam word all the time; Go to Settings > Discussion > Comment Blacklist panel.In this section you can list which words do you want to be marked as spam. Those comments that match these words will be deleted immediately and without notification. (Remember: One word or IP per line)
5. Check spam plugins
There are a lot of plugin options to choose from to add to WordPress’ built-in comment spam protection. However, one of the most popular ones is Akismet. This plugin is made by the same people that made WordPress. If you want to activate it you need to get a API Key which is free for personal use. If you want to enable Akismet on your WordPress blog, go to the Plugins panel and activate the Akismet Plugin. You will be send to get an API key from Akismet.com after you sign up for a plan. After Akismet is activated, you’ll see a menu added to the Comments Panel that holds a list of “caught” comment spam.If comment spam gets through Akismet’s net, mark it as comment spam in your Comments Panel. Do not delete it. By marking it “comment spam”, the information is sent to Akismet and added to the community-created database.