Posted by Mitch Mitchell on Aug 22, 2016
Two weeks ago I told y’all about the concept of mobile friendliness vs mobile speed and how I’d been losing all this traffic because the speed of my sites stunk even though all of my sites were considered mobile friendly. Well, I’ve been on a major quest to rectify this, and I’d like to share with you what I’ve been doing.
First, let me remind you that on the above post I showed that my friendly score was 100/100, and my mobile speed was 58/100. What I didn’t share was that my desktop speed was 61/100 at the time. All of my blogs were between 54 to 58 on speed and 58 to 61 on desktop before I started. Let me show you where I stand now, and I have to admit that I’m kind of proud, even if I’m not perfect yet:
That’s not bad, right? I’d have to say I’m fairly proud of what I’ve been able to accomplish… so far. I’ll explain some of the things I’ve done to get to where I am now, while realizing that not everyone will be able to do some of these things unless you’re pretty technical and not afraid to experiment.
First off, let me tell you that upgrading my hosting package to a new one did absolutely nothing for my speed. I waited the 5 days like they recommended, nothing worked, and I contacted them again, only to have them send me the same Google link I’ve talked about previously. I was fairly irked at the time, but after a day I realized that some of what I still had to do wouldn’t have worked if I hadn’t upgraded. So, even though they kind of misled me based on my beliefs, it still turns out I had to do the upgrade anyway.
Back in 2006 when I purchased my package along with my friend Kelvin, compression wasn’t a big deal for websites. There was talk about making sure your website didn’t take forever to load, but most of us never paid much attention to that because, except for those who used a lot of Flash or tons of pictures it didn’t affect us that much.
These days if you run the Google speed test one of the things it recommends you do is set up compression. If your hosting package isn’t up to date, then it’s possible that no matter what you do as it applies to coding your site either isn’t going to speed up at all or it’s going to look like you broke something.
I ran into both problems. First, I created a php.ini file and I added this bit of code to it:
upload_max_filesize = 40M
post_max_size = 8M
Initially I was doing all my testing on my Syracuse Wiki blog and this one. The theme I use for this blog is fairly old, even though I’ve made lots of changes to the files, whereas my newest theme is on Syr Wiki. Adding the compression code in the php.ini file made IJS disappear, while it didn’t affect Syr Wiki whatsoever. After I upgraded, both sites stuck around but increased speed by only one point.
There was another part of compression that had to be performed, and this time it was messing with the .htaccess file. See, even though I was on the new package, it didn’t do the compression unless you told it to. Research talked about turning on what’s known as GZIP compression. Frankly, after reading all about it my head was spinning and I still didn’t understand anything about it except what it was supposed to do. I found this code and tested it, and it helped give me a bit more speed:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
By a bit more speed, I mean that both of these pages were now in the 60’s, both sitting at 62. That’s still considered as poor speed, but it was an error message I wasn’t getting anymore and it was moving in the right direction; yay!
Next I decided to try a caching program because I saw a lot of people recommending it. I was hesitant because back in 2008 I had tried WP Super Cache and it pretty much shut this blog down. Still, I decided to try it again, this time using W3 Total Cache.
The initial problem I had was that it conflicted with the WPTouch Mobile plugin, which actually makes all blogs mobile friendly but doesn’t do anything with speed. I found some adjustments I could make and made them, but nothing I did helped to increase my speed. I’ll admit that I don’t fully understand how caching programs work, but as I looked at the Google recommendations caching wasn’t a problem it was talking about so I decided to remove the plugin and try something else.
Once again, CSS has modified from when I first learned it some years ago. Back then, the idea was that you put everything that you wanted to modify on multiple pages all the time into your CSS files so you didn’t have to individually code each page. These days you can still do that, but certain types of code are considered as secondary code. By Google’s “definition”, any piece of CSS code that begins with “.whatever” is code that doesn’t need to be loaded immediately along with everything else, and that it need to be put into thearea of your HTML coding using < style > codes.
That blew my mind for about a day, and I finally decided to test it on one of my static websites first. When I got a mobile speed of 90 I figured I was on to something. lol Still, this was WordPress template software that I was about to mess with; what if something went wrong? Well, fortune favors the bold, and as long as the bold is careful things usually work out… right?
I opened two Notepad files. In the first one I pasted the entire CSS code into it and saved it onto my computer. In the second I copied and pasted every single CSS code that began with that dot into it and spaced them all apart. Then I added the < style > tag at the beginning of each of these things and < /style > (if you decide to try any of this don’t put the spaces in the code like I did here; it seems that without the spaces it alters the blog post; go figure…) at the end of each one… trust me, there’s a lot of these in each of these CSS files.
I went back to the original CSS file in the blog software and removed all of those dot files, then saved it. After that, I went to the Header.php file and, under thearea, near the end of that tag, I added all of the new < style > codes and saved that. By the way, I’ll be coming back to this process in a little bit because it led to something else that was eye opening.
I went back into the deep research and tested a bunch of different plugins, but almost none of them did anything for either blog. I temporarily added Zara4 as a photo compression program which affected a file here or there, but it would have been a bit pricey to go back and compress all the images that really needed it. I decided against that for the moment, although I did shrink a couple of images, which includes my image to the top right and the images for my books on the left and that helped a little bit but not much.
The plugin that finally worked for me, along with all the other stuff I did, is called Async JS and CSS. It didn’t come up as an option for me until I came across it on a forum and searched specifically for it to add it as a plugin. The first changes I made to the settings, which were recommended, brought the speed of both blogs up to 100/100, which would have been fine except it erased the content of both blogs from the internet; oops! Realizing that not all settings will work on all blogs, I did a little tweaking and actually had phenomenal speed on both blogs, both over 90; Syracuse Wiki is still over 90, and I’m ecstatic about that. By the way, here’s my settings:
Your question is probably why IJS isn’t still above 90. Well, this brings up back to all that stuff I did above with the CSS code that I talked about above. For whatever reason, on all my blogs I have to disable the majority of plugins if I want to make any changes to those files, otherwise I get a “not found” message after trying to save anything. The reason I had to go back in was because there was still one thing I had to add to the header, that being the code that corrects the Configure The Viewport issue that all older themes and websites will have.
In a previous post I talked about how the recommended coding by Google never seemed to work for me. Well, it still doesn’t! Not on my blogs and not on my websites. I figured out how to modify it, so my code now looks something like this: < meta name=viewport content="width=525” >, where I specify a width size. Google still doesn’t like this, but your speed will improve after you add it.
Because I had to go back in and add it, I did it first on my Syr Wiki site and hit that magic 98; wow! Then I came to this blog and added it and was up to 91; yeow! However, when I added all my plugins back, I dropped down to 72.
You know what this means. One or more of the plugins were messing things up. I decided I had to add them back one at a time to see who the culprit was… or who they were. I don’t have a lot of plugins on Syr Wiki since that theme is newer, but I have tons on this blog. So the process began…
The big culprit turned out to be my Readspeaker plugin; oh no! I added it to my blogs back in 2009 as a way for people to be able to listen to my posts instead of having to always read them. I was kind of an early adopter, and it was a free plugin at the time. What I hadn’t paid attention to is that they’ve never added an update to it, and when I went to their site I learned it’s because now it’s a paid model, and the paid model is updated and coded totally different than the one I have.
By removing it from this blog I jumped from that 72 to where I’m now at 86; sigh… Since I have no idea if anyone was still using it these days I guess it’s time to call it a day; oh well…
That’s how I’ve achieved the new speed on both of these blogs… kind of. It turns out that speed only applies to the main blog page. For each individual blog post, the only way to achieve that speed is to compress any images you might have on those pages. This is partially problematic for me because most of the images I use on the site come from Compfight, which is a plugin I use that searches for Common Creative image files I can use for free, but since those images aren’t actually in my files there’s nothing I can do about the size of those files.
I did test it on a post that had my own files, which is the first one I linked to above. The first image was already small, at 22kb, but the one with my picture on it was 614kb. After I did my own bit of compression by reducing the pixel size, it fell to 65kb, which increased the speed a bit:
Frankly I can live with that! 🙂 Course, now I need to go back and alter images that I uploaded on my own. I’m also learning a bit about image quality and how, if my initial file isn’t all that big to begin with, once I compress it the quality drops somewhat drastically (look at the images on this post; they’re all small now but they weren’t all that big before I compressed them).
It seems all this stuff works pretty well, and now I have to go to my other blogs and complete all the things I’ve done with the first two, and if I can get them all into the 80 range I’m going to be a pretty happy guy. However, I have some caveats for you:
First, if you make changes to your .htaccess file and your main page stays but your individual posts go missing, all you have to do is go into your Admin area, Settings, permalinks and reset them.
Second, make sure you save your originals of everything in a place where you can access them in case you need to remove some code that’s not working if you already have that file. As a matter of fact, save everything you’re going to touch, both before and after stuff.
Third, realize that not everything works for everyone. Just like I said about the Async JS plugin above, the recommended settings removed all my content from the web (my files were still intact but no one would have been able to see anything) so I had to test and modify to find something that worked for my blogs.
Fourth… don’t kill yourself shooting for 100/100 for everything across the board because you’ll never sleep well again. I turns out that the two separate links from Google for checking mobile speed don’t even agree all the time; what’s that about? Truthfully, “fair” is probably pretty good, but the higher you can get your score without going overboard the better.
Fifth, image compression the easy way can be achieved by shrinking the pixels of some of your image files if they’re overly big yet probably won’t change how they look on your blogs or websites. If you have any images over 600 pixels on your website or blog, those are going to hinder your speed.
Sixth, if you use WPTouch, you might need to go back into the settings and fix your phone theme colors once you do all this stuff. I had to do that because it made my backgrounds white with all print black until I did. I’m not sure what changed it but it’s an easy fix if you need to correct it.
I’ll stop here because this might boggle some minds. I’ll answer what questions I can because I still have a lot of work to do. The lucky thing about blogs is that once you alter the CSS files and the Header.php file it takes care of all the previous posts going forward. For a website however, you have to make the header change on each and every single page; ouch! Still, it’s better to have a solution that works and only takes modification rather than still trying to figure it all out… at least that’s how I see things.
Posted by Mitch Mitchell on Aug 15, 2016
Anyone who reads this blog knows that the biggest issue I have with many blogs these days are newsletter subscription popups. Although I hate them with a passion, I didn’t mind as much when they showed up at the bottom of the content. My gripe was always that the popups came without giving us the opportunity to even know whether or not we wanted to subscribe to any of the content, and my solution had been to try to never go back to those blogs ever again.
That turned out to be futile. I like sharing other people’s content but when you’re on Twitter, you’re rarely sure where a link is taking you. So I’d often end up on blogs I said I wasn’t going to visit again because of the popups, which was irksome because the topics seemed like they’d be really good.
I finally have a solution, it works every time, and I’m going to share it with you. The thing I want to tell you up front is that you have to be willing to either do some work on the back end or just ignore a few things here and there, but it works, it works every time on every blog or website… at least if you use Firefox, and probably on Chrome also.
One, you can decide to either temporarily allow a site or permanently block it. You can always remove the permanent block in the extensions settings but I’d think hard before doing that. I’m only blocking a few sites, those being Forbes & Inc, which makes you turn off your Adblocker before they’ll let you see their content. I figure I’m not doing that, so why even keep me on their sites, right?
Two, you can decide you want to whitelist a site because you visit it often and trust it. In that case you highlight the address in the address bar, go to the extension in your browser and click on the options button, go to the whitelist menu, paste the address in and push Allow. When you go back to the site you’ll see the page as you expected to see it.
Of course there are some sites automatically whitelisted. Those include Google and Facebook. You can decide to remove those if you wish but why would you unless you’re never going to use either of them. 🙂
This extension is only for Firefox. Chrome has its version of the same extension called No-Script Suite Lite, and it does the same thing as No Script does for Firefox. The only reason I’m not adding it to Chrome is that I don’t use Chrome that often, and the only time I actually do is when I want to see some Flash content that Firefox won’t show (I removed Flash from my computer last year) and, for some reason, Chrome shows it. However, if you add this script you might have to either temporarily or permanently whitelist the site so you can view Flash content.
It took me a while to find this but I finally did. I’ve been talking about this irritation since 2008 when popups were in their infant stage and now I can breathe freely once more. Some people might say this is an inconvenience and yet many people are using Disqus or other inconveniences on their blogs which includes Captcha and moderation of comments; this proves we all have our bugaboos. If anything, this will allow me to share more content because now I won’t know which sites have popups on them, so it won’t be my problem anymore, and it won’t be anyone else’s problem if they decide to add either of these extensions.
Posted by Mitch Mitchell on Aug 8, 2016
I was looking at my site on Saturday night and I noticed my Alexa rank. Even though most people think there’s no use for Alexa, it turns out there is. and it scared me. I noticed that my traffic had dropped drastically and I wanted to see what the issue might be.
I looked at my Google Analytics and noticed that for every single one of my websites my traffic had dropped drastically around the beginning of May. I thought that was strange and I wasn’t sure why that was happening so I did some research.
It turns out that at the beginning of May is when Google decided to look at web sites and determine whether they were mobile friendly or not, which I thought I was totally prepared for. I had gone through a lot of work to make sure that all my websites were mobile friendly, and I had even checked them against this Google page that indicated that all my sites were mobile friendly. So what was the issue?
It seems mobile friendly isn’t the only thing to worry about. The other thing we have to worry about is mobile speed. I hadn’t paid that much attention to mobile speed because all everyone ever talked about was being mobile friendly. When I checked all my sites against mobile speed, even though they all still came up mobile-friendly, my mobile speed was around 60/100. It turns out that’s considered a poor mobile website; who knew?
I’m one of those people who is at least a little bit tech savvy. I’m also a pretty good researcher, so I did my thing and started doing all this research, then started finagling with code to try to get the mobile speed up to par. The problem was associated with compression, though initially I thought it might be a problem with image sizes. However, since my blogs won’t accept large files, I didn’t think it was that particular issue. It was associated with something called “gzip compression”; I don’t fully understand it but it didn’t mean I was scared to try to correct the problem.
At one point I actually succeeded in getting my mobile speed to 100/100, and thought that was pretty fantastic. However, two things happened. The first is that my mobile friendly went down from 100/100 to 72/100, which is only considered fair. The second is that all my websites suddenly had internal server errors; that wasn’t good.
I had to go back and remove all the new code that I had added to both php.ini and .htaccess to get my websites back; whew! Once that was accomplished, I dabbled around with the code for a longer period of time, finding more examples during my search including on the 1&1 site, which is where I host my sites.
After almost 3 hours I decided it was time to call 1&1 to see what they might offer. The recommendation that was on their site was from 2014, so I thought maybe it was out of date.
I spoke to the lady who told me she would send me a code I should add to .htaccess. When I got the code in the email it was the same code I had already tried. I wrote her back saying it didn’t work, gave her a screenshot of the Google test as well as other information that I had in both php.ini and .htaccess. After I hadn’t heard from them in a couple of hours I decided to go to bed (it was close to 2:30 in the morning after all lol).
Sunday morning I checked email and found that the reason none of what I was doing would work was because I was on a package that was 10 years old and they hadn’t just rolled it over, which seems like it would make sense until I realize that neither the phone companies or cable companies would do it automatically either. In essence, nothing I was doing was compatible with what everyone else might have because I’ve been with the same package for too long.
Sunday afternoon I finally made the call to 1&1 and, after having all my questions answered, I decided to upgrade my package. Here’s the funny thing though. Upgrading my package is costing me $0.13 more a month. Also, for the first year I’m getting it at $6 less than what it would normally cost, and they have to give me a prorated discount because they had just taken a payment against my credit card last week so they have to apply that to the new package. In essence, this means for the first year I will be paying them just under $50, and after that it will be $14.99 a month, which they’ll bill in one shot as opposed to the quarterly billing I’ve been paying. Not only that, but with the new package I won’t be paying $5.99 for extended PHP support, which I was paying because my sites weren’t compatible with the latest PHP under the old package; sigh…
Supposedly it’s going to take 3 to 5 days for everything to be working properly. After that time, it’s my expectation that I should at least be close to 100/100 for everything since compression will automatically be on via the hosting company. Hopefully this will result in a turnaround in my stats, although since it took 4 months for it to fall this far it just might take the same amount of time to get it all back… but I’m hopeful.
I tell this tale because I’m betting that some of you have been going through some of the same things I have. If you have exhausted all of your options and you’re still having issues with your website as it applies to being mobile friendly, you should check with your host to find out if your on a proper package that will help you take care of this issue. If only I had known back in May… sigh…
Posted by Mitch Mitchell on Aug 1, 2016
Once again this weekend, I was visiting a lot of blogs and commenting on them. On three particular blogs they had the CommentLuv plugin, and on all 3 I got that stupid “Parsing JSON Error” message that I’m sure many of you who have visited blogs have received. This time I was irked, because my sometimes workaround, which is to hit the F5 key (after copying your comment in case you have to paste it back) to reset the other person’s blog, in case it’s their error, didn’t work.
This means it was time to do some research. You know what; no one had my answer, and that irked me to no end.
One blog post I found said to go into my CommentLuv settings, open the technical settings, and uncheck the box that says “use security nonce for ajax calls”. That wouldn’t work because it was already unchecked.
Another said to clear your cache, but it assumed we all use a caching plugin on our blogs. I’d tried that some years ago and it crashed my blog, so that wasn’t going to solve my issue.
However, clearing the cache seemed to be a big thing on a lot of forums I looked at, even to the point of clearing your browser cache (don’t do it for this purpose; it doesn’t work). So I was frustrated to no end.
Until I remembered that I do have an interesting plugin that I’m not sure everyone else has. It’s called WP-DBManager, and it’s basically a plugin that accesses your database and lets you, well, do a lot of different things if you look at the image above, which comes up when you click on Database on your main WordPress menu (which appears after you load the plugin).
For the purpose I was searching for however, the choice was Optimize DB. You’re actually supposed to run it at least once a month to make sure things are working well but, like brushing your teeth, who really follows that rule? I ran that option, it only took a few seconds, then I went back to two of the blogs where CommentLuv failed to find my blog posts, ran a quick test (I just put in one word in the comment section, filled out the normal name, email & link area)… and all was right with the world!
That got me to thinking about other plugins I use, though not on a continual basis, that might help some of you. Let’s look at some of these, though it’s possible I’ve written about them in the past (who goes & looks at my old posts anyway, unless I highlight them?).
Another plugin I use to help clear things up is called WP-Optimize, which is similar to the database plugin except it clears out all those revisions we all make to our blogs from time to time and allows you to optimize WordPress core tables… but you have to be cautious with this one because it will warn you that some of the options are only when things aren’t working well.
I know I’ve talked about this one before, but it seems like a lot of folks are having their blogs hacked into lately. It’s called Limit Login Attempts, and it basically allows you to set how many times someone can try a username and password before it locks them out.
Mine is set at 4 times, at which time it won’t accept anymore tries from that particular IP address for 4500 minutes the first time (about 3 days), 300 hours the second time (12 1/2 days) and 900 hours the third time (37 1/2 days). This will pretty much stop any bots trying to get into your blog that way, but you’ll probably want to add the WordPress Firewall 2 plugin to help shield your blog from those suckers also.
The final plugin I’m going to mention is called WordPress Database Backup; that’s pretty self explanatory I assume, but I have mine set up to send me a file once a month in case something happens that causes the blog to crash. Luckily I’ve never had to use it, but I know some folk have lost it all (though there are other ways to find their information; this is just the fastest way to handle things).
I think that should get some things fixed and protected on your blog. Let me know how it works for you.
Posted by Mitch Mitchell on Jul 25, 2016
Guess what; I’m part of another blogging roundup. This time, I got to be one of 37 people who was asked what our biggest blogging mistakes were. Check that out because there’s some pretty big names on that list; that I got to be a part of it is pretty cool.
Actually, my little contribution led me to looking at some of the things other people had written on that post. It got me thinking more about what I would have done differently if I were starting a new blog today and had someone like those folks, or myself, to give some guidance on the process that would help me to get off to a good start.
Today y’all are lucky because you not only have that link to go to but you have me writing this particular post; you can thank me after you’ve looked at it… and I hope I don’t scare anyone off. Here are 5 things I’d do differently, or at least recommend to anyone thinking about starting a new blog.
1. Write 10 articles
It seems I mentioned this on my post giving 55 tips on blogging but not with much context to it. There’s more than one reason to do this.
First, most people forget that they hated writing in high school and college. If they couldn’t write 500 word papers then, why should they think it’s easy to do now? That’s why they should sit down and try to write 10 articles on their topic.
It might take a week; it might take 3 months. It’s a great learning curve to see if you have what it takes to not only write articles, but you can evaluate yourself to see if you want to continue writing.
Second, this is a great way to have ready made content when you’re ready to launch your blog. You end up having one article you can post immediately and 9 articles you can schedule over time. This gives you more time to write more articles or you can wait until those articles are live before writing some more.
2. Find your writing voice
When I started my first blog I’d already been writing two newsletters for 2 years. When I went back to work on my 2nd book on leadership, which is a compilation of newsletters and blog posts I’d written up to the end of 2008, I realized how rough it was to read those early articles. I was all over the place, trying to stuff as much stuff into an article as I could without any direction.
At some point I seemed to have found my writing voice. If you read my posts over the last 7 or 8 years you’ll see that my style has been pretty consistent. That helps your visitors get used to how you write and what your words will sound like in their ears. Everyone might not like it but if you’re authentic you’ll reach the people you want to reach.
3. Set something up for email subscribers
I hate popups with a passion; everyone knows that by now. I’ve never signed up for any type of autoresponder. In retrospect I probably should have thought about it, which I’m still thinking about now, because there’s more than one way to get it done.
I still use Feedburner for my RSS feed, and I always thought that would be enough. Yet, when I launched my last book, it wouldn’t have hurt to have a real mailing list to send notice to the readers of my business blog.
4. Copyright protection
If you look at the bottom of this article you’ll notice a copyright notification. That helps to protect me from content thieves, which unfortunately can be fairly comprehensive from time to time. There was a time period when a lot of my content was being scraped.
I made it hard on myself to find it, and though I found them all, one was hard to get rid of because it was located on some offshore island whose ISP I couldn’t reach. That’s when I decided to start using the plugin called Digiprove, also known as Coyright Proof. It makes it easier to prove that you own the content, because in the day you had to fill out all this paperwork to get your stuff removed and then they took time to verify it before they’d do something about it. Check that site out; it might be valuable long term.
5. Figuring out how to use more of my own images
For some reason it helps to have at least one image in a blog post, no matter how short or long that post is. Turns out we’re all pretty visual people. The hard part is trying to find images that fit every topic, or a topic you happen to be writing on at the time.
For instance, blogging; what do you put up for blogging? There are some images I’m able to get from Compfight, which searches for Creative Commons images you can use via Flickr, that work nicely. But sometimes you just can’t find the right image for everything.
I have at least a few thousand images of things I’ve taken on my own. True, many of them might not fit a specific topic, and “experts” say that one should try to fit images to whatever you’re writing about. But as I read tons of blogs and news stories and I see images that skim the edges of a topic at best (let’s face it, when all else fails a lot of these websites with articles just throw up pictures of beautiful women) I’m thinking that there might be a place for more of my own shots.
This is one reason I’ve been putting up more of my own images on my posts this year. I figure putting a picture of myself, either alone or with someone else, works well since I’m the writer. If I had the talent I could caption many of the images I have to make them fit; that’s something some of you could learn. There are few images from the early years of this blog or my business blog, and I think I could make those articles more appealing with an image or two.
There you go; 5 things I wish I’d started doing when I started my blog, that I’d do if starting a new blog. What do you think?