What will you learn
- What is Drupal?
- Where to find resources targeted to your needs
- Tips for learning various aspects of Drupal
- About some new tools and workflows
Overview
The latest version of Drupal has a ton of great features for site builders and administrators, an object-oriented backend, and a Twig-based templating system. We're here to make sure you navigate this territory with confidence. We have the most accurate and up-to-date Drupal material you can find. With new versions of core coming out every 6 months, you can count on us to review and update all of our Drupal tutorials so that you never fall behind.
Get started
The Drupal User Guide will be your ultimate destination to practice building your first Drupal site. This is an excellent course to learn essential concepts and tasks in Drupal site building. You'll learn how to install Drupal, plan your site, design a content structure, build content types, views, place blocks, administering, and maintaining your Drupal site.
Or, maybe you want to install Drupal on your machine to walk through specific tutorials. We recommend installing DDEV as a local development environment, and installing Drupal using DDEV and Composer. Follow the steps in this tutorial:
Find specific topics
If you have the fundamentals sorted out, but you need a refresher, or are taking on a new task, you can go straight to the information you need by browsing through our Guides and Topics. They are more specific topics grouped by major category, like Theming or Module Development, and let you zero in on exactly what you need right now. Of course, you can also always search our site to pull up a wide range of materials based on your keyword.
Learning Tips
There is a lot of ground to cover in Drupal, so in addition to our tutorial resources listed above, here are some tips and tricks from our trainers for learning how to use the Drupal content management system.
A lot of people are building sites with Drupal. You can read Drupal case studies to see what modules and tools others are using for their projects, which can give you some great ideas and tips.
Documentation and Resources
The Drupal project's documentation is created and maintained by the same volunteer community that creates the Drupal software. The documentation includes information to help orient newcomers, guides for using Drupal, creating themes, writing modules, and using contributed modules. Here are some of our favorite resources.
Getting help from the community
This chapter of the Drupal User Guide describes how to connect with the Drupal community, where to get support, and learning more.
Site building
Our Build Drupal Sites guide for site builders contains a host of resources for folks wanting to learn how to use Drupal's powerful user interface and modules like Views and Layout Builder to build dynamic sites.
Theming
Start with the Essential lessons to get up to speed with theming in Drupal.
The latest version of Drupal uses the Twig templating language, and the Twig documentation is a great resource for questions about using Twig, as well as learning about the Twig project. Drupal's Twig implementation adds some Drupal-specific functions and filters and handles content rendering using Drupal's Render API. Anything you can do in regular Twig you can also do in Drupal's implementation of Twig.
Alter and extend
Learn how to use Drupal's API to alter and extend Drupal in modules. Learn key concepts and systems in Drupal module development under Essential lessons, then dive deeper with Advanced concepts.
One of the best resources that you should get familiar with from the start when working with Drupal code is the official API documentation site.
Another excellent resource for any developer is the Examples for Developers project on Drupal.org. This is a project that you can download, which contains multiple, well-documented example modules that implement Drupal's core APIs.
Drupal uses object-oriented programming (OOP) and YAML. If you are not familiar with OOP in PHP or YAML, you should probably review that before diving into the code.
YAML, which stands for YAML Ain't Markup Language, is a human-readable data serialization format that's been widely adopted in a variety of use cases in Drupal.
New tools and workflows
Composer is an essential tool for managing Drupal core and contributed module code for projects. Drupal core uses Composer itself to manage non-Drupal dependencies. Some contributed modules (and more all the time) also use Composer to integrate 3rd-party PHP libraries into Drupal. It's worth understanding more about this tool and how it is used in Drupal projects, as you are likely to encounter it at some point.
Drush, aka The Drupal Shell, is a command line utility and UNIX scripting interface for Drupal. It allows access to common Drupal features and tasks via the command line. It can help speed up common tasks for Drupal site builders, developers, and DevOps teams. Among other things, it makes it easier to integrate Drupal into CI/CD workflows.