Tuesday, March 13, 2007

SEO Related Factors When Shopping for CMS Vendors

In today's environment for web development, it makes a lot of sense for businesses with a large volume of web content to be transitioning their website development from stand alone tools such as Dreamweaver or FrontPage to Content Management Systems (CMS) that use set templates and login based environments. A CMS system allows people that would traditionally not have a technical background to be able to develop content and collateral for a website, and not worry about HTML, Scripting or Web Server configuration. Unfortunately, not all CMS applications are designed to present website content that is search engine friendly or allow users of the system full control to access and manage specific on-page factors related to SEO.

There are a few key factors that usually come into discussion when working with a CMS vendor and looking at SEO-specific functionality:

Web Page Management and Web Page Development
Web Address /URL Generation
Code Efficiency
Taking into Account Overall SEO Best Practices
Web Page Management
Because a CMS is almost always template driven, developers need to assign relationships to certain page related factors when creating web page functionality. As a result, unless directed, properties of a web page essential to SEO can often be "locked" or automatically generated without a user being able to manipulate them. Make certain that users always have the ability to manually edit the following characteristics of a "page":

The HTML Title
The Meta Description and Keyword Values
The Page Heading
It's good for a CMS vendor to create "default" variables that affect these properties, but a user of the CMS should be able to override these defaults and choose their own values whenever necessary.

One additional note on Title tags: It's optimal that the HTML title tag management be exclusive of all other properties, save the creation of internal cross links that are automatically generated (such as when websites include sections on a page for "related links" or similar usability components). The HTML Title should not be tied to things like the web address of the page (more on this a bit later)
Web Page Development and Navigation Considerations
Another key feature of web page development in a CMS that can be overlooked is the ability to include/exclude a new page from the main navigational menus. Make certain that you have the ability to expand the content you want users to find from a site-wide navigational perspective and be able to exclude content, especially if you build pages with seasonal relevance or temporary, promotional campaigns.

Web Address /URL Generation
The ability to control what a web address (URL) reads is less important than another, often overlooked factor of CMS vendors: how the CMS generates and presents the web address. Here are some guidelines on web address generation related to a CMS:

The web address should not be rendered as a dynamic URL (none of the following: ?=... or &id). The web address generated should appear like a static, directory-style URL
Example: domain.com/folder/folder/end (specific file extensions are not overly important)
The web address should not contain session ID's for purposes of user tracking or authentication. While tracking is absolutely important, the CMS vendor should have some form of cookie-based or alternative way to track and record visitor information, not through by way of a session variable appending to the URL.
The web address should not change in direct correlation with web page changes (such as a modification of an HTML title tag). The age of a URL is an important factor in search engine rankings.
Finally, navigation should be consistent and "locked down". That means that there should be no way to back door the page by entering in either a known dynamic query string or appending variables at the end.
Code Efficiency
How a CMS renders the HTML output can potentially have a negative effect on a search engine's ability to crawl a web page or website efficiently. For instance, not placing JavaScript in external file locations and simply adding the code to the page output is not uncommon to see. Another issue I have seen is bloated HTML/script-based parameters around formatted content and hyperlinks that are generated. Finally, the actual white space that is generated in web page output, while not a backbreaker, adds unnecessary file size to your web pages.

Consider Overall SEO Best Practices
The last thing to critical thing to consider in selecting a CMS vendor is how they respond to overall SEO best practices. I'm not suggesting they should bend over backwards for every little request - but consider the following components of SEO that are valuable and relevant to your success online in search:

Text-based navigation
Being able to incorporate an "alt" or "title" property in your images
Using etc tags for Page Headings and Sub-headings
Proper use of CSS and other web design technologies
Finally - Some "Nice-to-Have's" from CMS Technologies
Here are some ideas for CMS vendors to consider when looking at selling the value of "SEO-Friendliness" in their product as well:

RSS Feed capability - especially for articles, news and press releases
Automatic Search Engine Sitemap Generation
Data Exports of product or content related information in general
Usability compliance or proactively integrating best practices for ease of use, such as breadcrumb trails, access for the disabled, printer-friendly pages (with a noindex parameter!), social bookmarking/sharing features etc.
Wrapping It Up
As with any major purchase, make sure that you are doing the necessary due diligence as it relates to your total web development needs. This post is not meant to be a guideline purely for purchasing the right CMS, there are many other factors that should contribute to your selection and screening process (platform, integration, capacity etc). Here are a few links to articles online related to choosing an appropriate CMS system:

No comments: