Book Image

Drupal 10 Masterclass

By : Adam Bergstein
Book Image

Drupal 10 Masterclass

By: Adam Bergstein

Overview of this book

Learning Drupal can be challenging because of its robust, extensible, and powerful capability for digital experiences, making it difficult for beginners to grasp and use it for application development. If you’re looking to break into Drupal with hands-on knowledge, this Drupal 10 Masterclass is for you. With this book, you’ll gain a thorough knowledge of Drupal by understanding its core concepts, including its technical architecture, frontend, backend, framework, and latest features. Equipped with foundational knowledge, you’ll bootstrap and install your first project with expert guidance on maintaining Drupal applications. Progressively, you’ll build applications using Drupal’s core features such as content structures, multilingual support, users, roles, Views, search, and digital assets. You’ll discover techniques for developing modules and themes and harness Drupal’s robust content management through layout builder, blocks, and content workflows. The book familiarizes you with prominent tools such as Git, Drush, and Composer for code deployments and DevOps practices for Drupal application management. You’ll also explore advanced use cases for content migration and multisite implementation, extending your application’s capabilities. By the end of this book, you’ll not only have learned how to build a successful Drupal application but may also find yourself contributing to the Drupal community.
Table of Contents (31 chapters)
1
Part 1:Foundational Concepts
7
Part 2:Setting up - Installing and Maintaining
10
Part 3:Building - Features and Configuration
12
Chapter 9: Users, Roles, and Permissions
17
Part 4:Using - Content Management
21
Part 5:Advanced Topics
Appendix A - Drupal Terminology

Common patterns

As mentioned, all Drupal modules follow specific conventions and patterns that bring uniformity across core, contributed, and custom modules. While not exhaustive, there are some common patterns used within modules.

PHP patterns

Object-oriented PHP makes use of PSR standards (https://www.php-fig.org/psr/). PSR-4, which deprecated PSR-0, is a method of autoloading files. This is how Drupal modules, Symfony, and other PHP applications can make use of specific filenames and paths to load files. Files loaded in specific paths help register the code of specific patterns. For instance, a new service class can be placed in a src/Service directory to register a service.

Namespaces are PHP conventions used to organize classes, which are leveraged by Drupal modules. Every auto-loaded file makes use of this pattern, as demonstrated by a namespace for a MyService class:

namespace Drupal\my_module\Service;

Every class in a module uses the same base namespace to keep...