Kamis, 22 September 2016

What's The Best Anti-Spam Plugin For WordPress?

What's The Best Anti-Spam Plugin For WordPress?

Link to My Blogger Tricks

What's The Best Anti-Spam Plugin For WordPress?

Posted: 21 Sep 2016 02:15 PM PDT

best Anti-spam Plugin for WordpressSpam bots have become so efficient today that ordinary techniques used for spam protection such as security CAPTCHA, arithmetical problems or puzzles are no more useful when it comes to identifying the bad comments. Spam comments badly harm your blog content and ultimately your search ranking. Majority of blogs which are effected by Google penguin penalty are not serious in moderating the amount of spam links which are poor quality external links inserted through the site's comment form. This seriously harms your blog reputation and you suffer in the long run when it comes to ranking in SERPs.
Just recently I had been struggling hard fighting spam on two of our wordpress blogs. I had been been using Akismet Plugin to filter spam comments on my blogs but Akismet badly fails when it comes to identifying the smart spammers. Spammers who post flattery and cheesy comments such as:
Hi I love your blog content, you have shared some excellent piece of info. Thumbs up!
Hey wow, great article!
Very nice!
and so on
All these comments add no value to your blog content because they are not the least related to the content shared inside the article and make no sense at all. They surely increase your blog load time because every spam comment means that your browser needs to load an extra image avatar of the spammer, user name, email ID, website link and finally load the comment text. All of this info not only increases the work load on the browser but also effects your keyword density. All those off-topic words seriously distracts the attention of search robots from your primary keywords thus killing the essence of your content.
Limitations of Akismet Plugin
Akismet also does not stop spam registrations, subscriptions or contact emails, it is limited to fighting comment spam only to some extent. We needed a more robust, prompt and multi-purpose  anti-spam plugin for our wordpress sites that could not only provide comment spam protection but would also offer us useful options to stop fake registrations, emails and help us block spammers by IP/Email address, "stop words" or country name. A slight research and consultation from fellow bloggers lead me to a trustworthy anti-spam plugin developed by CleanTalk.
CleanTalk Anti-Spam Plugin for Wordpress

After installing the anti-spam plugin by CleanTalk, I was able to replace several different plugins such as Akismet and Captcha Plugins with CleanTalk and get much better results without sacrificing the load time. Not only are our over 4600+ comments scanned and moderated automatically on daily basis but it also helps us fight spam bots signups and contact emails. After seeing the significant improvement it has brought to our site SEO and load time, I thought of sharing this handy anti-spam plugin with all of you. The review today will focus on major features based on which we can conclude why CleanTalk Anti-Spam Plugin is the best WordPress Plugin for spam protection against fake comments, signups, contact emails and much more. 

How CleanTalk Anti-Spam Plugin Works on WordPress?

To determine the spam bots, CleanTalk uses series of tests, invisible to the visitor your website, and also checks if the message relates to the subject of the article or not. This allows providing 99.998% protection from spam bots, and you will not need to install extra protection.
  1. Suppose a visitor writes a comment or registers on your WP site
  2. CleanTalk plugin sends action parameters into the CleanTalk cloud
  3. Service analyzes the parameters
  4. If this is a visitor, the comment will surely be published. If it's a spam bot, then CleanTalk blocks this comment or registration. That simple!
Parameters are then written to the anti-Spam log which can be viewed in the Control Panel service and users are also informed through weekly email newsletter report.
With such support one can surely turn off protection methods on website that force the user to take certain actions, such as:
  • Questions/answers,
  • Arithmetical problems, etc.
All of these methods are not only easily recognized and bypassed by bots, but also can become irritating for regular visitors.

CleanTalk prevents and automatically blocks Spam

CleanTalk is really efficient in recognizing spam. It automatically detects a spam and blocks it before it could harm your blog load time or SEO, thus allowing you to focus on building quality content instead of wasting precious hours in manually deleting the spam comments. The plugin offers multi-support against spam which includes:
  1. Stops spam comments.
  2. Stops spam registrations.
  3. Stops spam contact emails.
  4. Stops spam orders.
  5. Stops spam bookings.
  6. Stops spam subscriptions.
  7. Stops spam in widgets.
  8. Checks the existing comments for spam.
It's most interesting features include:
  • SpamFireWall: Provides protection against hackers for popular attacks such as XML-RPC brute force, DDoS and more. This option allows to filter spam bots before they access your site. It also reduces CPU usage on hosting server and accelerates pages load time dramatically.
  • Private Black/White lists for IP/email/IP networks - My personal Favorite!
  • Blocking by countries
  • Blocking by "Stop Words".
It also works just perfectly with the following plugins :
  • WordPress, JetPack comments.
  • WooCommerce review form.
  • WordPress Landing Pages.
  • BuddyPress, bbPress, S2Member, WooCommerce registrations.
  • Contact form 7, JetPack Contact form, Formidable forms and so on
CleanTalk is also compatible with WordPress cache plugins
  • W3 Total Cache, Quick Cache, WP Fastest Cache, Hyper Cache, WP Super cache, WP-Rocket and any other cache plugins.

How To Install CleanTalk Anti-Spam Plugin In WordPress?

Follow these easy steps to install CleanTalk Spam protection service on your wordpress blog:
  1. Download CleanTalk Anti-Spam Plugin from wordpress repository. Spam Protection by CleanTalk (no Captcha Anti-Spam) 
  2. Navigate to Plugins > Add New install cleantalk plugin
  3. Click "Upload Plugin" button towards your top-left. upload plugin
  4. Locate the zip file and hit "Install Now" install plugin
  5. Click "Activate Plugin" activate plugin
  6. On the next page in order to enable anti-spam protection, you will need to enter a free access key. Click "Get access key automatically button"
    enter the access key
    You will also receive emails about your account activation. cleanTalk emails
  7. Enable the "SpamFireWall" Option protection is active
  8. Click Advanced settings links at the bottom and enable the following options:
    • Allow spam comments to be automatically deleted upon detection. CleanTalk Advanced Settings
    • Check "collect details about browsers" option CleanTalk Settings for Wordpress 
    You can enable other options such ass SSL and Woocommerce checkout form if you are using them else leave all options as default.
  9. Click "Save Changes" and you are done with the installation!

CleanTalk Dashboard and Spam Analytics

Next Click the link that says "Check comments for spam" from your navbar:
Check Comments for Spam using CleanTalk
This is the result I got:
Spam Comments detected by CleanTalk
All my 4678 comments were instantly scanned and 17 spam comments were detected and removed. Please note that those 17 comments were ignored by Akismet Plugin which I previously used. This shows how effective and accurate CleanTalk is in detecting and blocking spam.
You can also check users for spam to see if any of your co-author or contributor may be misusing the site in any way.

CleanTalk Helps To Block Users By Country/IP/Email

If you click the "CleanTalk Dashboard" link you will see tons of options to moderate your site comments. An AntiSpam log is updated every 3 minutes to inform you about the spam protection activity going on your site. By the time I am writing this article, several spammers from China and Russia have already started attacking my sites with spam contact emails as shown below:

Spam contact emails
AntiSpam log mentions everything about the content being blocked or approved. It will tell you the Author name, email, IP address and also show the content. Clicking the details link will show you the spam content which was posted to my Contact form:

block spam contact emails in wordpress
Clicking the IP address will disclose full identity of the spammer. You can choose to blacklist the spammer by email ID, IP address or even by country name.
IP address of spammer
IP address of spammer
blacklist spammer
The Blacklist option is my personal favorite and helps me block a bulk of spammers at once using the country option. Since my content is in English, people from China and Russia are surely not my intended audience so blocking these countries could surely save me bandwidth and decrease load on servers.
The "Trends" page shows you interesting info using graphical illustration about the total number of blocked and approved/legitimate comments

CleanTalk Trends Report
On the "Spam and legitimate hits" drop down box you can see who were the Top20 spammers on your site for the last week.

Check Top spammers on your site using CleanTalk

Top spammers on wordpress site

Tons of more such features that you can discover for yourselves that not only helps you better moderate your blog but significantly improve its load time and SEO in long run.

How To Signup for CleanTalk Spam Protection?

CleanTalk offers a free trial for 7 days only after which it will start charging $8/year which isn't that much as compared to the quality service it provides for an entire year. I am also greatly impressed by their instant 24/7 free help and customer support. Since I have two sites, I am looking forward to upgrade my plan. Currently $8/year plan best suits our requirements.
Paying for a year of anti-spam service, you save a lot more and receive:
  • Up to 99.998% protection from spam bots.
  • Time and resources saving.
  • More registrations/comments/visitors.
  • Protection of the several websites at once in different CMS.
  • Ease in installation and using.
  • Traffic increase and loyalty to the users.
  • 24/7 technical support.
  • Clear statistics.
  • No captcha (reCaptcha), puzzles, etc.
  • Free mobile app to control anti-spam function on your website.
Additional features
  • Daily and weekly detailed anti-spam reports: traffic VS spam.
  • Apps for iPhone, Android to control anti-spam service, comments, signups, contacts, traffic and spam statistics for the last 7 days.
  • AntiSpam apps for most popular CMS on cleantalk.org.

How Do You Protect Your Sites From Spam?

I am sure spam is a headache for us all. I have shared my experience of Akismet and CleanTalk. Please share your precious views on both of them and have you tried CleanTalk yet?
Can you image how much spam I used to receive through my Wordpress site's contact form alone? See the Gmail screenshot below and imagine how at piece would I be today? =)

Spam in gmail

CleanTalk Anti-Spam Plugin Review
Summary CleanTalk Anti-Spam Plugin is the best WordPress Plugin for spam protection against fake comments, signups, contact emails and much more.
Publisher My Blogger Tricks
Ratings 5/5

Selasa, 30 Agustus 2016

Blogger Carousel: Responsive & Dynamic

Blogger Carousel: Responsive & Dynamic

Link to My Blogger Tricks

Blogger Carousel: Responsive & Dynamic

Posted: 30 Aug 2016 05:14 AM PDT

Blogger Carousel (BC) helps you to create dynamic slideshows to showcase your blog posts by a specific category/label. You can use carousels in blogspot to automatically display a list of latest posts inside an animated cycle. Blogger carousel is a mobile responsive widget that adapts perfectly to different screen sizes because it supports multiple breakpoints. It uses Blogger JSON Feeds to dynamically display recent posts from any label you specify. It is a responsive basic carousel plugin created using FlexSlider by Woothemes. You can display multiple thumbnails organized horizontally inside the carousel with navigational controls.

Blogger Carousel For Blogspot Blogs

We have already shared two jQuery carousel sliders for blogspot blogs that you can add to your blog by reading the following tutorials:

The difference between this carousel and the former is the use of single and multiple slides/items. Former sliders have a fixed width but this carousel can be stretched to as wide as possible depending on the width of the parent DIV.

If you are interested to learn how these widgets and plugins are coded then please read my comprehensive guide below:

Features Of Blogger Carousel

Blogger Carousel is an advanced widget equipped with these features:

  1. Author Avatar - Unique!
  2. Displays recent posts dynamically inside Carousel. - Unique!
  3. Displays recent posts from a specific category/label.
    1. Slider with two animations: Slide & Fade
    2. Clickable Comments Count
    3. Custom Date Format in ribbon fashion - Unique!
    4. Clickable Animated Featured Image Thumbnails - Unique!
    5. Option to increase or decrease thumbnail Resolution - Unique!
    6. Support for Third-party Images and YouTube Video thumbnails - Unique!
    7. Title Length is adjustable

    Best Responsive Carousel For Blogger Blogs!

    The carousel automatically adjusts its item width and number of thumbnails to show in smartphones, tablets and desktop screens without effecting the UI. Multiple breakpoints are added to ensure the carousel fits device screen size just perfectly. This is why we call it as the best carousel for blogspot blogs! The same carousel is added by default to COPmo template.


    Responsive Blogger Carousel For Blogspot Blogs


    Responsive Blogger Carousel For Blogspot Blogs


    Responsive Blogger Carousel For Blogspot Blogs

    Add Blogger Carousel To Blogspot

    Follow these easy steps:

    1. Go To Blogger > Template
    2. Backup your template
    3. Click "Edit HTML"
    4. Just below <head> tag paste the following JS and CSS source links:

      <script src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' type='text/javascript'></script>
      <link href='http://fortawesome.github.io/Font-Awesome/assets/font-awesome/css/font-awesome.css' rel='stylesheet'/>
      <link href='http://fonts.googleapis.com/css?family=Oswald' rel='stylesheet' type='text/css'/>
      <link href='https://cdnjs.cloudflare.com/ajax/libs/flexslider/2.6.1/flexslider.min.css' rel='stylesheet' type='text/css'/>
      <script src='https://cdnjs.cloudflare.com/ajax/libs/flexslider/2.6.1/jquery.flexslider.min.js' type='text/javascript'></script>

      Note: Do not add JQuery, FontAwesome or Oswald links in the code above to your template if you are already using them in your site.

    5. Next search ]]></b:skin> and just above it paste the following code:

      /*######### Blogger Carousel Stylesheet #############*/
      .mbtslides-title2{font-family:oswald; font-weight:normal;font-size:18px!important; border-bottom:2px solid rgb(144, 241, 40); color:#242729;width:90%; }#mbt-c{ margin:0px 5px; border:0;width:90%;}
      .flexslider .slides {list-style-type:none; margin:0px auto 10px auto;padding:0px;} #mbt-c li {color:#666; font-family:helvetica; font-size:12px; overflow:hidden; position:relative; padding-top: 10px; line-height: 1.6em;}#mbt-c .flex-control-nav{list-style:none outside none;position:absolute;top:-45px;right:5px;text-align:right;height:10px}
      .flexslider .flex-control-nav li{display:inline-block;margin:0 2px}
      .flexslider .flex-control-nav a{text-indent:9999px;display:block;width:10px;cursor:pointer;height:10px;background-color:#000;border:1px solid #000;border-radius:0!important}
      .flexslider .flex-control-nav a.flex-active{background-color:rgb(132, 219, 6);border:1px solid rgb(144, 241, 40)} #mbt-c .flex-div{margin:0px auto 20px auto; display:block; border-bottom:0px solid #eee; padding-bottom:20px!important; position:relative;} #mbt-c li a { color:#0080ff; text-decoration:none; } .flexslider i{color:#999; padding-right:5px; } .flexslider .iline{line-height:2em; margin-top:3px;} .flexslider .icontent{line-height:1.5em; margin-top:5px;} .flexslider div span{margin:0 5px 0 0; display:inline-block;font-weight: normal; } #mbt-c .mbttitle {font-family:oswald; font-size:13px; color:#666; font-weight:normal; text-decoration:none;} #mbt-c  .mbttitle:hover, .flexslider .itotal a:hover  {color:#333; text-decoration:none;}
      .flexslider .iedit a{text-decoration:none; color:#999; cursor:pointer}
      .flexslider .iedit:before, .flexslider .iauthor:before, .flexslider .itag:before, .flexslider .icomments:before, .flexslider .idate:before, .flexslider .itotal span:before{font-family:fontAwesome; position:relative; padding-right:8px; color:#999;} .flexslider .iauthorpic{width: 17px!important;height: 17px!important;border-radius: 50%; float: none; display: inline-block!important; margin:0px 0px 0px 0px; padding-right:3px; position:relative; top:3px;}
      #mbt-c .iFeatured{overflow:hidden;position:relative;margin:0 0px 10px 0;padding:0;width:120px;} .flexslider .iFeatured a {background: none; padding:0px; display: block;border:1px solid #eee;} #mbt-c .iFeatured img{width:100%!important; height:75px!important;-moz-transition:all .3s;-webkit-transition:all .3s;transition:all .3s; border-radius: 2px;} .flexslider .iFeatured:hover img{ opacity:1;   -moz-transform:scale(1.4);-webkit-transform:scale(1.4);transform:scale(1.4)} .flexslider .icomments a{color:#0080ff; font-family: arial;font-size:12px;} .flexslider .icomments a:hover{text-decoration:underline} .flexslider .icomments:before {content:'\f086'; padding:0px 3px 0px 7px; color:#84DB06;} .flexslider .idate {position: absolute;left: 0px;top: -7px; background: rgb(132, 219, 6);color: #fff;padding: 3px 4px;font-family: oswald;font-size: 11px;border: 1px solid rgb(144, 241, 40);} .flexslider .idate div{width:18px; line-height:1.6em; text-align:center;}
      .flexslider .idate:after {content: ' ';position: absolute;z-index:-9999px;width: 0;height: 0;left: 25px;top: -1px;border-width: 4px 6px;border-style: solid;border-color: transparent transparent rgb(125, 208, 4)  rgb(125, 208, 4);}

    6. Make these changes

      • To change the green color theme of the slider simply replace the green highlighted color codes with color of your choice. The color can be in rgb or #hexadecimal, both work. Use our  Color Code Generator.
    7. Save your template.
    8. Now go to Blogger > Layout
    9. Select "Add a Gadget"
    10. Choose "HTML/JavaScript" gadget
    11. Keep the title field empty and then paste the following code inside it:

      <script type="text/javascript">
        $(window).load(function() {
              animation: "slide",
              directionNav: false,
               itemWidth: 120,
              itemMargin: 25,
             touch: true, 
             slideshowSpeed: 2500,
            pauseOnHover: true,
           animationSpeed: 700,

      <h2 class="mbtslides-title2">Blogger Carousel!</h2>
      <div class="flexslider" id="mbt-c">
      <ul class="slides">
      <script type="text/javascript">
      //################### Defaults
      var ListBlogLink = "http://mybloggertricks.com";
      var ListCount = 9;
      var ListLabel = "Make Money Online";
      var TitleCount = 66;
      var ImageSize = 150;
      //################### Function Start
      function mbtcarousel(json) {
      for (var i = 0; i < ListCount; i++)

      //################### Variables Declared
      var listing= ListImage = ListUrl = ListTitle = ListImage = ListContent = ListConten = ListAuthor = ListTag = ListDate = ListUpdate = ListComments = thumbUrl = TotalPosts = sk = AuthorPic= ListMonth = Y = D = M = m = YY = DD = MM = mm = TT =  "";
      //################### Category
      if (json.feed.entry[i].category != null)
      for (var k = 0; k < json.feed.entry[i].category.length; k++) {
      ListTag += "<a href='"+ListBlogLink+"/search/label/"+json.feed.entry[i].category[k].term+"'>"+json.feed.entry[i].category[k].term+"</a>";
      if(k < json.feed.entry[i].category.length-1)
      { ListTag += " ";}
      //################### URL
      for (var j = 0; j < json.feed.entry[i].link.length; j++) {
            if (json.feed.entry[i].link[j].rel == 'alternate') {
      ListUrl= "'" + json.feed.entry[i].link[j].href + "'";
      //################### Info
      TotalPosts = json.feed.openSearch$totalResults.$t;
      if (json.feed.entry[i].title!= null)
      ListTitle= json.feed.entry[i].title.$t.substr(0, TitleCount);
      if (json.feed.entry[i].thr$total)
      ListComments= "<a href='"+json.feed.entry[i].link[j].href+"#comment-form'>"+json.feed.entry[i].thr$total.$t+"</a>";
      ListAuthor= json.feed.entry[i].author[0].name.$t.split(" ");
      ListAuthor=ListAuthor.slice(0, 1).join(" ");
      AuthorPic = json.feed.entry[i].author[0].gd$image.src;
      //################### Date Format
      ListMonth= ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
      ListDate= json.feed.entry[i].published.$t.substring(0,10);
                               Y = ListDate.substring(0, 4);
                              m = ListDate.substring(5, 7);
                               D = ListDate.substring(8, 10);
                               M = ListMonth[parseInt(m - 1)];                      
      ListUpdate= json.feed.entry[i].updated.$t.substring(0, 16);
                               YY = ListUpdate.substring(0, 4);
                              mm = ListUpdate.substring(5, 7);
                               DD = ListUpdate.substring(8, 10);
                               TT = ListUpdate.substring(11, 16);
                               MM = ListMonth[parseInt(mm - 1)];  
      //################### Thumbnail Check
      // YouTube scan
      if (json.feed.entry[i].content.$t.match(/youtube\.com.*(\?v=|\/embed\/)(.{11})/) != null)
          var youtube_id = json.feed.entry[i].content.$t.match(/youtube\.com.*(\?v=|\/embed\/)(.{11})/).pop();
          if (youtube_id.length == 11) {
              var ListImage = "'//img.youtube.com/vi/"+youtube_id+"/0.jpg'";
      else if (json.feed.entry[i].media$thumbnail)
      thumbUrl = json.feed.entry[i].media$thumbnail.url;
      sk= thumbUrl.replace("/s72-c/","/s"+ImageSize+"/");
      ListImage= "'" + sk.replace("?imgmax=800","") + "'";
      else if (json.feed.entry[i].content.$t.match(/src=(.+?[\.jpg|\.gif|\.png]")/) != null)
      // Support For 3rd Party Images
      ListImage =  json.feed.entry[i].content.$t.match(/src=(.+?[\.jpg|\.gif|\.png]")/)[1];
      ListImage= "'http://4.bp.blogspot.com/-HALLtgFeep0/VfryhQ0C5oI/AAAAAAAAPcY/77mSGND4q84/s200/Icon.png'";
      //###################  Printing List
      var listing = "<li><div class='flex-div'><div class='iFeatured'><a  href="
      + ListUrl+
        "><img src="
      "/></a></div><a class='mbttitle' href="
      "</a><div class='iline'><span class='iauthor'><img class='iauthorpic' src='"+AuthorPic+"'/>"
      "</span><span class='icomments'>"
      +ListComments +
      "</span> <span class='idate'><div>"
      + D +
      "</div><div> "
      + M +


      } }
      <!-- #### Invoking the Callback Function #### -->
      document.write("<script src='"+ListBlogLink+"/feeds/posts/default/-/"+ListLabel+"?alt=json-in-script&callback=mbtcarousel'></"+"script>");

      The following control options will help you modify the widget:

      • slideshowSpeed: You can set the speed of the slideshow cycling, in milliseconds
      • animationSpeed: You can also set the speed of animations, in milliseconds
      • pauseOnHover: Pause the slideshow when hovering over slider, then resume when no longer hovering
      • You can edit the widget title by editing: Blogger Carousel!
      • If you don't want to use the title then delete the yellow highlighted code.
      • ListBlogLink : Insert your Blog link here
      • ListCount : Decide how many posts do you wish to display.
      • ListLabel : Insert your blog label/category here. Remember that labels are case sensitive. Therefore type it exactly as it is shown in your browser address bar. If your label is "blogging" and if you type it as "Blogging" then it wont work. You must make sure that all letters are written in correct cases.
      • TitleCount : Choose how many characters to display in post title.
      • ImageSize : You can control the resolution or aspect ratio of thumbnails by editing ImageSize = 150; where the value 150 means that you want your images to be within 150 x 150 pixels in size.
    12. Click Save and you are all done!

    Let us help you with installation of Blogger Carousel!

    Let me know if you need any help or clarification related to any step above. Adding carousel to your blogs will surely increase your pageviews and overall ad impressions. AdSense revenue does surely increase when users visit multiple pages. Widgets such as recent posts carousel, slider and list help to boost website pageviews significantly and help in reducing bounce rate. Add this carousel to your blogs and let me know if you need any help. Good luck! =)