As an SEO consultant, I have worked with a variety of content management systems (CMS) over the years, and when it comes to SEO, some provide better options than others for optimization. Here are my five key features to look for when choosing an SEO-friendly CMS.
1. Ability to edit title tags on each page. While most CMS templates easily allow you to have a standard title tag on every page of your website, ideally you want the ability to edit the title tag on each page of the website to make it unique to that page's topic and content. The title tag serves as the link in your search engine result, so you want it to be customized to that page, containing keywords for both initial optimization purpose and to entice clicks once the page is ranked.
Often I find that CMS products (such as WordPress) may use the headline of the page as the title tag for the page. That will also work fine since you are able to control the page headline. Still other systems may have a plugin available to allow this option. Just make sure that you can control the title tag output and vary it for each page of the site.
2. Ability to edit meta tags on each page. Like the aforementioned title tag issue, some CMS templates provide a standard set of meta description and keywords tags that apply to every page of the website. But a standard meta description doesn't really do a page justice. Default meta descriptions likely won't contain the keyword phrase you're targeting on a given web page, and a generic description won't accurately describe what the page is about for searchers.
Several CMS products like WordPress and ExpressionEngine do not innately offer a way to edit meta tags in each page. However, in the case of these two CMS products, there are plugins available to correct that issue. So if a CMS you're considering doesn't have the ability to edit meta tags on each page, also check for available plugins that might fix the problem.
3. Auto-generation of XML Sitemap. I haven't found many CMS products that actually innately create a new XML Sitemap as new content is created. However, Drupal is one of the few products that does. This feature is very helpful so that you don't have to regularly re-run the Sitemap manually.
As with meta tags, there are often plugins available for various CMS products to correct this problem. In the case of WordPress, there is a plugin that will automatically regenerate the Sitemap as new content is created, helping alert the engines to new content faster.
4. Ability to generate search-friendly URLs. Most CMS products I've seen today do have this ability, but not all webmasters turn this feature on. Search-friendly URLs change the typical CMS URL string composed of dates, page IDs and more and turn them into a cleaner looking URL. For example, I host my company's blog on WordPress. Here's how the default URL structure would look: http://blog.search-mojo.com/?p=123. However I set my URLs in WordPress (since it's a blog I'm hosting) to date and time, which uses this URL structure: http://blog.search-mojo.com/2011/27/09/post-title. You can also create a custom structure with WordPress. Regardless of the CMS, be sure you can adjust that URL to include keywords, not just some ID number.
5. Ability to add canonical tags. Sometimes we need to duplicate content on a website. It's just a fact of life. And since the search engines frown on duplicate content, they've created a handy way for webmasters to identify potential duplicate content and tag it so that the SEO value is assigned to only one of the duplicate pages. The canonical tag is handy to use, but it's a meta tag that appears in the page header section, and many CMS products don't provide the ability to edit the header section.
If your CMS doesn't provide a way to edit the header, look for a plugin that might allow for canonical tagging.
Bonus: Auto-Generate 301 Redirects
From time to time, you may move content on your site or rename it. Each time you do, you'll want to use 301 redirects to tell the search engines that the content has moved and to preserve existing rankings from the old content.
OK, I'll admit I -- this one is on my wish list. You may have a hard time finding this feature in a CMS today. It would be great to see a CMS that would automatically identify changes in a URL and create redirects as needed. It would save you a lot of time in the end, but this may be too much to wish for!
Good luck with your CMS search! Putting more time in up front to evaluate the SEO capabilities of your CMS options will provide you with fewer SEO headaches.