As we are getting ready to launch our all new Content Management System (CMS) after more than 2 years in development, I thought it would be good to cover a very important aspect of any CMS: Search Engine Optimization.
A CMS is a system designed to simplify the publication and management of website content. It allows the non-technical person to easily add and edit content, upload images, link to files, and so on. The CMS then automatically produces the actual website files that are sent to a visitor's browser.
Search Engine Optimization (SEO) is the practice of increasing your organic search rankings. There are many aspects to SEO, including copy writing, link building and social marketing, but one very important aspect is often overlooked - the website itself.
Since a CMS does all the "building" of the website files, it is very important that what it builds does not detract from your SEO. Rather, it should help improve your SEO.
Here is a list of important CMS features that have a significant impact on your search engine rankings. And I'm quite happy to note that our CMS provides all of these as standard (no plug-ins or mods necessary).
Custom HTML Title Tags
The HTML Title Tag appears on the very top, left bar of your browser window (or dead center if you use Safari). Of any content on a web page, the HTML Title Tag carries the most weight for SEO. It is vital that you are able to independently edit the HTML Title Tag for any page on your site. Meaning you should be able to have an HTML Title Tag, Page Heading, and URL (or slug) that are all different if needed. Many CMS's don't provide this flexibility.
Keyword-Rich Custom URLs
The URL is the web address for a web page, such as http://www.mydomain.com/products/. Being able to use your keywords within the URL for a page will help your search rankings. Just like the HTML Title Tag, a SEO friendly CMS will let you independently customize your URLs.
Customizable Page Headings
Page Headings should give the visitor a clear indication of what the page is all about. It is essentially the title of the article or page content. These headings do the same thing for Search Engines - define the page topic. So it is a very good idea to make sure you have keywords for a page in your Page Heading, and you should be able to independently define the Page Heading of each page.
A static URL would look something like http://www.mydomain.com/spokane-health-clinlic/ whereas a dynamic URL would look something like http://www.mydomain.com/default.html?city=12&type=9. Static URLs make it easier for Search Engines to parse out keywords, and can usually contain more, and more relevant, keywords. Also, static URLs for pages that contain multiple views (such as paging or sorting items into a different order) maintain the same, single URL for all views. A dynamic URL might show something like /?sortby=city, or /?sortby=state. A Search Engine sees these as two completely different URLs. But the page has the exact same content, its just sorted differently. To a Search Engine it looks like you have duplicate content and are trying to cheat the system and this may get your page penalized. Static URLs always send the same URL regardless of paging or sort order.
Customize Link Text
On some CMS platforms if you create a link to another page already existing on your site, the CMS will determine the link text for you. Sometimes that may be fine, but not if you are trying to direct link juice for a particular term to a page. Any link that you custom create should give you the flexibility to determine what text to use.
A page located at /products/retail/residential/building/wood/structural/2x4/ is considered to have less importance than a page located at /products/. The depth of your site's architectural nesting can affect whether a search engine believes your page is important. Pages closer to "root" are considered more important. Site Architecture should be shallow - the best being a single folder level, such as /products-building-wood-2x4/ where you can still use any necessary keywords.
Custom META Tags
The two main META Tags you should be able to customize on a page-by-page basis are the Description and Keywords Tags. The Description Tag won't help your rankings, but it may be used for displaying search results. So what you say in your Description Tag will certainly influence whether someone clicks the link to your page. The Keywords Tag is somewhat controversial in that some say it is absolutely unnecessary, while others says it does still provide some benefit on some search engines. But it certainly does not hurt your rankings in any way if you do use the META Keywords Tag. A CMS should not restrict whether you can edit your META Keywords.
There are also META Tags for geolocation information that can help with local search results. If searching from a mobile device, the search engine may determine your location, and show results based on what is nearest to you. If your site doesn't contain geolocation information, you may not rank well in those results.
Duplicate content can have a double negative effect. It can split your link juice between pages, and it can get your pages penalized by search engines. It can also make Analytics a nightmare. For example, look at the following URLs:
In reality, those are all the exact same page. But to a search engine, those are four different pages because they are four different URLs. You can certainly control how you write links on your own site and use a standardized URL form. But you can't control what people type into their browser, or the way other sites build their links. So multiple URLs for the same page resulting in duplicate content is a problem for any website. There are many methods for dealing with duplicate content, and one of the all around best is the Canonical Link. It is simply a tag in the <head> section of your HTML that declares one of the versions above to be THE ONE TRUE URL. Search Engines read the Canonical Link when any of the URLs above are crawled, and knows they are all really just one. A CMS should build Canonical Links into each page automatically.
Image ALT Tags
An image ALT tag sets the text that will display if an image doesn't load, or is read if a screen reader is used. Search Engines use this text as a helpful indication of page content. Therefore weight is given to the text within the ALT tag. You should be able to customize the ALT tag for any image you upload.
Search Engines discover all of the pages on your site by crawling through your links. But there is no guarantee a Search Engine will be able to find all your pages, or that it will even attempt to crawl every single link it finds on you site. An XML Sitemap file is a single file that lists all pages on your site you'd like a Search Engine to index. This makes it much easier (and faster) for a Search Engine to find your content and get it indexed. For many websites, this file is generated manually using an online tool such as XML-Sitemaps.com. To keep up to date, you would need to create a new file and upload it to your web server any time you added or removed a page on your site. Your CMS should be able to manage your XML Sitemap automatically so you never have to manually generate and upload the file. This ensures it is up to date and accurate at all times.
As of this writing, HTML5 brings no known SEO advantage. At least Google has said it doesn't affect your rankings. However, clearly once HTML5 is more widely used and the new semantic tags are more widespread on websites, it would be a way Search Engines can better define content. For example, text in an <article> tag would likely be more related to the overall page content than would text in the <footer> or <aside> tag. This could help focus search results better to text that is actual page content (rather than peripheral information). Being prepared now with HTML5 will mean your content is already defined by those tags once Search Engines start using them.