Workaround for WordPress Out of Memory Errors when Upgrading

Because of my internet host and the number of plugins I run on my blog, I get an "out of memory" error in WordPress each time I try to automatically upgrade my wordpress install from the admin pages.

Long story short, I run out of available memory because I am using a large amount of memory for the MySQL & PHP processes.

The good news is… there's a real simple work around that will allow you to automatically upgrade your WordPress version with very little effort.

Work Around for WordPress Out of Memory Errors on Upgrade

  • Within WordPress admin, bulk select & disable all plugins.
  • Perform the one click upgrade of your WordPress installation.
  • Return to the plugin page & enable your plugins.

Again, this is just a workaround. Your milage may vary.

Oh… and one more thing. Always backup your WordPress installation before making upgrades. (Too lazy to upgrade? Use this plugin!)

WordPress Users: Eat your vegetables!

High profile blogger Robert Scoble had his WordPress blog hacked this week by hackers who exploited a documented bug in WordPress and deleted a large number of his posts.

The sad reality is that it never should have happened.

WordPress knew about the vulnerability and released a system update last month to protect users. However, Robert – who prides himself on being the guy who is "exploring the 2010 web" – Robert ignored the repeated system messages to upgrade for security reasons. To make matters worse, Robert didn't have any WordPress backup system in place.

It's very simple, WordPress users: YOU HAVE TO EAT YOUR VEGETABLES.

Self-hosted WordPress users should *always* install system updates. Period. End of Story. It couldn't be easier, as WordPress literally has a one-click upgrade feature. Stumped? WordPress has phone support – free for the first three minutes. Upgrading keeps your blog and personal data secure. To date, no one who has implemented the suggested free upgrades has been hacked.

In addition to installing system updates, self-hosted WordPress users should have a backup plan. There's even a *great* backup plugin that can run on its own and email you the backup!

Run your updates. Run your backups. Run your updates. Run your backups. Run your updates. Run your backups. Run your updates. Run your backups.

And eat your vegetables!

FriendFeed-Facebook deal reaffirms need for a social media safety net

As I've mentioned before, I'm a big fan of digital lifestreams, a single page overview of your online & offline world. I have my own lifestream that features not only what I'm doing on my blog or other websites, but also ties in what I'm doing offline through pictures & videos. (Check out my lifestream, if you like!)

As focus on aggregated lifestreams (or socialstreams, as they are sometimes being called) has evolved, several really good sites have popped up which allow you to create your own lifestream, including, Profilactic, and – most notably – FriendFeed. Given the simplicity of these great tools, thousands have flocked to these services.

However, with the recent purchase of FriendFeed by Facebook (Friendbook? Facefeed?), it now appears that the future of FriendFeed may be in jeopardy. If FriendFeed folds – just as Swurl & Jaiku did earlier – it could erase (literally) millions of digital landmarks in thousands of user's lifestreams. Since lifestreams are generated as they happen, there's a real possibility that those users will never be able to recreate their lifestreams. Now, thousands of FriendFeed users are looking for ways to back up their lifestream before it disappears.

But the sad reality is, this didn't need to happen.
Continue reading FriendFeed-Facebook deal reaffirms need for a social media safety net

Roll Your Own URL Shortener with WordPress in less than One Hour

With the closing of the url shortening service yesterday, many users are beginning to worry about what will happen to all of their shortened URLs.

The reality of the situation is that many almost every social media service – including twitter, friendfeed, jaiku,, etc, etc – all rely on URL shortening services. (After all, it's hard to have short messages with long urls, right?) But if those services cease to exist, many of the links that have been cultivated, traded, and broadcast will cease to function. In other words, all of your tweets & posts could ultimately become lost or broken links.

The solution? Create your own URL shortening service using WordPress!

Not only will you you ensure that your links don't become broken or rot, but you'll also have complete access to click-through statistics, be able to custom tailor the link name & appearance, and you can harness the power to promote your own brand!

Continue reading Roll Your Own URL Shortener with WordPress in less than One Hour

How To: Conditional Adsense Ads Display in WordPress

I get a decent number of emails asking how I show Google Adsense ads on older WordPress posts on my blog.

Although there may be plugins for WordPress that allow you to display Google Adsense ads based on the age of a post, there weren't any when I needed them years ago. So… here is the php code that I use to show adsense ads on older posts:

<?php /* Check if post and age for adsense */ if (is_single()) { ?>
<!-- insert google ad based on post age KD -->
$days_since = floor((date('U') - get_the_time('U')) / 86400);
if($days_since >= 20) {
echo '~~~~~~~~~~~~~~'; }
?><?php } ?>

(Click here to see an older post that has Adsense ads – both in the sidebar and after the post)

In a nutshell, this php code determines if the page being displayed is a single entry, if wordpress post is at least 20 days old and — if both conditions are met — inserts the Google Adesnse code.

To use this on your wordpress blog, simply replace ~~~~~~~~~~~~~~ in the code above with your adsense javascript code and insert the code into your templates where you would have the ads appear. On my blog, I paste this code into a text widget in my sidebar, as well as in the post-footer.

If you want to expand on the idea to showing adsense conditionally, you can modify this code fragment to work with a variety of WordPress conditional tags.

My Blog Evolution

One of these days, I'm actually going to sit down and write out the evolution of my blog. Given the amount of time I'm spending on my Lifestream, I guess I better hurry before "blog" goes out with the dinosaurs!


Luckily, no screenshots survived the "dark era" of hosted websites.

2001 (Greymatter)

We bought our domain names in 2001 and launched and After a little work setting up the Greymatter websites (perl ftw!), we even built a "home" page with server-side includes of our three most recent posts. Still… the most lasting element is the ridiculously cool animated CRT logo that tied both of our blogs together.

Circa 2001


Remember when MovableType was the stuff? Yeah… me too. We rocked MT blogs for three and a half years.

Circa 2003

2004-2006 (MovableType)

Circa 2004

2006-2009 (WordPress)

We upgraded the blogs to WordPress in 2006. Since then, I've basically run three different versions of Kubrick, and then dilly-dallied with a couple of themes until today.
Circa 2006

2009 Present (WordPress)

I installed Thesis today and — quite honestly — its so scaleable that I will probably be sticking with it (even if it looks like I'm making changes) for the next few years. At least until this whole "blog" thing dies down. Heck… it's been 10 YEARS of blogging for me. Isn't that enough drivel?

Circa 2009

I'll say it again: I really am fond of that old animated CRT graphic from 2001. I gotta find a way to bring that back again soon.

How To: Get RSS feeds for YouTube Uploads & Favorites

I'm doing some behind the scenes, work-in-progress lifestream stuff with Sweetcron here at KevCo (and — interestingly enough — MerCo, too!) and needed a way to pull my YouTube video uploads rss feed and YouTube favorited video rss feed.

Turns out that its really easy:

YouTube Uploads RSS feed: feed://

YouTube Favorited RSS feed: feed://

Quietly Making Noise

One thing I hear a lot these days is that I "never blog anymore".

I have to confess that — relatively speaking — I don't blog as frequently as I once did. But that doesn't mean that I've become "quiet" online.

In fact, it's quite the contrary.

Quietly making noise

The biggest difference these days is that I'm actually sharing other people's content — as opposed to creating my own — about three times as often as I'm blogging. I don't know if that ratio is good, bad, or indifferent, but that's the rough estimate.

The other significant difference is that I'm now micro-blogging more via Twitter, posting several times a day in 140 letters or less. And again, I don't know if that's good, bad, or indifferent… but that's the current state of affairs.

See? I haven't gone silent. I'm just quietly making noise. 😉

Wanna listen? My KevinDonahue.ME lifestream is the one place to take it all in.