SEO Tools

by Rob Chant on February 26, 2009

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

After all the malarkey and general polemic of the web 4.0 thing, I figure it time to return to business as usual with this blog. In other words, plenty of dry talk about CMS design, PHP and all that stuff.

My subject for today is SEO and CMS design. Before I begin, however, a very quick ramble. This blog is ostensibly about my own CMS, Renaissance, but that subject by itself would end up being pretty dry pretty quickly. Although I do tend to bring posts back to Renaissance at some point (or start them off with it), I’m really trying to talk about CMS and web application development in general. So discussion and feedback around the general topic is always welcome!

Anyway, SEO…

SEO and CMS design

This has become a big thing for me recently. The reason’s pretty simple—I do a lot of serious SEO, both for clients who have sites built with Renaissance and people who have sites built with all sorts of other things… Joomla!, WordPress, CMS Made Simple, et cetera. As you might imagine, this has given me a fair amount of insight into how different packages handle the problem.

Now, I’m not going to go into detail or criticise the implementation in any given package. What I will do is say that although most packages seem to do reasonably well, all of them seem to be missing key features. The only reason I can think of for this (because, let’s face it, it’s all easy to implement) is that developers and SEO professionals have pretty different ideas on what SEO requires.

Another thing I’ve found is that different themes, templates and plugins can change a package’s SEO performance drastically. That’s nuts, if you ask me. SEO is a core feature. It’s easy to implement. It’s important. Almost all web sites have to worry about it to some extent. I don’t think there’s any excuse for needing a plugin or theme to get it to work properly*.

The Basics

I reckon the following list pretty much covers the basics of successful on-site SEO. Everyone seems to get this lot. It’s all good stuff:

  • light-weight, semantic and valid mark-up
  • ability to specify meta tags on a per page basis
  • full control over the title tag on a per page basis
  • enforcing image alt properties (also very important for accessibility)
  • specifying title tags for links
  • and a few other bits and bobs

Okay, no problems with that lot (I’m sure there are a few things I’ve missed, so please feel free to comment and I’ll update the post). The trouble is, SEO is a lot more than that!

Going further

I could go on and on here, but I think the most important thing that CMSs and other packages miss when it comes to SEO is control over the web site’s structure itself. Controlling how link juice flows around your pages is very, very important. XML site-maps are very important (okay, most packages have plugins that support them or can do them natively, but why aren’t they standard and ubiquitous?). Controlling which pages end up in your site-map and which don’t (and with what priority) is important. Being able to have a customised, structured title tag system is important. Likewise for page slugs and perma-links (okay, a lot of apps have this, but far from all). How about internal reporting and metrics?

Okay, you get where I’m going here. This post isn’t meant to be a rant, after all, so I think I’ll make a list… they’re kind of safe from that respect!

SEO wishlist

Okay. So now we get down to the meat of it… again, I’m sure I’ve missed loads of great ideas here, so please contribute if you can. These are all things I deem to be essential or very desirable, as standard, in any web site building package, be it a blog, CMS or something else entirely (I’m not including the basics given above).

  • Google (and other XML) site-maps,
    • automatic creation.
    • ability to specify the pages that go into it or stay out.
    • ability to specify the priority for each page in the site-map (interesting to think of a way to do this algorithmically too).
    • automatic addition of the last modification and update frequency parameters.
  • Internal specification of whether you want that pesky ‘www’ prefix or not, and the appropriate redirection necessary.
  • Being able to ‘nofollow’ a page—in other words, automatically tagging all internal links to a given page with nofollow, making that page invisible in the eyes of the search engines.
  • Total control over the titles, slugs and permalinks on a site—both systematically and being able to override the system for any given page.
  • Reports and metrics on,
    • code/content ratio for pages.
    • on-site keyword performance (e.g. how often your target keywords are showing up in strong tags, internal links, heading tags, keyword density, et cetera).
    • incoming and outgoing links on your pages.
    • how search juice is flowing around your site and where the most ranking is sitting.
    • external rankings, search engine cache freshness, crawl rate, et cetera on individual pages (okay, this would require API integration with various services).
    • Traffic from external links, along with the anchor text, et cetera, for those incoming links.
  • Automatic population of the key meta tags (and again, being able to override it where you need to do so).
  • Dealing with the canonical tag appropriately and automatically.
  • Allowing versatile use of the hash character (#) in URLs (it can be used for all sorts of fun stuff!).
  • Automatic redirection from the old link if you change the name of a page—no need to worry about setting up 301s manually.

Behaviour is important too

Okay, I know a CMS package shouldn’t exactly try to dictate how you run your site (although it’s inevitably going to have an impact, just through the way it’s designed). However, I know, from personal experience, that a big block for SEO or anything like it is simply getting around to it. There’s so much to do, and a lot of is it important but not urgent. You’ve always got tests to run, stats with which to keep up, an eye to keep on your editors and writers…

So how about just a little automated nudge now and then? Say, a simple message when you open up the dashboard telling you which pages are suffering on keyword score or which are lacking internal links. Admittedly nice to have rather than essential, but I know that kind of thing would spur me into immediate action.

So how does Renaissance perform?

Not too bad, ashkualy. Sitemaps are there, lots of title tag stuff is there, nofollows are there. URLs are very SEO friendly, although, alas, not that configurable yet. Most of the meta tag stuff is there. Alt properties for images are there. The mark-up is very light weight and is pretty semantic, although it could possibly be improved in that respect. Pretty much everything else is still missing, but I’m working on it! I’d love to have those reports and reminders/nudges in there soon for starters.

Thoughts?

And, as ever, I’ll finish off with the usual request—your thoughts? Comments? I’m sure I’ve missed loads of good stuff.

Thanks for reading!


*I use the Thesis themefor WordPress for this blog, mainly because it promised great SEO functionality. It’s okay but still a bit lacking.

No related posts.

{ 4 comments… read them below or add one }

1

-- 02.27.09 at 3:42 am

Nice tips but still, you really miss a lot of “how-to’s” in optimization. Knowledge about ping to alert search engines..?

2

Rob Chant 03.02.09 at 12:03 am

Thanks for the comment.

The post was intended just to put forth some ideas, not really for tips or how-tos. I might cover that kind of thing in future though!

3

Matt Inertia 07.23.09 at 10:07 am

How about internal keyword linking within the content? Thats something that a lot of SEOs and developers miss. There’s a great plugin for wordpress that does this (alinks) automatically and its great for accessibility as well. But it adds a shed load of code bloat to each link.

p.s. i read your youmoz post. Any chance of getting on that group mailing list?!

Matt (SEO/Marketer/Wordpress dude from Lancashire)

4

Rob Chant 07.24.09 at 4:34 pm

@Matt, thanks for that, it’s a great tip. Renaissance automatically generates links between pages in the body text, according to rules that you specify (and you can turn it off completely if you wish). It doesn’t do much on reporting what it’s doing though, which is a problem.

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>