Google Nexus S

Google Nexus S

I’m now an owner of a brand new Google Nexus S phone. I’ve been running around with a Nexus One before and so far I don’t see much difference, other than that’s it’s a little bit faster and bigger. Just like the Nexus One model, Nexus S is not meant to be sold in Russia so I had to get it from an online store without warranty from Samsung. Oh well, hope it doesn’t break ;)

Using the Google Analytics API in WordPress

There’s a great article over at Theme.fm on Using the Google Analytics Data Feed API in WordPress which covers some pretty interesting techniques to grab and make use of data stored in your Google Analytics profile, like what are your top 10 posts this month, or what were the most searched ones, etc. I’ve authored that article so feel free to ask questions ;)

Google Webmaster Team on SEO

We’ve seen this a lot, keyword stuffing, the strong tag miss-used and of course the heading tags. I’m deeply sorry folks, but Google is right, for good and long term relationships with the search giant you should put all your effort into content. The rest is just good practice. And if you haven’t seen this yet, you should: Search Engine Optimization Starter Guide.

OS X Mail is Okay, but Google Mail is Better

Been running Mail for OS X for a few days last week. I decided to give it a go after seeing my friends use it and.. Oh well. It totally messed up both my personal and corporate accounts, flagging is broken, mark unread too because as soon as you delete one message the next one is automatically read. And I actually had one of our clients reply to my personal e-mail, I wonder how that happened.. Also, my contacts were never imported which is strange.

Anyways, I’m back to using the Gmail web interface for both accounts, multiple sign-on works well and Google can also display popup tooltips when new mail arrives. Hopefully OS X Mail didn’t delete any of my e-mails and contacts on the server ;)

A Google Web Fonts Gotcha

If you’re working with Google Web Fonts there’s something you should watch out for. I was working with one of my favorite fonts Open Sans and the 300 weight version looked perfect on my computer while too thin on my friend’s.

Mac Font Book

I realized that I had the Open Sans font installed on my Mac, so disabling the font (or deleting it) helped me look at the website the same way my friend was viewing it and yes, I had to grab the 400 weight version to achieve the results I’ve seen before on my screen.

I'll be at Google Developer Day 2011

Google Developer Day 2011I can’t believe this is the first post I’m writing here in September. I really have to do something with myself and my time management and in my defense I can only say Theme.fm is doing pretty good, but okay, this post is not about WordPress.

This post is about my favorite tech conference — Google Developer Day and this year will be my third year in a row in Moscow. I’m not expecting much this year since from last year I’ve stepped a little bit away from Google App Engine, although I’m still using it from time to time. What’s interesting this year is the “Social” track and of course Google+. I bet the room will be packed, just like Wave during it’s days ;)

Also interesting: VC Panel, Google+ Hangout Apps, Google+ APIs and of course the good time we’ll have with my friends, the food and drinks, amazing as usual. And let’s hope I get to see some of my “old friends” from Google ;) Make sure you poke me if you’re coming so we can chat and play video games during the breaks.

Meet Chromebook: Not Even a Desktop Background

You all know I’m a big fan of Google’s promotional videos, and here’s a really really nice one about their new Google Chromebook. Definitely one of the best promo video’s I’ve seen so far, and even better then Nexus One ;)

I’m not a big fan of Chrome OS but I do use Chromium for work and play, and I really love the idea of having no software. Salesforce, remember? And Larry Ellison on cloud computing: “If there’s no hardware or software in the cloud, we’re so screwed!” ;)

Learn more about Chromebook

Snippet: Nofollow for Tag Cloud in WordPress

Tag clouds are good, but in a previous post called WordPress & Google Analytics: Tracking Your Tag Cloud I admitted that they’re not very useful, and especially for search engines — which is the topic I’ll discuss today.

I’m not an SEO junkie or anything but I do have some knowledge of the basic rules, one of which is avoid duplicate content. Now fire up your blog homepage — you’ve a list of your latest posts. Open the tag archive of some popular tag — you’ve got that very same list there. So for sure we have to ask Google not to index the tag archives, but we also have to ask Google not to follow links to such archives on every page.

The first step is done using robots.txt and according to your permalink structure. Mine for instance is /tag/tag-name so in order to disallow Google and other search engines to index that, I add the following to my robots.txt file:

User-agent: *
Disallow: /tag/

Please note that this is not a guide to the best robots.txt for your WordPress blog, and in reality you have to disallow more than just the tag directory (archives, search results, etc).

The second step, which is mainly why I wrote this post, is a short snippet for your functions.php file, that attaches a rel attribute with a nofollow value to every link produced by the wp_tag_cloud built-in function. This looks very much like the code snippet I shared in my last post only with a different regular expression. The two can be combined. Here’s the snippet:

function my_wp_tag_cloud($return) {
	$return = preg_replace('/(<a )/', '1rel="nofollow" ', $return);
	return $return;
}
add_filter('wp_tag_cloud', 'my_wp_tag_cloud');

Not the best regular expression ever, but that should work on the major themes out there. It looks for the opening tag of the anchor and simply attaches rel=nofollow, as easy as that ;)

Now save that and go back to your blog, view the source (Ctrl+U) and verify that it didn’t break anything. Now all your links in your tag cloud are marked as nofollow, thus each page containing the tag cloud will give away much less link weight to your tag archive pages (according to Google’s PageRank algorithm), oh by the way Larry Page is now CEO ;)

Update: Also, as Nathan and Andrew mentioned in the comments, there’s a wp_rel_nofollow function available since WordPress 1.5.0, so you might as well use that directly:

add_filter('wp_tag_cloud', 'wp_rel_nofollow');

Works like a charm, but the manual technique I’ve shown earlier allows you to add other relations to links in the tag cloud, for instance archives, or attach tracking code to your links for Google Analytics (a snippet introduced in an earlier post).

Hope that helps you out in your SEO journey.