Beginning Drupal Module Development

Learn the foundational skills of Drupal module development

In this course, beginner Drupal developers will learn the foundational skills needed to create modules in Drupal. The course focuses on programmatically generating pages from data within and outside the Drupal CMS and rendering it in a variety of formats and custom templates.

Who is this class for?

This class is for beginning Drupal developers or those without formal training who may have missed some important fundamental concepts. No prior experience with module development is required, but a basic understanding of PHP and familiarity with the Drupal CMS are recommended.

What does this course cover?

Students who take this course will be able to:

  • Understand the Drupal module development framework
  • Create custom routes that map URLs to pages in a module
  • Create menu links to navigate to custom pages
  • Create services that can be used by other modules or custom code
  • Use templates to control the look and feel of pages
  • Understand the Drupal cache system and how to use it to improve the performance of custom code

How is it taught?

The course will consist of pre-recorded video lessons and live Q&A sessions with the course instructor. The lesson videos can be watched on-demand, anytime it's convenient. Throughout the course, students will work on a series of hands-on projects, building custom modules that demonstrate the concepts covered in each lesson. We will provide an online development environment in which to follow along with the lessons and complete the assignments.

The weekly live sessions will be conducted online using Zoom. During the sessions, the instructor will answer questions about the lessons and will help troubleshoot any issues with the assignment. In addition to the live sessions, you will have access to an online forum to discuss assignments with other students and ask the instructor questions during the week.

How long is this course?

The estimated time commitment for the course is 6 - 8 hours per week for 2 weeks.

After the course is over, you can continue to access the lesson videos, free of charge, forever. There are no monthly subscription fees. Just come back and watch the lessons whenever you want. They are great when you need a refresher on a topic.

Lessons in This Class

Video Duration
Introduction 00:11:32
Using the DrupalTutor DevStack 00:12:06
Installing Drupal Core 00:15:53
Fixing the Trusted Host Settings Error 00:06:03
Enabling Development Settings in Drupal 00:10:00
Development Tools for Drupal 00:17:58
Using the Example Code Repository 00:12:57
How Drupal Works 00:09:09
Creating Your First Drupal Module 00:08:29

Video Duration
Creating Static Routes 00:26:01
Static and Dynamic Route Titles 00:12:45
Creating Dynamic Routes 00:40:41
Defining Permissions 00:07:22
Access Control Callbacks on Routes 00:13:24
Altering Routes from Other Modules 00:13:49

Video Duration
Creating Menu Links 00:17:59
Creating Local Task Links 00:10:21
Creating Action Links 00:05:18
Altering Links From Other Modules 00:13:01

Video Duration
Using Services with Dependency Injection 00:20:20
Defining Services in a Drupal Module 00:24:57
Overriding Services (and Using Dependency Injection in Services) 00:19:11

Video Duration
Introduction to the Drupal Theme System 00:19:31
Defining Templates in Drupal Modules 00:16:38
Attaching CSS Libraries to Templates 00:07:23
Using Preprocess Functions 00:10:49

Video Duration
An Overview of Caching in Drupal 00:07:31
Caching Metadata: Max Age 00:12:41
Caching Metadata: Cache Tags 00:26:49
Caching Metadata: Cache Contexts 00:19:36

Video Duration
Class Wrap-Up 00:03:20
$ 248
Per student
  • 7+ hours of video lessons
  • 4 live webinars with your instructor
  • Permanent access to the recordings of all the lessons and live sessions
  • A development environment for your practice Drupal site
  • Access to an online forum to ask questions of the instructor and discuss with other students
?

Your Class Session Details

Lesson Videos

Your lesson videos will be available starting March 21, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting March 29, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting April 12, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting April 26, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting May 10, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting May 24, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting June 7, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting June 21, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting July 5, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting July 19, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Your lesson videos will be available starting August 2, 2023. You can start and stop the videos at your convenience, and use them as a reference forever!

Development Environment

Your practice development environment will be available from March 21, 2023 to April 12, 2023.

Your practice development environment will be available from March 29, 2023 to April 25, 2023.

Your practice development environment will be available from April 12, 2023 to May 9, 2023.

Your practice development environment will be available from April 26, 2023 to May 23, 2023.

Your practice development environment will be available from May 10, 2023 to June 6, 2023.

Your practice development environment will be available from May 24, 2023 to June 20, 2023.

Your practice development environment will be available from June 7, 2023 to July 4, 2023.

Your practice development environment will be available from June 21, 2023 to July 19, 2023.

Your practice development environment will be available from July 5, 2023 to August 1, 2023.

Your practice development environment will be available from July 19, 2023 to August 15, 2023.

Your practice development environment will be available from August 2, 2023 to August 29, 2023.

Live Webinars

Webinars for this session are scheduled at the dates and times below. Don't worry. These webinars are strictly for questions and troubleshooting. They are not required to cover the lesson material, and you are not expected to attend them all. These webinars will also be recorded, so if you can't attend a webinar due to your time zone or other conflicts, you can submit your questions ahead of time and watch the answers on the recording.

Webinar Schedule
Date Time(s)
March 17 10:00am-11:00am EDT
March 21 4:00pm-5:00pm EDT
March 23 10:00am-11:00am EDT
March 28 4:00pm-5:00pm EDT
Date Time(s)
March 30 10:00am-11:00am EDT
April 4 4:00pm-5:00pm EDT
April 6 10:00am-11:00am EDT
April 11 4:00pm-5:00pm EDT
Date Time(s)
April 13 10:00am-11:00am EDT
April 18 4:00pm-5:00pm EDT
April 20 10:00am-11:00am EDT
April 25 4:00pm-5:00pm EDT
Date Time(s)
April 27 10:00am-11:00am EDT
May 2 4:00pm-5:00pm EDT
May 4 10:00am-11:00am EDT
May 9 4:00pm-5:00pm EDT
Date Time(s)
May 11 10:00am-11:00am EDT
May 16 4:00pm-5:00pm EDT
May 18 10:00am-11:00am EDT
May 23 4:00pm-5:00pm EDT
Date Time(s)
May 25 10:00am-11:00am EDT
May 30 4:00pm-5:00pm EDT
June 1 10:00am-11:00am EDT
June 6 4:00pm-5:00pm EDT
Date Time(s)
June 8 10:00am-11:00am EDT
June 13 4:00pm-5:00pm EDT
June 15 10:00am-11:00am EDT
June 20 4:00pm-5:00pm EDT
Date Time(s)
June 22 10:00am-11:00am EDT
June 27 4:00pm-5:00pm EDT
June 29 10:00am-11:00am EDT
July 5 4:00pm-5:00pm EDT
Date Time(s)
July 5 4:00pm-5:00pm EDT
July 6 10:00am-11:00am EDT
July 11 4:00pm-5:00pm EDT
July 13 10:00am-11:00am EDT
July 18 4:00pm-5:00pm EDT
Date Time(s)
July 20 10:00am-11:00am EDT
July 25 4:00pm-5:00pm EDT
July 27 10:00am-11:00am EDT
August 1 4:00pm-5:00pm EDT
Date Time(s)
August 3 10:00am-11:00am EDT
August 8 4:00pm-5:00pm EDT
August 10 10:00am-11:00am EDT
August 15 4:00pm-5:00pm EDT