Content Management Systems Requirements for Search Engine Optimization
In this post I'm not only talking about CMSs but also want to include all other Portals, eCommerce systems, Discussion Forums and many other Online Systems which are used for creating and maintaining websites. And as an SEO what I expect from these Systems to help in optimizing my websites from SEO point-of-view.
Nowadays, every business small or big is using some kind of CMS for their website(s). Some of the most popular CMSs are WordPress, Drupal, Joomla, Blogger and SharePoint. Some are even using In-House CMS and even customizing the CMSs as per their requirements. A CMS makes it easy for non-technical users to add, delete & update the content on the website and this is one of the reasons why CMSs are so popular among website owners.
Title Tag
As one of the important factor in SEO, the CMS should provide the option to add/edit the Title tag and also notify in-case the website has duplicate title tags or if the Title tag is missing. If the CMS can provide a dashboard for these kind of issues on the website and an option to mass upload via CSV file to edit/update the Title tag, that would make life very easy.
Example: <title>...</title>
Meta Data
Same as the Title tag, if the CMS can provide the option to add/edit the Meta Description and Keywords tags, and also notify in-case the website has duplicate Meta Description or Meta Keywords With a dashboard for missing, duplicate and short or long Meta Description tag, and option to mass upload via CSV file to edit/update these Meta tags.
Example:
<meta name="description" content="xxxxxx" />
<meta name="keywords" content="xxxxxx" />
Additional Tags Adding Options inside <head>
If needed we should be able to add additional/extra tags on-page or across the website.
Example: Tracking Pixel Java Script code, Other Meta Tags (Robots NoIndex, NoFollow) etc.
Canonical Tag
The CMS should be able to add Canonical URL tag on each and every page of the website, and should be able to edit when required. This tag allows the webmaster to publicly specify the preferred version of a URL on the website to avoid URL confusion.
Example: <link rel="canonical" href="https://www.example.com/" />
Breadcrumbs
Breadcrumbs are a clean, user friendly way to increase effectiveness of Content Siloing through internal linking, pass valuable keywords through anchor text (with HTML microdata format).
Example: Home > Cars > Ford > Mustang
XML Sitemap/RSS/Atom
The CMS should be able to generate/create XML Sitemap automatically at root level and every time a page is created or deleted the CMS should add or delete the page URL from the XML Sitemap. If a Checkbox options should be available while creating a new page (Add to XML Sitemap/RSS/Atom Feed).
Example: https://www.example.com/sitemap.xml
Only Admin Level Access to edit the following files:
- Robots.txt: Need access to edit/update the robots.txt file.
- .HTACCESS: Need access to edit/update the .HTACCESS file.
- JavaScript: Need access to edit/update the external JavaScript files.
- CSS Style: Need access to edit/update the external CSS Style files.
- Website Template Files: Need access to edit/update the Website Template files.
- Favicon: Need access to edit/update the Favicon file.
Custom Error Pages (401, 403, 404, and 500 etc.)
A Custom Error Page is a placeholder for web pages that fail to load when a human visitor and/or a search engine spider tries to view a webpage.
- Report with a correct respective Response Code (401, 403, 404, 500 etc.)
- Robots META Tag 'noindex, follow'
- Normal Crawlable Website Navigation
Auto 301 to parent level page on delete
If a page is deleted from the website, the CMS should set a 301 Permanent Redirect to its respective parent level page. And also delete the respective page URL from all internal links, On-Page Sitemap, XML Sitemap, RSS/Atom Feeds.
Website URL Structure
CMS should generate pages with the followings:
- Lowercase URLs (Avoid Capitalization)
- Descriptive URLs
- Keywords in URL
- Punctuated URLs
- Avoid Special Characters
- Avoid URL Encoding
- Silo Directory Structure
Example: https://www.example.com/product/category/product-name/
Other Basic Features
- Heading Tags (H1, H2, H3...)
- ALT Tags
- On-Page Sitemap (HTML Sitemap)
- External JavaScript & CSS files
- Social Sharing
There may not be any perfect CMS as of today which fulfills all the requirements for a business. Some of these features are there in most of the CMSs but not all, and for On-Page optimization elements most of the things depends on the website template code. If you have any suggestion or idea, you expect from your CMS please do share.
Just a point of clarification on web standards, the discussion is on a Title element; “title tag” is a colloquialism. Using the the term “tag” when referencing a Title element is ambiguous and open to confusion with a title attribute. Please see the World Wide Web Consortium (W3C) documents below.
HTML 4.01 Specification
W3C Recommendation 24 December 1999
The global structure of an HTML document
7.4.2 The TITLE element
http://goo.gl/o2htI
and
7.4.3 The TITLE attribute
http://goo.gl/xJnN0
or if you’d prefer:
HTML5
A vocabulary and associated APIs for HTML and XHTML
Editor’s Draft 30 September 2011
4.2.2 The title element
http://goo.gl/L3gLQ
For a Title element there is a difference between what Google displays on a search engine results page and what may actually be indexed. Beginning in late May 2010 we began seeing discussions on the forums that Google had increased the number of displayed characters on their SERPs to 70. And while there, of course, is no means to limit the number of characters one can place in this field, there are some additional places we can look for guidance.
The input filed for a Business Title on the form to create (or edit) a Google Places business listing has a limit of 80 characters.
On Aug. 17th, 2011 Matt Cutts stated in a Webmaster Central Help video, “What role does being in DMOZ play in rankings?” http://goo.gl/xPzQZ , that Google does still relies on DMOZ listings for a few asian countries (the implication being non-roman alphabets) as well as for some snippets. The input field for a title element in a DMOZ listing is limited to 100 characters.
Again, neither the character counts of 80 nor 100 specifically indicate Google has any limit on the number of characters which might be indexed for the Title element.
As far as authority given to the keywords placed in a Title element, long tail keyword phrases at the beginning of the field (to the left on a roman keyboard) receive a higher value.
Nice post Joydeep. A good reference to cross check what the CMS one uses is and is not offering. One more point is if a URL name is changed, then a 301 from the old to the new by default or options like ‘redirect type’ and ‘to URL’ as a dropdown selection. This would be another option to reduce duplicates (since canonical tag is still more of a guideline, while redirects are more specific)
@Robert – 99.9% of us know what he’s referring to. You have a valid point, but probably not the best place to inform the masses.
@Joydeep – Nice job! Good to have an SEO / CMS universal recommendations resource I can send aspiring custom CMS devs.