Spam, Spam and More Spam

Some WordPress Spam

As long as there has been the ability to leave comments on websites there has been spam. I recall creating a guestbook for a client once and even though the guestbook used a captcha it did not take long before it started to become overwhelmed with spammy comments. Fighting spam has become so difficult in fact that it can start to distract you from what you need to be focused on with your website in the first place, creating good content, attracting leads and making sales. If spam has become a constant battle with your WordPress website here are some ideas and tools that might help turn the tide on the battle.

Turn Off Comments

Depending on the purpose of your website you might not need or want comments in the first place. By turning comments off altogether your spam problem can be virtually eliminated over night. Even if you run a popular blog you can still turn off comments, much like Copyblogger did last year. I you do turn off comments altogether you might also want to add a redirect on the WordPress wp-comments-post.php file. Many spammers simply post to that WordPress file and never actually visit your website. By redirecting it using .htaccess or some other redirect you can simply send the spammer off to some location where they will do no harm.

Use Another Commenting System

There are several other commenting system that are available that can help cut down on the amount of spam you receive. Services like Disqus, Facebook Comments and IntenseDebate all offer the ability to host comments for you. Depending on your needs they might be just want you are looking for. They certainly can help in reducing the amount of spam your comments receive.

Use an Anti-Spam Plugin

If you do decide to keep comments on your website making sure you use a decent anti-spam plugin is essential. Many people will simply tell you to use Akismet, and while I would say Akismet is certainly a good plugin, if your website uses any ads or is for any kind of commercial use AT ALL then you should honestly stay away from Akismet unless your website has grown to the point of being able to earn enough money to be able to afford the Akismet monthly rates.

Thankfully Akismet is not the only anti-spam plugin available. Some of the more popular plugins include Anti-Spam, WP-SpamShield Anti-Spam and one I have been testing on some sites, Spam Destroyer. There are even some that use Google’s new “No Captcha reCaptcha” like this plugin Google’s No Captcha reCaptcha.

Use Cloudflare

One of the best ways to keep spam off your website it to not let them get to your website in the first place. Some people dislike Cloudflare but it can help a great deal in reducing the automated spam from bots. You can even create a special page rule to protect the wp-comments-post.php file to increase the checks done no the people and bots trying to post a comment. This can make it much easier to keep the bots away and by even just making it a little slower to try and post a comment to your website.

What is your favourite anti-spam technique on your website?

10 Session Recording and Heatmap Tools

Radiator Springs Racers

I just recently got back from Disneyland with my family and if there is one thing Disneyland does well it is managing crowds and people in the parks and rides. I am sure Disney does a great deal of testing to discover how best to manage the people and crowds at their parks and that testing pays off with people often not minding lining up for over an hour for some rides like Radiator Springs Racers. What do Disneyland rides and your website have in common? Well, like Disney, you can do user testing on your website and learn how to best help your visitors perform the actions that you want them to take on your website.

You no longer need to have a budget of thousands of dollars to find out if users are doing what you want them to be doing on your website. With the use of heatmaps, user session recording and even live sessions website owners can discover quickly and easily how users are using or perhaps not using their website. The best part is you can get basic usage of some of these services for free, so there is no reason to not do some basic testing of your website.

I have not personally tried all of these tools so if you have any opinions on them and how they work feel free to leave a comment.


I currently have an account at Inspectlet and I am pleased with it. It particularly like the session recording to see what people are doing on my sites. They offer a free plan for up to one website and 100 recorded sessions. The paid plans start at $39.00/month for one website.

Crazy Egg

Crazy Egg was one of the first heatmap tools I used and I still have my account there. While it seems a little dated now since they do not offer session recording only heatmaps I still find it useful to use especially on sites where you just want to see where people are clicking. They offer free trials but no free plans anymore. Paid plans start at $9.00/month if paid annually for up to 10,000 tracking up to 10 pages.


With MouseStats you get session recording, heatmaps and some additional features like small surveys and form analytics. They offer a free plan with limits of 100 heatmaps, session recordings and form analytics. Paid plans start at $16/month. You can save some money if you go for an annual plan.

Decibel Insight

Decibel Insight offers heatmaps, session recording, form analytics, behavioral alerts and even error reporting. They offer a limited free account with 5,000 pageviews per month basic heatmaps and 50 session recordings. Paid plans start at $80.00/month if paid annually with 50,000 pageviews per month.


Offering heatmaps and session recording Mouseflow also offers a limited free plan with 100
recorded sessions for 1 domain. If you need more or want the full version paid plans start at $19.00/month for 1,000 recorded sessions on one website.


Nirror is a little different than the other services. It offers session recording and live support so you can interact with visitors in real time. The website mentions a free plan, but I could not find the details of the free plan only a free trial. Paid plans start at 12€/month with up to 1,000 visits per week for one domain and with one agent account.

Not an official video and really fuzzy but it gets the point across.


Along with session recording and heatmaps you also get form analytics with SessionCam. You can sign up for a free account and get full access to all areas of SessionCam and 500 free recorded pages per month. Paid plans start at $10.00/month for 1,000 recorded pages per month on one domain.


Statvoo is a little different as well and seems to offer a large set of features. Like many of the other services you get session recording but they also offer the ability to chat with site visitors. They do offer a free plan but paid plans are on a per site basis with no base price. That suggests to me they are expensive, but I might have to actually try them out to find out.

Could not find a video, so if I do try them I will look at recording one to add here.


From what I can tell you only get heatmaps, but the service is free with no listing if paid plans or options on the website. Perhaps I just missed it, but if you want a free heatmap service this might be your best option. Could not find a video for them but if you visit their website they do offer a decent demo you can try to see how the service works.


Still in private beta and offering free access until it is out of beta. Looks like pricing starts at $5.00/month for one website. Looks like they offer session recording and heatmaps, despite the name just being about heatmaps. Could not find a video demo of the service.

Well there you have it 10 heatmap and session recording services. You have no excuse not to test your website and find out what your users are doing and how you can improve things. You might be surprised by what you learn and what you might want to change.

If you would like a hand setting up some heatmap and session recording drop me a message and I will be glad to help you start testing your website to help improve your website for your visitors.

Use WordPress Themes and Functions on Other PHP Pages

Free Favicon

WordPress is a great content management system but there are still times when you either just want to add a page to your website that is not a part of WordPress or when perhaps you just want to give make sure all the pages on your website whether they are in WordPress or not all have the same look and feel. Thankfully WordPress has made it easy to make WordPress functions available on other PHP pages.

I recently wanted to redo Free Favicon and make sure the blog and the website all had a new fresh look. I had a theme in mind for the blog and want to make sure the rest of the pages had the same theme and look.

The first step is to include the WordPress wp-load.php file. This is the key to using WordPress functions, like loading theme files, outside of WordPress. For Free Favicon I simply added the code to load the wp-load.php file in the header template that the site was already using by adding a line similar to the following:

include($_SERVER['DOCUMENT_ROOT'].'/path to your wordpress install/wp-load.php');

Once wp-load.php was included you can access all of the WordPress functions so I could call the header and footer functions from the theme and have the site themed using the same WordPress theme the blog was using.

//call the theme header

//call the theme footer

The only problem I ran into after getting the pages themed with the WordPress theme was how to change the title of the PHP pages with the new header. The original PHP pages had a section at the top of each of them that defined the title for the page. I just ran the WordPress filter wp_title and assigned the defined page titles from the PHP pages to be displayed using the WordPress theme.

function assignpagetitle() {
  global $documenttitle;
  return $documenttitle;
add_filter('wp_title', 'assignpagetitle');

Overall it was a pretty painless upgrade to Free Favicon, and a very easy way to make sure the whole site had a consistent look and feel. There are still some pages I left without the new theme and eventually I will probably getting around to fixing them as well.

Get Serious or Go Home!

Photo by:  Luca Zanon From UnSplash

One of the pieces of advice I usually give people about their website is to take it seriously. Think about it, your website is the public face of your business to the world if you don’t take it seriously then why would anyone else take you seriously. It can be hard to take your website seriously though when you get busy. Websites tend to be like New Year’s resolutions, when you launch your website you are all pumped about getting new business, or getting lots of pages views, or just having readers. Slowly the time between updates becomes longer and longer and before you know it, it has been months or even years since you last updated your website.

I know how hard it can be to take your website seriously. I recently looked at the stats here for my LGR website and realized the site has been coasting for far too long. I have failed to take my main business website seriously and it shows. Page views and visits are down and while I have made the occasional post here it has certainly not been a regular part of my weekly routine. Not only are visits down to the site the most important part of this website, helping me find new clients are down as well. How can potential new clients take me and my business seriously if the latest post here is months old?

LGR Internet Solutions Traffic over the years. It has been coasting far too long. Time to change that.
LGR Internet Solutions Traffic over the years. It has been coasting far too long. Time to change that.

I am here to say it happens to all of us. Things get busy with work and family and well just like that New Year’s resolution, updating and posting to the website slowly fall by the wayside. But that does not mean it has to stay that way and I am hear to say that things here at LGR Internet Solutions and this website are about to get serious.

First off, this post is the first of many more to come. While I am still busy with client work and family life posting here is going to become more regular. I will be posting more about the work I am doing, tips and tricks that you can use and well whatever I think is helpful for people and small businesses to keep their websites helping their business.

Second, I have already started making some major changes to the behind the scenes running of the site and there will be many more changes coming. Two of the big changes already include reworking the structure of the website. Things like permalinks, categories and tags are all on the list to clean up and fix. The domain has also been updated to use SSL across the whole website because I want you to know I am serious about your privacy.

It is time to get serious about my website, and I hope you will consider getting serious about yours. I challenge you to take a look at your website and find ways to start making it better. Start posting again, start editing again and like the photo at the top it might seem like a long a trek ahead but it will pay off.

Let’s face it, it is time to get serious about your website or close the doors. I am choosing to get serious!

Slow WordPress Queries

I love working with WordPress, it makes so many things easier for clients and it gives me as a web developer a great deal of flexibility to extend and offer to clients what they need for their websites. Unfortunately there are also times working with WordPress makes me scratch my head, this was one of those times.

One of my clients WordPress websites seemed to be crawling, it was just not loading quickly at all yet nothing seemed to have changed on the site. There had been a slight change with the main menu on the site so I thought perhaps there was a problem with the new menu options and I decided to log the slow MySQL queries to see I could find out.

After awhile I came back to look at the the MySQL slow queries log and to my surprise I found the following slow query over and over again:
SELECT option_name, option_value FROM wp_options WHERE autoload = 'yes';

I was shocked by the fact that the main problem with the site seemed to be the main options table. After doing a little Googling on the query I came across this excellent post “WordPress wp_options table autoload micro-optimization” and decided to try adding an index to the wp_options table and see if it helped speed up the clients WordPress website.

While the post I linked to used the command line, I actually used PHPMyAdmin to add the index to the autoload column. I am always cautious when working with the WordPress database, so I made sure I had a backup copy of the database before messing with it, and added the index. I then cleared the MySQL slow queries log and waited. Of course I checked the clients website to make sure everything looked ok and I was optimistic this had fixed the problem. The site was already responding much faster than it was earlier.

After a few hours I went and checked the slow queries log again and the slow queries on the wp_options table had disappeared. There are still some slow queries to deal with including one with WordPress SEO from Yoast and transients but the wp_options autoload query seems to be fixed for now.

What I am not sure of, is why does the WordPress team not have an index on the autoload column? Considering how much the options table is used to store plugin and theme data (with right or wrong I will not comment) but the fact that the options table is used for saving WordPress transients would suggest to me that perhaps that column should be set with an index by default.

If your WordPress website is starting to seem a little sluggish this is something else you might want to look into doing to speed your website up. If you are not comfortable with working with your WordPress database feel free to contact me I will be glad to help.

Service Disruption – iWeb Montreal Data Center

If there is one thing I hate it is when my clients websites go down. I work hard to keep the server software and client websites software up to date to keep the sites up and the servers running as best as they can. There are things outside of my control that can make all the work I do to keep the servers running all pointless. Unfortunately it was these things that have caused the last two extended periods of downtime for me and my clients.

I choose to host at iWeb for many reasons, like the fact they offer a Canadian data center, they had redundant power and quick hardware replacement. I have been a happy customer with them since 2009, unfortunately that has all gone out the window with their last two periods of downtime.

Both the incident in February and this latest incident started with power problems at the Montreal data center where our servers are located. While I do not get all the specifics of the problems it appears that iWeb has a severe problem with power at the Montreal data center and are unable to keep the power on. The problem in February and this latest problem has cost us and all of our clients 20+ hours of downtime!

This amount of downtime is unacceptable and I have begun looking at alternatives for me and all of my clients websites. In the coming week I will hopefully have a new dedicated server vendor found and will notify all clients of the migration plan. If any clients would like to find their own hosts I completely understand your frustration. If you are considering moving only one website I recommend taking a look at either WPEngine for shared hosting or DigitalOcean if you want more control over your entire website. I will be in touch with each of you over the next week with more information regarding the migration away from iWeb.

Thanks for your patience as I work to get us all more reliable hosting. It is unfortunate that iWeb has become so unreliable after such a long period with them but they clearly have let down all of their customers, and possibly flat out lied on their website regarding power redundancy at their data centers.

Roam Mobility Review in Disneyland

I don’t travel down to the United States very often but when I do get down there it is always nice to be able to stay connected. Unfortunately the mobile companies here in Canada like to charge fairly exorbitant prices for their roaming into the US. The last trip we took as a family I ordered some T-Mobile Pre Paid SIM cards and used them for less than what the Canadian mobile company would have charged. This latest trip to Disneyland I was thinking of doing the same thing but then I heard of a company called Roam Mobility. It was a bit of a hassle getting T-Mobile SIM cards the last trip so I decided to give Roam Mobility a try this trip and I was very pleased.

First off the prices for Roam Mobility were decent. I wanted to be able to make calls back to Canada, in the US, text and wanted data to be able to share photos and updates with friends and family. Not a huge amount of data, but being self-employed there was always the possibility that I might need to do some work while away as well so not having to worry about eating through data caps too quickly is always a concern. We were going to be gone for 12 days. My current Canadian service company, Koodo, has roaming packages for 10 days for $40, but with a data cap of 250MB (seriously only 250MB) and overage fees on data at $5/50MB. The next roaming package is 30 days for $75 with 750MB of data.

Roam Mobility lets you purchase a plan for the number of days you are going to be gone. So in our case for 12 days I would get 4.8GB of 4G LTE data plus unlimited texting and calls back to Canada for only $47.40 plus the cost of the SIM card ($15). Now I had to get that for two phones but it worked out to be a better deal for the Roam Mobility SIM cards than it was to use the Koodo roaming packages. Not to mention the Koodo packages offered unlimited talk in the US but we had to make several calls back to Canada due to a family emergency and the Roam Mobility plans let us do that and not worry about the cost. Price wise I felt it was worth using Roam Mobility over the Koodo roaming packages. Roam Mobility made it easy to order and easy to see what you price was going to be.

A good price of course is one thing but if you don’t have coverage where you are going it doesn’t matter how good the price is. Checking the Roam Mobility coverage map it looked like we would have great coverage in Anaheim. We were going to Disneyland and California Adventure mostly with some day trips to San Diego and Hollywood. For the most part we had great coverage everywhere we were, except one. For some reason in Disneyland in the Tomorrowland section I had no coverage at all. My signal would drop by the time we got to Star Tours. My son thought it was pretty funny that I could not connect in Tomorrowland.

My wife’s phone, a Moto G, had no problem connecting everywhere we went, even in Tomorrowland, so I don’t know if it was something about my Nexus 5 that was having problems or what the problem was. My phone would say I had a connection but I could not send or receive texts, data or calls anywhere in the Tomorrowland area of Disneyland. Other than that one area I did not notice many other problems with coverage.

The map says I should have had good coverage but I had problems in Tomorrowland.
The map says I should have had good coverage but I had problems in Tomorrowland.

I ordered our SIM cards online, and got a deal when I ordered. Two SIM cards for $15 with free shipping. Apparently you can buy the SIM cards at a few places like Staples and even 7-Eleven but I never did find see them when I was at those places. I had enough time to order the SIM cards online plus you need to create an account to activate them and purchase you plan anyway so if you know you are going to the US (and Mexico now as well it looks like) you might was well just order the SIM cards online, setup your account so you can activate the cards when you get them.

It was easy to setup the account, order the cards and purchase the plans. You can even tell them when the plans should start and stop in advance so all you have to do when you get to the US is put the SIM card in and perhaps add a new APN and you are ready to go. Roam Mobility will even send you a text with some instructions when you insert the SIM card in the US to help you along. It was all pretty easy.

The only problem I could see some people having is not having an unlocked phone. I have always made sure to buy unlocked phones, but many people that just get their phones at a discount from the Canadian mobile companies are almost always locked. Just something to be aware of if you are planning on using Roam Mobility, to make sure your phone is unlocked.

I am not a mobile review expert but overall I was very pleased with Roam Mobility on our trip. I plan on keeping the SIM cards active for our next trip south and it sounds like that will be a fairly inexpensive option than having to order new SIM cards every time. I would recommend Roam Mobility if you are planning a trip to the US. It could end up saving you from some of those insane $1000’s of dollars cell phone horror stories you hear about on the news.

If you have used Roam Mobility what was your experience?

WordPress Rel Nofollow Checkbox Plugin

Rel Nofollow Checkbox

Adding the rel=”nofollow” on links in WordPress can be a pain especially if you want some links to be nofollow and some to be followed. Thankfully with the WordPress Rel Nofollow Checkbox plugin you can simply create your links how you normally would and just select the checkbox if you would like it to be nofollowed.

There are a number of nofollow plugins in the WordPress plugin repository but this one is my favourite. The simplicity of being able to just click the checkbox on the links I want nofollowed instead of making something complicated the nofollows all links on a website or all external links.

This is one of those plugins I wish I have created and is really useful on the publishing side of WordPress. If you have been looking for a simple nofollow plugin for WordPress take a look at the Rel Nofollow Checkbox plugin

Website Backup

A random photo from Unsplash that has nothing to do with this post but I liked it.
A random photo from Unsplash that has nothing to do with this post but I liked it.

I published a post yesterday over on Cloud Storage Buzz listing 10 ways to backup your website to the cloud. There are a lot of services out there that can help you protect your website and while many of the services I mentioned at Cloud Storage Buzz will help you keep a regular backup of your website I wanted to give you the TL:DR version here.

If you just want an automated backup of your website files and databases these service is great. They are like the Backblaze of website backup, not only is the backup setup easy but more importantly restoring your website is easy.

Fantastic service and the only one I recommend if you need malware clean up on your website. They do a great job.

If you only use WordPress for your website and want to make absolutely sure it is backed up, get Vaultpress. That is all you need to know.

Go backup your website!

Unsplash WP Plugin

Photo by:  Ryan Mcguire

I am always on the lookout for new and interesting photos for use in websites, blog posts and to pass on to clients. There are several places you can get free photos to use, in fact here is a list of 30 of them, but finding the perfect photo, downloading and uploading it again in your WordPress website gets tiring. This is where the Unspash WP plugin comes in.

Installing the Unsplash WP Plugin gives you an easy way to find a great photo to add to your website and the plugin takes care of adding the photo to your local media library so you just have to click and select the photo you want. The image is automatically downloaded and you just need to insert the photo from your media library.

While the selection of photos from Unsplash is still limited the selection is constantly getting better and the ease of adding the photos to enhance your website is worth taking a look the the Unsplash WP plugin.