There are many choices out there for Web Content Management Systems (WCMS). Many commercial tools tout features and say that they compare favorably to Drupal, the leading open source solution for sophisticated WCMS. In this brief, I have researched to the best of my ability the features that make Drupal stand out from Adobe Experience Manager SEO.
I offer these caveats to my findings: 1) I have never personally used Adobe Experience Manager (AEM). That, in and of itself, is a drawback to the system. It is difficult to get a working demo of the platform. In Drupal, anyone can download and install it. 2) I have not talked to any Adobe representatives about these findings. Instead, I used Adobe’s public documentation to do my research. I also looked at third party how-to websites and a handful of published books. I have included links to publically available resources when available. 3) I am a Drupal SEO expert, not an Adobe Experience Manager expert so my viewpoint is skewed. However, I am a big fan of Adobe and have been since I started using Photoshop in 1993. I believe that these findings are fair, accurate, and truly reflect some of the advantages that Drupal brings to the table and the work still ahead for AEM.
In Drupal, you get an open source community that has proved willing to do anything to make the product, site builder, marketer, and user experiences better. A very recent example of this is the release of Google AMP (https://amp.dev/). Announced in late 2015, the Accelerated Mobile Pages (AMP) Project is “an open source initiative that embodies the vision that publishers can create mobile optimized content once and have it load instantly everywhere”. It’s a way to give a much faster content experience to mobile users. While still in its infancy, it’s a very promising technology that will benefit the entire web. Google has specifically stated that it will start giving preference (e.g. higher rankings and more traffic) to sites that use AMP. (https://www.wired.com/2016/02/google-will-now-favor-pages-use-fast-loading-tech/) The Drupal community released a beta AMP feature in late Feb, 2016. This allows almost any Drupal 7 or 8 site to serve AMP-powered pages. As of May 16, after extensive online searches, I can’t find any documentation of support in Adobe Experience Manager for Google AMP. (Note that Adobe Analytics is an active partner in AMP so tracking AMP pages does exist however there are no instructions or references on how to serve AMP in any documentation that I can currently find.)
Advanced Tools for Paths
In Adobe Experience Manager, vanity URLs do not support regex patterns. (https://docs.adobe.com/docs/en/aem/6-2/deploy/configuring/resource-mapping.html) What this means is that you can’t do redirects like specify a pattern like "old-blog/*" and a target like "new-blog" and all pages under old-blog will be redirected to the page new-blog.
In Drupal, this functionality has been supported since September 2013 with the Match Redirect module (https://www.drupal.org/project/match_redirect). This greatly simplifies and reduces work, as anyone who has decided to change their site structure can attest.
Migration is Easier
Another path-related example that seems to have no corollary in Adobe Experience Manager is Pathologic. (https://www.drupal.org/project/pathologic) Pathologic is an “input filter” module. This means that it runs on your content and makes some adjustment or change to it before the server pushes it out to the visitor’s browser. In this case, Pathologic fixes broken links in situations when URLs have changed. For example, if you move to a new domain name or your site structure changes, say, you moved your Drupal installation from one directory to another. Well, normally, that breaks hundreds or thousands of links, images, and references. Pathologic cleanly fixes this problem easily. Another great example is that relative links or embedded images that use relative URLs don’t work in RSS feeds. Pathologic fixes that quickly and easily.
Automatic Fixes to Rewritten URLs
Yet another path-related issue is that Adobe Experience Manager doesn’t seem to offer any type of automatic fixes if a path is changed. In Drupal, this is handled by the Redirect module. So, for example, you write a Product page on your site called “Keywords and Me” which lives at www.myurl.com/keywords-and-me. But then, after a year, you realize that to SEO that page, you need to change it to “Key Phrases and Me” and change the URL to “www.myurl.com/key-phrases-and-me”. Drupal, when properly configured, would automatically create a 301 redirect from the old URL to the new URL. This would preserve much of the value of your incoming links, provide a better user experience, and update Google that the old content lives at a new address.
In fact, the whole vanity URL system in Adobe Experience Manager has a tendency to create duplicate content. That is, content that lives on two different URLs. (See the video: https://helpx.adobe.com/experience-manager/kb/vanity-urls.html). The video demonstrates how content lives at one URL but the vanity URL also shows the exact same content. This would require, at the minimum, a canonical tag to let Google know where the content actually lives. Either Adobe expects users of their system to already know this, it was overlooked, or it’s not possible.
Preventing Common Errors
The page (https://helpx.adobe.com/experience-manager/kb/vanity-urls.html) describes a situation where the Adobe Experience Manager admin accidentally defined two different pages to resolve on a single URL “dealoftheday”. There is a complicated set of steps and a separate “Sling Resource Resolver” tool required to identify the problem and address the issue. In Drupal, this simply cannot happen as a warning would occur that allows the content creator to fix this glaring problem when the content is created. In fact, these kinds of user-friendly warnings that prevent common errors are used throughout the Drupal admin interface to help prevent the inevitable cruft that builds up in long-standing web projects.
Simplicity for Marketers
Drupal has taken great strides in making it as easy as possible for you to SEO your website. There are many tools to accomplish just about anything you can imagine. And, most of them use the same admin interface embedded in Drupal that is familiar. There is extensive documentation as well as embedded help text.
After spending a few hours reading Adobe’s Experience Manager documentation, I’ve concluded that SEO on Adobe Experience Manager is a complex undertaking. Take a look at https://docs.adobe.com/docs/en/aem/6-2/manage/seo-and-url-management.html. An example sentence:
The SCR annotation for this type of servlet would look something like this: @SlingServlet(resourceTypes = "myBrand/components/pages/myPageType", selectors = "myRenderer", extensions = "json”, methods=”GET”) In this case, the resource that the URL addresses, an instance of the myPageType resource, is accessible in the servlet automatically. To access it, you call: Resource myPage = req.getResource();
That's not exactly marketing-friendly.
Here’s another one:
The SlingResourceResolver can be found at /system/console/config on any AEM instance and it is recommended that you build out the mappings that are needed to shorten URLs as regular expressions and include these configurations under a config.publish OsgiConfig node that is included in your build. Rather than doing your mappings in /etc/map, they can be assigned directly to the resource.resolver.mapping property:
This isn’t something that any marketer can or should have to understand. I understand that there are likely developers involved in a web project that understand this kind of tech-speak. However, the more I rely on a technician to fix my SEO issues, the less control I have and the longer (generally) that it takes to make the changes I need.
The Power of Taxonomy
Drupal has a system called Taxonomy that is an SEO’s dream. When a content creator tags content, Drupal automatically creates a page for that tag that is well optimized for search engines. That tag page is automatically added to the XML Sitemap so it shows up in Google quickly. And, when additional content is tagged with the same tag, the tag page is automatically updated. Of course tag pages can be even further optimized similarly to how node pages are optimized - with additional text and meta data. Adobe Experience Manager does support tagging but it seems to be limited to showing “tag clouds”. It does not support custom tag pages and the site admin must “Select the page to be referenced” by each tag - a time-consuming process that is not updated dynamically. (See https://docs.adobe.com/docs/en/aem/6-2/author/page-authoring/default-components/editmode.html #Tag Cloud )
The Development Effort Required for Great SEO
Adobe Experience Manager requires significantly more effort in configuration than Drupal to achieve optimal SEO. This means that there is more to maintain, more things that could go wrong, and more reliance on the time and technical expertise of your development team. Examples that can be taken from https://docs.adobe.com/docs/en/aem/6-2/manage/seo-and-url-management.html include Canonical URLs, Case Sensitivity, and XML Sitemap. I’m sure there are others.
It’s clear that there are many distinct SEO advantages to using Drupal for your website. While this review is not conclusive, and it is almost certain that Adobe will continue to improve their product and make it a better tool and easier for marketers, as it stands today, Drupal is the clear winner. Even if Adobe does soon bring parity for SEO, the ongoing competitive advantage that Drupal has is the one addressed first: that of Community. The Drupal community is many, many times larger than the Adobe development team. That means that there is and always will be more resources going into making Drupal the best that it can be. Drupal is backed by Acquia, who provides a level of support on par with Adobe and many more advanced personalization tools that make Adobe Experience Manager so attractive. In my opinion, Drupal wins and will keep winning.