Evolving Web: Leveraging Composability with Drupal

Image removed.

In a previous article, we shared trends we’ve seen in the Acquia ecosystem and how they apply to our projects at Evolving Web. One of those trends is the growing importance of composable digital experience, central to how Drupal works. In this article, we will explore how composability, which started as a development concept, has now an expanding role in content management and content governance.

What is Composability?

Composability is at the very core of Drupal’s open source principles. Composable CMS is the idea that we should create robust building blocks that we can reuse across a single website, an ecosystem of websites, or every single Drupal project. 

Composable CMS isn’t a single thing. It could actually lead us to different architectural choices. For example: 

  • A wheel and spoke model, if we have a content hub that dispatches content to a set of satellite websites
  • Individual websites that don’t share content, but do share the same structure
  • A model where content is generated on many individual websites, and then shared in a completely distributed way, without a central hub
  • A multi-channel setup where content is shared from a CMS to completely separate channels like CRM, digital signage, a native app

Composability implies dividing content up into atoms so that it can more easily translate from one use case to another. For example, if we define an event as having a date field, we can add it to a calendar on our site, but also use schema.org metadata to indicate the event date on Google search results.

Why is Composability Useful?

Composability is a powerful concept because it gives us a content model that is predictable. From there, we can expect each content entity to have particular properties (a label or title, a language)

It helps us make good decisions about code and content reuse, challenging us to think about how configuring a single template, creating a piece of functionality, or authoring a piece of content, might be useful or reusable elsewhere.

With this type of granularity, content becomes searchable and findable when we apply the right markup and metadata that enables reusability.

It helps us create brand and messaging consistency as we should have fewer content elements to keep updated.

Composable Tactics in Drupal

By using a platform like Drupal, you’re already doing composability. You’re reusing the modules and base content structure of every other Drupal project, and benefiting from that. If you want to enable metatags for your content, you can turn on that feature and apply it to all your existing content.

If you’re using Layout Builder with custom block types, or the Paragraphs library to enable reuse of granular “Paragraph” elements, you’re already leveraging composable features for content reuse. You can learn more about how to use Paragraphs and Layout Builder via this article: How content editors use the drupal layout builder.

Features like Drupal’s core Media Library and the Entity Reference field provide content editors with the tools to reuse content within a single Drupal website or project..

You’re also taking advantage of composability when using Drupal’s Migrate API to leverage existing content and pull it into Drupal, or when using JSON:API or REST API to expose Drupal content to other platforms and channels.

Configuration management allows us to export the content model to code, making it potentially sharable to other websites in our ecosystem. The new recipes initiative seeks to make elements of Drupal configuration more portable, to encourage this type of reuse and create a more standardized method of component reuse in Drupal core.

Composability Beyond Drupal Core

Acquia’s Site studio complements Drupal and provides a mature product that teams can use to manage a library of reusable content, and also the templates (components) for storing granular content, and even the layouts and styling that applies to those components.

It provides a predefined/standardized approach to managing the layers of composability that we outlined above. The benefit of a solution like this is that it steers teams towards composability and gives them pre-built examples of how reuse plays out in a typical website.

It also has tools for sharing the library of content across websites in the same ecosystem, which saves architectural time in setting this up.

Site Studio is a great example of taking the potential of Drupal’s composability and laying it out in a way that’s ready for teams to take and run with. It also comes with opinions about how components and content should be managed, which might be too flexible or too restrictive for some teams. I highly recommend taking a deeper dive and checking out Acquia’s Site Studio demo.

Challenges 

Offering site owners and content editors the ability to re-use content and other building blocks comes with a few challenges. 

Challenge 1: Understanding Context

If content is used in many contexts, it’s hard to communicate to content editors what the results of their changes will be. Imagine a typical preview feature, allowing you to preview how content appears on a single page. If you are editing an image to be reused in five different ways, it’s hard to anticipate the impact of cropping it in a certain way. From this comes the question of how to create meaningful previews.

Solution: Help content editors understand the meaning and parameters of their choices:

  • Provide some instructions on image selection that takes into account how the image will be used. And 
  • Provide context about metadata if that metadata is visible when content is displayed on social media, but not when content is displayed on a simple page on the website.

Challenge 2: Accessibility

Multiple contexts also makes accessibility a challenge. Accessibility guidelines encourage teams to create meaningful content structures and flows. When editing a single content component that appears in different pages, think about how it will affect the flow and the hierarchy

Solution

  • Create a robust content model that enforces an accessible content structure. This means planning out which components can be used where so that they follow a logical hierarchy (e.g. a heading structure that doesn’t skip a level). 
  • Educate content editors so that each component is accessible regardless of context (e.g. writing link text that is self-explanatory regardless of context).

Challenge 3: Proliferation of Choices

The sheer quantity of content can also proliferate in the world of composable CMS. While the idea is to reuse components, it often also means sharing of components and adding more options to some websites that might have had a simpler content model in the past. The proliferation of content elements and templates means more choice for content editors, and can lead to more confusion about the use case. 

Solution

  • Provide clear examples of not just how to create content, but why to use one type of component vs. another. 
  • Give content editors the tools they need to find existing content, as well as some context around how it’s already being used.

Challenge 4: Approval Workflows

If content can be reused across different websites within an ecosystem, it likely changes the approval workflow whenever content needs updating. Let’s say you have authored a page, got it approved and published it. In a composable context, some components of your page might have to be approved separately, making it harder for you to update one aspect of the page that is being re-used in other places. 

Solution

  • Create a clear content governance plan that defines what belongs in a content library and how that content gets approved and updated. 
  • Invest time in constantly curating and maintaining the library of reusable content rather than taking a “set it and forget it” approach.

Drupal and the Composable Enterprise 

In our experience at Evolving Web, governance around modularity and composability is and will remain the biggest challenge. But despite all the challenges listed above, composability is an approach that gives institutions a competitive advantage as they can innovate and adapt to changing business needs rapidly. 

When we get to the point when site builders and content creators can have visibility as to what content components are out there and how they’re being used, as well as establishing best practices for making this type of content widely available, we’ll be able to fully take advantage of this approach.

Read more about Content Governance: Why Web Governance Is Essential to Your Digital Content Strategy

+ more awesome articles by Evolving Web

Drupal Association blog: Join us for 10 Days of Drupal 10!

Drupal 10 is almost here, and we cannot wait for the community to experience the latest version of Drupal! With an expected release date of 14 December, we have less than two weeks to go. The Drupal Association is hosting 10 Days of Drupal 10 giveaways in celebration of the release! 

From 5 December to 14 December, tag us daily on Twitter with a Drupal 10-themed meme or graphic for the chance to WIN an exclusive Drupal 10 hoodie. Your Drupal 10 meme or graphic can be highlighting one of your favorite Drupal 10 features, upgrades, or anything else related to Drupal 10.

Here are some examples for inspiration:

Image removed. Image removed.

Then, on #Drupal10’s expected release day, 14 December, we’re giving two lucky winners a chance to win a ticket to DrupalCon Lille or DrupalCon Pittsburgh (your choice!). To win, all you have to do is tag us with a video of your Drupal 10 release party. After that, we’ll randomly choose two winners to receive one ticket each.

We want to see how you celebrate the release, so feel free to get creative and show us your celebration. We can’t wait to see all of your videos!

On Monday, 5 December, head to the Drupal Association Twitter account, @DrupalAssoc, for the kickoff of 10 Days of Drupal 10 and your chance to win! In the meantime, check out the new features on the Drupal 10 page. The Drupal 10 page also contains all the information you’ll need to ensure a smooth upgrade to Drupal 10.

Are you hosting a Drupal 10 party in celebration of the release? Share it with the community by adding it to the Community Events page on Drupal org!

Envato Tuts+: Top 20 Most Usable Content Management Systems

* { box-sizing: border-box; } body {margin: 0;}*{box-sizing:border-box;}body{margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px;}

There are plenty of options when picking a content management system for a development project. Depending on how advanced you need the CMS to be, what language it's built in, and who is going to be using it, it can be a nightmare trying to find the "perfect" CMS for a project.

However, some examples of CMSs (or content management systems) have a slight edge over the rest of the competition because of the usability of the software. Some are just easier to install, use, and extend, thanks to some thoughtful planning by the lead developers.

Looking for web content management system examples? We have a number of themes and resources to support these top content management systems. If you're looking for WordPress themes, Drupal themes, or Joomla themes, we have you covered on Envato Market.

We also support additional popular CMS systems, CMS tools and a variety of WordPress plugins, Drupal plugins, Joomla plugins, and more. Visit our ThemeForest or CodeCanyon marketplaces to browse through a ton of professional options.

Here are the most usable CMSs on the web, so you can choose the one that fits your needs best.

1. WordPress

Image removed.Image removed.Image removed.

What is left to say about WordPress that hasn't already been said? The PHP blogging platform is far and away the most popular CMS for blogging, and probably the most popular CMS overall. It's a great platform for beginners, thanks to its excellent documentation and super-quick installation wizard. Five minutes to a running CMS is pretty good. Not to mention the fact that the newest versions auto-update the core and plugins from within the back end, without having to download a single file.

For those users not familiar with HTML or other markup languages, a WYSIWYG editor is provided straight out of the box. The back-end layout is streamlined and intuitive, and a new user should be able to easily find their way around the administration section. WordPress also comes with built-in image and multimedia uploading support.

For developers, the theming language and the Plugin API are fairly simple and straightforward.

The WordPress Community is a faithful and zealous bunch. WordPress probably has the widest base of plugins and themes to choose from. We also have thousands of professional WordPress themes and WordPress plugins available for sale on Envato Market, with a full suite of styles and options to choose from.

A great thing about the WordPress community is the amount of help and documentation online you can find on nearly every aspect of customizing WordPress. If you can dream it, chances are it's already been done with WordPress and documented somewhere.

2. Drupal

Image removed.Image removed.Image removed.

Drupal is another CMS that has a very large, active community. Instead of focusing on blogging as a platform, Drupal is more of a pure CMS. A plain installation comes with a ton of optional modules that can add lots of interesting features like forums, user blogs, OpenID, profiles, and more. It's easy to create a site with social features with a simple install of Drupal, and it offers some useful third-party modules.

One of Drupal's most popular features is the Taxonomy module, a feature that allows for multiple levels and types of categories for content types. And you can find plenty of professional Drupal themes, which are ready to be customized and worked with. You can also grab Drupal plugins.

Drupal also has a very active community powering it, and has excellent support for plugins and other general questions.

3. Joomla!

Image removed.Image removed.Image removed.

Joomla is a very advanced CMS in terms of functionality. That said, getting started with Joomla is fairly easy, thanks to its installer. Joomla's installer is meant to work on common shared hosting packages and is very straightforward considering how configurable the software is.

Joomla is very similar to Drupal in that it's a complete CMS, and it might be a bit much for a simple portfolio site. It comes with an attractive administration interface, complete with intuitive drop-down menus and other features. The CMS also has great support for access control protocols like LDAP, OpenID, and even Gmail.

The Joomla site hosts more than 3,200 extensions, so you know the developer community behind the popular CMS is alive and kicking. Like WordPress, you can add just about any needed functionality with an extension. However, the Joomla theme and extension community relies more on paid resources, so if you're looking for customizations, be ready to pull out your wallet. You can also grab Joomla plugins.

4. Shopify

Image removed.Image removed.Image removed.

You can use the Shopify eCommerce software to create a great website design and add products with images, titles, and descriptions. You can also set up a full checkout functionality, where customers can pay for your products.

Shopify has a great free store theme that you can use to customize your website images, fonts, and colors to your satisfaction with no design skills required, and the themes are fully responsive. With Shopify, you manage your products, inventory, payments, and shipping, and you can also sell your products on the web, mobile, social media, and marketplaces.

One of the unique features of Shopify is that you can accept credit cards instantly, without third-party accounts.

When dealing with other CMS systems, you'll have to upgrade your tool to the current version to obtain new features, but Shopify is cloud-based and hosted, so you won't have to worry about software or web servers being upgraded or maintained. This allows you to access and manage your business from practically any location, even on your mobile device.

5. Wix

Image removed.Image removed.Image removed.

Wix is a cloud-based content management system with web hosting and design capabilities. Wix makes it simple for users to create websites without needing to pay web experts or have specialized knowledge. Wix sites are mobile-friendly and can be quickly constructed, maintained, and managed through the Wix website. It also allows you complete control over how you create, design, manage, and develop your online presence.

Wix's distinguishing feature is its drag-and-drop editor, which allows you to create a great website without knowing a single line of code. Wix is perfect for anything from online personal portfolios to small company websites, and it is completely scalable.

6. Magento

Image removed.Image removed.Image removed.

Magento is an open-source content management system that includes all of the essential eCommerce features and allows users to create a one-of-a-kind online store from the ground up. Magento Open Source is a free version that you may download and install on your web hosting account.

There are so many reasons Magento is ideal:

  • It is very easy to maintain and upgrade your site.
  • Payment is easy and secure.
  • It has a reliable and supportive community.
  • Magento is very flexible and offers free services for users.
  • You can easily integrate the Google Analytics service into your site, which will provide you with multiple reports.

7. Webflow

Image removed.Image removed.Image removed.

You have complete design freedom when using Webflow. It's a flexible content management system for building custom blogs, portfolios, and eCommerce stores. Webflow allows you to complete projects more quickly.

  • For web design, Webflow offers a drag-and-drop page builder.
  • It features a good, clean code quality that allows you to make changes on the page.

8. WooCommerce

Image removed.Image removed.Image removed.

WooCommerce is one of the best eCommerce platforms, and it's built on WordPress. It is a free tool for you to start up your eCommerce store. WooCommerce is flexible and easy to manage. However, it isn't quite a content management system (CMS). It is a WordPress plugin that runs on your site, so you'll have to integrate it into your WordPress site.

WooCommerce is by far the most popular eCommerce plugin for WordPress.

9. Ghost

Image removed.Image removed.Image removed.

Modern businesses want an eye-catching website that makes an impression on their target audience. Ghost helps you achieve that. It's a content management system (CMS) for blogging that comes in both self-hosted and hosted versions.

Ghost is used to power a wide range of websites, from individual bloggers just getting started to massive groups of editors and writers at some of the world's largest companies.

Ghost CMS is ideal for blogs that only require the publication and management of posts and pages. It can also effectively handle membership sites.

Benefits of Using Ghost

  • It has a lot of SEO (search engine optimization) help built-in. This can be delivered without the need for any plugins.
  • It features a variety of themes that are both responsive and attractive. They're simple and designed to keep you focused on your reading.
  • It is very easy to create your theme in Ghost CMS, and these themes use handlebars to insert data, which is very easy to learn.

10. BigCommerce

Image removed.Image removed.Image removed.

BigCommerce is the most flexible and open SaaS platform, and it is leading a new era of eCommerce platforms. It not only hosts your site, but also provides the CMS platform. It also takes care of your security and backups.

It is one of the most popular eCommerce platforms and offers a high level of scalability for online shops. It has more sales tools built in than any of its competitors, and it combines these features with smart SEO and fantastic multi-channel connectivity.

11. PrestaShop

Image removed.Image removed.Image removed.

PrestaShop is a powerful and innovative eCommerce platform that includes all of the tools you'll need to set up an online store and expand your business. And you can also install it on any web hosting platform that supports it.

Why you should use PrestaShop:

  • You can easily develop SEO-friendly URLs.
  • With PrestaShop CMS, you can fully customize your online store.
  • PrestaShop has different modules which provide security to your sites.
  • You can manage your products, orders, and statistics.

12. Blogger

Image removed.Image removed.Image removed.

Blogger is a CMS platform that’s specifically geared up for blogging. It’s a free service provided by Google. You can use it to create and publish a blog, and you can get a free domain or buy your domain name. The platform is beginner-friendly, and you can earn money from the platform by using Google AdSense.

13. HubSpot CMS

Image removed.Image removed.Image removed.

So many marketers and business owners use HubSpot CMS because it provides metrics on your current content marketing strategy and where improvements can be made, such as indicating the need for more internal links, calls to action, or landing pages. With HubSpot CMS, you can track relevant traffic, page performance, and significant impact, among other things.

Why HubSpot?

  • It aids businesses in attracting visitors.
  • For each visitor, you may quickly develop and personalize your website pages.
  • You can keep track of all of your stuff in one spot.
  • You can create a site that is unified without having to worry about inappropriate designs, logos, or navigation.

14. TYPO3 CMS

Image removed.Image removed.Image removed.

The TYPO3 CMS is an open-source content management system with a big global community, backed by the TYPO3 Association's approximately 900 members. It combines open-source code, dependability, and genuine scalability in a single package.

This professional CMS offers services and solutions for the whole team across industries, organization sizes, and use cases.

Typo3 is excellent because it is powerful and has a lot of potential to fill in the gaps left by many other products. Because of its flexibility, TYPO3 is ideal for quickly producing online content across a wide range of formats. It can also be used for assistance, marketing, and in-house projects.

15. ExpressionEngine

Image removed.Image removed.Image removed.

ExpressionEngine (EE) is an elegant, flexible CMS solution for any type of project. Designed to be extensible and easy to modify, EE sets itself apart in how clean and intuitive its user administration area is. It takes only a matter of minutes to understand the layout of the back end and to start creating content or modifying the look. It's fantastic for creating websites for less-than-savvy clients who need to use the back end without getting confused.

ExpressionEngine is packed with helpful features like the ability to have multiple sites with one installation of software. For designers, EE has a powerful templating engine that has custom global variables, custom SQL queries, and a built-in versioning system. Template caching, query caching, and tag caching keep the site running quickly too.

One of my favorite features of EE is the global search and replace functionality. Anyone who's ever managed a site or blog knows how useful it is to change lots of data without having to manually search and open each page or post to modify it.

16. Textpattern

Image removed.Image removed.Image removed.

Textpattern is a popular choice for designers because of its simple elegance. Textpattern isn't a CMS that throws in every feature it can think of. The code base is svelte and minimal. The main goal of Textpattern is to provide an excellent CMS that creates well-structured, standards-compliant pages. Instead of providing a WYSIWYG editor, Textpattern uses textile markup in the text areas to create HTML elements within the pages. The pages that are generated are extremely lightweight and fast-loading.

Even though Textpattern is deliberately simple in design, the back end is surprisingly intuitive and easy to use. New users should be able to find their way around the administration section easily.

While Textpattern may be very minimal at the core level, you can always extend the functionality by using third-party extensions, mods, or plugins. Textpattern has an active developer community, with lots of help and resources at the Textpattern.org site.

17. Radiant CMS

Image removed.Image removed.Image removed.

The content management systems that we've listed so far are all PHP programs. PHP is the most popular language for web development, but that doesn't mean we should overlook other popular web languages like Ruby.

Radiant CMS is a fast, minimal CMS that might be compared to Textpattern. Radiant is built on the popular Ruby framework Rails, and the developers behind Radiant have done their best to make the software as simple and elegant as possible, with just the right amount of functionality. Like Textpattern, Radiant doesn't come with a WYSIWYG editor and relies on Textile markup to create rich HTML. To make it easier to create templates intuitively, Radiant also has its own templating language, Radius, which is very similar to HTML.

18. Cushy CMS

Image removed.Image removed.Image removed.

Cushy CMS is a different type of CMS altogether. Sure, it has all the basic functionality of a regular content management system, but it doesn't rely on a specific language. In fact, the CMS is a hosted solution. There are no downloads or future upgrades to worry about.

Cushy works by taking FTP info and uploading content to the server. The developer or the designer can then modify the layout, as well as the posting fields in the back end, just by changing the classes of the styles. Very, very simple.

Cushy CMS is free for anyone, even for professional use. There is an option to upgrade to a pro account to use your own logo and color scheme, as well as other fine-grain customizations in the way Cushy CMS functions.

19. SilverStripe

Image removed.Image removed.Image removed.

SilverStripe is another PHP CMS that behaves much like WordPress, except that it has many more configurable options and is tailored towards content management, not blogging. SilverStripe is unique because it was built upon its very own PHP framework, Saphire. It also provides its own templating language to help with the design process.

SilverStripe has some interesting features built into the base, like content version control and native SEO support. What's really unique with SilverStripe is that developers and designers can customize the administration area for their clients, if need be. While the development community isn't as large as other projects, there are some modules, themes, and widgets to add functionality. Also, you'll want to modify the theme for each site, as SilverStripe doesn't provide much in terms of style, to give the designer more freedom.

20. Contao

Image removed.Image removed.Image removed.

Contao seems to have the perfect balance of features built into the CMS. In terms of functionality, Contao ranks with Drupal and ExpressionEngine, and it even offers some unique bundled modules like newsletters and calendars. Developers can save time with the built-in CSS generator, and there are plenty of resources for learning more about the CMS.

If there is a downside to Contao, it's that it has so many features and configurable options. Even though the back end is thoughtfully organized, there are still a lot of options to consider. But if you want to build a site with advanced functionality and little extra programming, Contao could be a great fit.

Learn More

Now you've got enough CMS examples, types of CMSs, different CMS systems and CMS tools to get you started. If you want to expand your knowledge on content management system list or explore more examples of CMS, check out some related tutorials: 

Editorial Note: This post has been updated with contributions from Janila Castañeda. Janila is a staff writer with Envato Tuts+.

Envato Tuts+: New Course: Code a Custom Drupal Module

Image removed.Image removed.Image removed.What You'll Be Creating

If you want an easy way to create engaging, content-driven websites for you and your customers, you should give Drupal 8 a try. And Drupal modules allow you to take things a step further and create highly customized functionality for your site. 

In our new course, Code a Custom Drupal Module, Envato Tuts+ instructor Derek Jensen will get you up and running with modules in no time. You'll build a simple calculator module, and along the way you'll learn about creating routes, controllers, parameters, and more.

You can take our new course straight away with a subscription to Envato Elements. For a single low monthly fee, you get access not only to this course, but also to our growing library of over 1,000 video courses and industry-leading eBooks on Envato Tuts+. 

Plus you now get unlimited downloads from the huge Envato Elements library of 200,000+ photos and 26,000+ design assets and templates. Create with unique fonts, photos, graphics and templates, and deliver better projects faster.

Image removed.

Looking for a shortcut? Try downloading some of the ready-made Drupal themes on Envato Market.