Here are some of the most frequently asked questions we receive about the Drupal platform. If you have others, just get in touch - we're here to help.
At Cyber-Duck, we’re big fans of Drupal for designing and building CMSs that can deliver brilliant content-led websites and applications. But if you’re reading this article, you may be wondering: what is Drupal? What does Drupal do? And what is Drupal used for, exactly?
So, what exactly is Drupal?
Drupal is a free, open source framework for website development, originally written by Dries Buytaert. It’s written in the PHP programming language, and is often described as a content management system (CMS).
However, Drupal isn’t technically itself a CMS – it’s a modular web framework used to build a bespoke custom CMS designed to meet a specific business or organisational need. Once that bespoke CMS is up and running, the website owner can quickly and easily create, edit and delete content, with little or no need for any additional site development.
Drupal is open source, licensed under the GNU General Public License. That means that in addition to the support and development provided by Drupal.org, such as a dedicated Security Team ensuring it meets even the most stringent of government InfoSec requirements, there’s a whole ecosystem of Drupal developers working to strengthen and extend the Drupal framework and contributing to open source projects and modules.
What is Drupal used for?
Drupal can be used to build all kinds of websites, from small sites with just a few pages, to large and complex presences for major multinational brands including NASA, Bayer, Citibank, The Economist, The Grammys and Tesla. Thanks to its flexibility and customisation powered by a library of over 46,000 modules and hundreds of integrations for applications like Mailchimp and Salesforce, it can be used for a huge range of different purposes, types of structured content, and styles of platforms. You’ve probably interacted with thousands of Drupal websites and digital products without even realising it.
Since its first release in 2001, Drupal has grown into one of the most widely used CMS frameworks in the world, running more than a million websites worldwide. While not as widely known as some other CMS solutions such as WordPress, it’s popular with both developers and website owners because it is so customisable. It allows you to have a CMS with exactly the functionality you require, in over 100 languages directly built into its user interface (UI). This makes Drupal enterprise-ready out of the box. It’s flexible, powerful, secure and scalable to meet any organisation’s growth trajectory.
Organisations often turn to Drupal when their business needs surpass the capabilities of more basic CMSs like WordPress, or when ongoing license fees and poor support lead them away from other enterprise level CMS solutions. Many governments and charities mandate Drupal because it’s open source, performant, accessible and highly secure.
Drupal is an open-source platform that scales as an enterprise solution. This is a view of the Drupal website we created for our client Sport England.
How do you create a Drupal website?
Firstly, it’s important to establish that Drupal is the right tool for the job, which is why we always recommend a strategic discovery phase. There are solutions like WordPress for small websites, and Laravel for more custom web applications requiring highly complex functionality. Cyber-Duck can help you with those too.
We’re strong advocates for a user experience (UX) led approach, researching the needs and pain points of users and stakeholders and designing content and technical solutions based on those findings. This way, you’ll end up with the solution your users actually need.
It’s important that the developers are involved during the UX and design phase, which we achieve through a multifunctional team approach. Because Drupal is a framework, it has certain guardrails that must be operated within. If the proposed design deviates too far from “The Drupal Way”, the work can become unnecessarily complicated - there will often be an easier way to achieve the same result, which developers can advise on. The developers can ensure that the solution makes the best use of Drupal’s powerful features to deliver on business needs.
We continue that collaborative approach as we move to the build phase. A detailed specification of the custom CMS is defined, including a detailed plan to classify and organise content, user journeys, as well as user roles and permissions that enable good content governance, and visual theme specifics, alongside additional functionality. Doing this up front allows us to lay out a clear plan for development, avoiding potential roadblocks and allowing us to move efficiently through the build.
Testing takes place throughout each phase of the build. We test as a development team, through our quality assurance (QA) team, and carry out inclusive user testing with people of diverse needs and (dis)abilities. We ensure the solution meets or exceeds all relevant compliance needs, such as accessibility, GDPR or InfoSec, and can perform internal or third-party audits to confirm this. Once ready, we deploy the solution to a production environment and launch it.
If you’d like to explore what a Drupal site build might involve for your organisation, get in touch and we can chat through your needs.
What's the difference between Drupal site building and development?
There’s a distinction between site building and site development. Both require expert knowledge of best practices for website development, such as design, accessibility, and security.
Site building is the configuration of Drupal using the framework’s modules and integrations available. It requires a deep knowledge of the core framework, contributed modules, and how they work together to create great solutions. All sites call for a considerable amount of site building, as this forms the basis of the custom CMS.
Drupal development involves writing custom code within the Drupal framework, creating specific solutions that cannot be obtained from one or any combination of the modules available from the Drupal community. Virtually all sites will require some custom development.
How do you build a Drupal CMS that supports your content strategy?
Drupal is object-oriented; it’s all about content and how it can be organised, displayed, and managed effectively. In Drupal, the three basic structures for content are: content types, taxonomies, and views. Defining these correctly at the start ensures the resulting CMS can successfully deliver the content an organisation needs now and in the future.
Content types include things such as a blog, news item, or event consisting of a defined collection of fields that need to be entered for each. For example, an Event might have fields like Title, Venue, Date, Body (text) and Cover and Graphic (images). By creating content types in this manner, each is consistent in structure and format.
Taxonomies are all about how you connect, classify, and relate your site’s content to each other. Think a pre-selected, organised and hierarchical tagging system. So for our Event, in today’s hybrid world, one of the most important things is Category. The taxonomy might have a structure like this:
- Breakfast briefing
- Lunch and Learn
- Evening seminar
- Breakfast briefing
- Lunch and Learn
- Evening seminar
- Breakfast briefing
- Lunch and Learn
- Evening seminar
Views is a powerful feature that allows various types of information to be represented in multiple formats such as a map, list or table. So for our Events, using our example, we can easily imagine a list or map filtered by date, location, what time of day it is, and whether it’s in-person or not.
We can now see why it’s so important to understand user needs and get the content strategy right when building a Drupal website: it literally informs the underlying structure of the CMS itself. When this is done well, it helps make your website future-proof. For example, we can easily envisage being able to add to our taxonomy another event Category, such as Virtual Reality.
Once these fundamental content structures are in place, bespoke landing pages are created with an intuitive page builder which allows you to drag and drop custom blocks into a page, or including predefined blocks such as an upcoming events list. Whether you have an in-house content production team or have external support (which we’ve supplied for many clients), your CMS framework is then ready to be filled with existing, updated, or newly created content to make your website complete.
As you expand and define further requirements, thousands of modules are waiting for you, providing features ranging from a simple pop-up date widget for date field entry, to full eCommerce solutions and CRM integrations. If there isn’t an existing module for what you need, then a custom module can be created from scratch by skilled Drupal developers.
How is content displayed and branded?
Basic content display is part of Drupal’s core features. A theme is used to make that content look how you want it to, in a way that fits your brand. There are thousands of free themes available, or you can get your developers to create a custom theme to get your website looking exactly how you want it to.
Is Drupal responsive?
Drupal’s theme layer will define how your site looks and functions across different devices and displays. Responsive design ensures that websites and products automatically adapt to these different conditions, helping with user experience (UX). As you can control this theme layer, it’s down to the theme developer to make your Drupal platform responsive.
Is Drupal accessible?
When we talk about accessible web design, we’re talking about whether a website or app is designed and developed so that people with a variety of temporary or permanent disabilities can use them. For example, it might be ensuring blind people can use the site effectively with a screen reader, or that buttons and menus are easy to navigate via keyboard for people with motor disabilities.
The level of accessibility your site provides is dependent on how you build the site and create the theme, including the use of specific contributed or custom modules. After the CMS has been launched, content editors must also manage content and pages correctly to ensure the website remains accessible.
Drupal itself is committed to accessibility. Its large community of developers and users provide a wealth of resources and support for developers looking to improve the accessibility of their websites, including tutorials, forums, and documentation. The Drupal Accessibility Team follow the latest W3C WCAG Recommendations, and ensure that all Drupal core features meet WCAG 2.1 AA and ATAG 2.0 guidelines.
You can also look for themes marked with Drupal accessibility hashtags – these are built by developers who actively support accessibility improvements. You can find out more on Drupal.org’s accessibility page and in its Drupal accessibility documentation.
Is Drupal secure?
Drupal features strong user management and password encryption out of the box, as you would expect from an enterprise grade solution. Additional modules can beef security up even further, adding features like stronger passwords, inactivity timeouts, IP restrictions and multi-factor authentication for trusted users. Beyond that, you can even configure the CMS to control what different visitors and content creators can do at every stage.
Is Drupal free?
As an open source software, Drupal’s source code is free, and knowledge about the Drupal platform is freely available online too.
Getting a Drupal site up and running does require specialist knowledge and effort – you must invest time in the platform to get the most out of it. As our Drupal senior engineer puts it, “Drupal is free, Drupal developers are not free.” If you want a strong, scalable website, you’ll need some expertise in how Drupal works; you might also want to learn how to create content types and taxonomies, and how to use its features like Views.
And hosting isn’t free, of course – you’ll still need to budget for that.
How do you maintain a Drupal site?
Drupal core and contributed modules change regularly. Drupal’s security team constantly check for and fix any security issues that come up. Other changes are implemented to add new features, improve performance, or fix minor bugs. Every two years, a new version of Drupal is also released.
Maintaining the code means regularly checking that everything is up to date. Drupal has admin screens to help you do this. When an update becomes available, download and install it locally, test it as you would anything else, and then deploy the change.
You’ll inevitably want to make changes to the site, either because they didn’t fit into the initial time frame or budget, or as new requirements become known. Drupal is flexible; the CMS solution can easily change over time, adding new content types, changing the theme, or any one of a myriad of other features.
Should I use Drupal for my website?
Drupal is a powerful, flexible option for creating custom CMSs and digital experiences that are well-suited for a wide range of use cases. As one of the world’s leading open source content management system frameworks, its modular architecture and built-in security features make it a popular choice among developers and organisations that need a robust and reliable CMS that can scale and deliver complex, enterprise-level functionality, while making content authoring and publishing easy.
We’d be thrilled to chat with you about your individual needs and help you to identify whether Drupal is the right choice for your organisation. If you’d like to speak to our expert team about a Drupal build, upgrade or migration, contact us – we’re here to help.
Read the next blog in this series: