What Powers More Than 85,000 Sites and is Trusted by Brands Like Sony, Sandisk, Microsoft and Ford?
Google Correlate, Swine Flu And The Flying Spaghetti Monster
All the Bells but None of the Basics - SEO Friendly CMS Fundamentals.
09 Jun 2011
“And here is your new all-singing all-dancing website running on our new CMS. You name it, it has got it! HTML5, JQuery, Flash, The Works!” “Can I change the page titles?” “Erm.... No!” SEO isn’t a dark art. Yes some strategies and techniques must stay behind closed doors for paying customers, but there is still a core part of SEO that is well documented and can be done by anyone with a basic understanding of the web and more importantly a CMS that will let them.
Neither SEO or CMS's are a new thing. They have both been around for a long time and should in theory go hand in hand. Many proprietary CMS systems incorporate basic SEO functionality but even in 2011 it is surprising just how many CMS systems, usually based around the reselling of WordPress (Yes you can!), Joomla, Umbraco or similar, don’t. So with the aim of educating both web developers and their potential clients, let’s have a look at the SEO fundamentals that should be offered as a minimum by every CMS and how they can be added if not already present.
SEO Friendly CMS Fundamental
As a bare minimum, a CMS system that is “SEO Friendly” should allow you to:
- Create bespoke page titles of any length for each page.
- Create bespoke page descriptions of any length for each page.
- Create both of the above without it having an effect on either the page URLs or the main H1 or content title element. Seriously why on Earth would I want the URL, the page title and the main heading to be linked.
- Allow you to use human readable URLs.
- Allow you to edit these human readable URLs.
- Allow you to implement 301 and 302 redirects should you need to.
- Allow you to rename the page (in terms of its name within the CMS system), again without any effect on anything else.
If you are really lucky you may even find one that also:
- Allows you to specify a Canonical tag on each page.
- Allows you to add no follow elements to links.
Don't have all of these in the CMS you are selling? Don't have all of these in the CMS you have just purchased? Well, here’s some ideas of where you may get help via plug-ins, advice or similar.
There is a name for WordPress-related SEO and that name is Yoast. You will not meet anyone more passionate about WordPress than Joost de Valk and he has produced the ultimate in SEO plug-ins for WordPress, aptly called his “WordPress SEO Plugin.” It’s free, easy to install and does all of the above that aren’t already handled by WordPress. Yoast.com also contains a large number of other plug-ins to aid with tracking, social integration etc. as well as a load of advice articles making it your first port of call for all things WordPress (especially if WordPress.org hurts your head). He also talks about general issues and other systems such as Magento.
Like WordPress, Joomla is also plug-in/module/extension-based. Again the latest versions of Joomla (1.5 and 1.6) go some way to appeasing some of the basic SEO requirements such as human readable URLs and URL rewriting via .htaccess, but there is still room for improvement and extensions to provide that improvement for you. Although I can’t give specifics with regard to Joomla, having not found a solution that stands out so far from the pack like Yoast above, there are extensions to do everything. You will need to watch out for:
- Compatibility issues with Joomla 1.6
- Compatibility issues with other extensions
- Paid versus free
But the Joomla community is very strong and helpful so it doesn’t take long to get the answers you need. The Joomla official site can be found at – http://www.joomla.org/ The Extension Library can be found at – http://extensions.joomla.org/ The Community can be engaged at – http://forum.joomla.org/ There is also a pretty some pretty good advice to be found at - http://www.joomlaseo.net/
Until recently I was a pure PHP / Apache man with a bit of a chip on my shoulder about .NET technology. Well, all this changed when I was introduced to Umbraco. Umbraco is an excellent example of a useable and customisable CMS. Like most CMS systems Umbraco does have a number of extensions or projects available to expand its functionality. Generally though the template and back end system for Umbraco is so flexible that you can easily get it to do exactly what you require just by overriding the core functionality. By default Umbraco (annoyingly) links the Page URL, Title and CMS Page Name, but unlike most other CMS’s, it is amazingly easy to change. You do this by modifying the master template to use your own data and adding the ability to add this data to every page via the CMS. So by default Umbraco set the <title> tag using: <title><UMBRACO_GETITEM field="pageName"/></title> This can simple be rewritten to use an XSLT macro which basically says “If there is a custom title element specified, use it or fall back to the default.” The master template line would look something like: <title><umbraco:Macro Alias="PageTitle" runat="server"></umbraco:Macro></title> And the main part of the XSLT macro would be something like: <xsl:template match="/"> <xsl:choose> <xsl:when test="string-length($currentPage/metaTitle) > 0"> <xsl:value-of select="$currentPage/metaTitle"/> </xsl:when> <xsl:when test="string-length($currentPage/pageHeading) > 0"> <xsl:value-of select="$currentPage/pageHeading"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$currentPage/@nodeName"/> </xsl:otherwise> </xsl:choose> </xsl:template> Yes the above looks complicated but it really isn’t. You can do the same for almost any element, making Umbraco a coders paradise which should then be reflected to the customer. For more details on Umbraco visit – http://umbraco.com/ And for more details on projects / extensions visit - http://our.umbraco.org/projects Like all of the systems featured, the Umbraco platform has a fantastic community which can be engaged at - http://our.umbraco.org/forum Right I’m stopping there. I am far too passionate about this kind of stuff and could easily ramble on for hours including Websphere, Sharepoint....... but I’m not going to. If you have anything you would like to ask that I haven’t covered, please feel free to drop a comment and I will get back to you. I’m always up for a bit of problem solving and helpful advice. Good luck out there. Malcolm Slade SEO Project Manager @seomalc