Tag Archives | W3TC

Woot! I fixed a cranky WordPress plugins conflict

Coders and bloggers can do the victory dance too…

Geek alert: this will be highly technical, convoluted, and no doubt indecipherable to many. A WordPress plugins conflict on this blog made it seemingly impossible to create a sitemap, no matter what I did. The problem appeared to be a problem deep with the innards of W3 Total Cache. If I deactivated W3TC, sitemaps were created. But I couldn’t stop using W3TC because it also publishes to my Amazon CDN.

A disk cache like W3TC speeds up a website by offering static HTML pages to visitors rather than re-creating the page each time with dozens of database operations, etc. The home page of this blog is written in PHP and accesses the database. W3TC makes a HTML copy of the home page and gives that to readers. It knows when a post is added or updated and automatically updates the cache.

W3TC also publishes all the images and much of the code on the blog to a content distribution network on Amazon, who puts it on servers across the planet. So, if someone in Japan looking at polizeros, they will be viewing a header image stored on Amazon servers in Asia rather than in Texas, where the blog is hosted at Rackspace. This allows much faster access to the blog and cuts way down on server usage. My bill last month from Amazon was about $2. This clearly shows the power and advantages of cloud computing. You only pay for what you use, with no monthly minimum charges.

A sitemap is a special text file that lists all the pages and posts on the blog. Search engines use them to quickly find and index what is on the website. But whenever I tried to create a sitemap with W3TC activated, a page not found error would occur when trying to view it. After trying several sitemap plugins, I settled on the BWP Google XML Sitemap plugin, got the error again, and emailed the developer.

Folks, when you email a developer, be nice! A grumpy inquiry may get ignored. My inquiry was friendly and he had the answer. Go to the 404 error section of the W3TC Browser Cache tab and change sitemap\.xml(\.gz)? to (sitemapindex|[a-z0-9_-]+)\.xml. I did so and the sitemap then created itself instantly. See, wasn’t that simple. 🙂

This took me about a month to figure out! And I of course sent a quick Thank You to the developer.

Geeking out with WordPress, CDNs, and Amazon CloudFront

It is truly amazing how powerful and sophisticated WordPress is becoming. Even better, much of this functionality is available from free plugins and themes. (The developers of such products can make money by doing support, custom work, etc., after giving away the main product and building a user base.)

Here’s an example, using the disk cache program and theme that Polizeros uses. This blog was hitting compute cycle limits at Laughing Squid, where it is hosted. They said it was due to excessive database hits on the server while loading pages. I deactivated various plugins. monitored the results, but that didn’t help much.

Then, I discovered that the theme I use, the highly configurable Atahualpa, has an option to put CSS and JavaScript inline rather than external, plus you can compress CSS. I turned these options on. Google Page Speed went to 94 from 90. Okay, now we’re starting to get somewhere.

Home of W3 Total Cache

I then contacted W3 Total Cache and paid them to examine my cache settings. I had also just implemented Amazon S3 for storing data and images. They tweaked a few settings then advised me to use Amazon CloudFront on top of S3. W3TC has full support for both.

This is where it gets really powerful. Amazon S3 stands for Simple Storage Service. W3TC uploads all the images, CSS, JavaScript, and theme files from Laughing Squid to Amazon S3 where they are hosted, thus dropping load on Laughing Squid. CloudFront is a layer on top of S3 which takes the files from S3 and distributes them to servers across the planet. So, if someone in Scotland views Polizeros, much of it will be coming to them from the Amazon CloudFront site in London and not coming from the US. This obviously speeds things up for them.

S3 and Cloudfront are part of Amazon Web Services

Best of all, Amazon Web Services are pay as you go with no minimum fees. Everything I’ve just described might cost me 20 cents a day. Blogging has come a long way.

The Atahaulpa theme is amazing. It has 28 pages of configuration items. You can make hundreds of changes to the theme from the Dashboard. There’s no need to go mucking around in code. The entire look and feel of a blog can be changed in three minutes without touching code. But, and this is crucial, you do need to know what you are doing! You may not have to change code but understanding what it does and how a WordPress theme works is crucial.

W3TC has nine pages filled with complex configuration choices. It was written by Frederick Townes originally as the cache for giant tech site Mashable and then turned into a WordPress plugin.

Both of these fine products are free. That’s what makes open source so powerful and vibrant, large communities building software for the betterment of all.

As for those compute cycles, they dropped sharply after I went to S3 and CloudFront.

WordPress Plugins are getting sophisticated and powerful

In the past few months I’ve really ramped up using WordPress plugins, and they do some amazing things. All but two are free.

AddToAny is the widget at the end of each post which lets you share it on dozens of sites. I use it myself to to post to Twitter, Facebook, and Stumbleupon.

After the Deadline. Spell and grammar checker. Highly useful.

Akismet. Kills spam comments. Essential.

All in One SEO. Definitely improves visibility on search engines and does so completely ethically.

Backup Buddy. Backs up the database or the entire site and FTPs it to the Amazon S3 cloud. Fully automated. $45 and totally worth it.

FD Feedburner plugin. Takes all possible version of your main RSS and redirects them to Feedburner. This way someone subscribing to the RSS feed always gets Feedburner.

Pubsubhubbub. Instantly sends new posts to a cloud hub where they get picked up fast. With this, new posts on Polizeros literally appear in my Google Reader RSS feed 5 seconds later.

W3 Total Cache. The best cache around. 8 pages of configuration items (!) Be ready to spend some time learning it. Hint: If you are on a shared server, do not use database or object caching. It dramatically cut the load time here. Stats. A great way to track how many people are on the site. Appears in the Dashboard.

WPTouch Pro. Displays the site in a mobile format for iPhone / iPad / Android / Blackberry. If using W3 Total Cache, you must allow and disallow various user agents in order for WPTouch Pro to work right. Both plugins explain what to do. $25 and also worth it.

What plugins do you use?