Intermediate Drupal Module Development

Expand your knowledge of the Drupal Form and Entity APIs

In this course, intermediate Drupal developers will expand their skills to create custom modules that utilize Drupal's Form API and Entity API. The course will focus on creating custom forms and entity types, as well as creating blocks and sending emails programmatically.

Who is this class for?

This course is designed for intermediate Drupal developers with a solid understanding of PHP, familiarity with Drupal's CMS, and a basic understanding of module development. Prior experience with the module development topics covered in our Beginning Drupal Module Development course is recommended.

What does this course cover?

Students who take this course will be able to:

  • Create custom forms with the Drupal Form API
  • Use validation and submit handlers to process form data
  • Use hooks to modify entity data and work with entities programmatically
  • Use the Entity API to create custom entity types
  • Create custom blocks to generate dynamic content
  • Send emails programmatically from Drupal

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 Course

Video Duration
Introduction 00:10:39
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

Video Duration
Creating Forms Programmatically 00:19:01
Validating Form Submissions 00:08:05
Sending Emails Programmatically 00:17:05
A Tour of Drupal's Form Elements 00:39:51
Altering Forms from Other Modules 00:16:55

Video Duration
Creating Blocks 00:13:35
Using Dependency Injection in Blocks (and Plugins in General) 00:13:29
Access Control in Blocks 00:12:00
Creating Configurable Blocks 00:08:47
Displaying Forms in Blocks 00:05:32

Video Duration
Introduction to the Entity API 00:04:39
Finding, Viewing, and Updating Entities 00:28:11
Entity Lifecycle Hooks 00:32:42

Video Duration
Creating a Custom Application 00:12:06
Creating a Content Entity with Drush 00:12:15
Understanding the Content Entity Class Annotation 00:21:13
Defining Base Fields on Content Entity Types 00:29:42
Adding Base Fields to Content Entity Types 00:14:57
Customizing a Content Entity Edit Form 00:08:45
Customizing the Entity Type Settings Form 00:11:22
Entity Access Control 00:14:41
Entity List Builder 00:05:12
Finishing Our Custom Application UI 00:09:53
Creating Content Entities with Bundles 00:20:32
Using Database Update Hooks to Update Entity Base Fields 00:14:40
Creating Entities Programmatically 00:10:52

Video Duration
Class Wrap-Up 00:02:56
$ 248
Per student
  • 8 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 September 27, 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 October 11, 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 October 25, 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 November 8, 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 November 22, 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 December 6, 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 January 3, 2024. You can start and stop the videos at your convenience, and use them as a reference forever!

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

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

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

Your lesson videos will be available starting February 28, 2024. 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 13, 2024. 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 27, 2024. 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 September 27, 2023 to October 24, 2023.

Your practice development environment will be available from October 11, 2023 to November 7, 2023.

Your practice development environment will be available from October 25, 2023 to November 21, 2023.

Your practice development environment will be available from November 8, 2023 to December 5, 2023.

Your practice development environment will be available from November 22, 2023 to December 19, 2023.

Your practice development environment will be available from December 6, 2023 to January 2, 2024.

Your practice development environment will be available from January 3, 2024 to January 30, 2024.

Your practice development environment will be available from January 17, 2024 to February 13, 2024.

Your practice development environment will be available from January 31, 2024 to February 27, 2024.

Your practice development environment will be available from February 14, 2024 to March 12, 2024.

Your practice development environment will be available from February 28, 2024 to March 26, 2024.

Your practice development environment will be available from March 13, 2024 to April 9, 2024.

Your practice development environment will be available from March 27, 2024 to April 23, 2024.

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)
September 28 10:00am-11:00am EDT
October 3 4:00pm-5:00pm EDT
October 5 10:00am-11:00am EDT
October 10 4:00pm-5:00pm EDT
Date Time(s)
October 12 10:00am-11:00am EDT
October 17 4:00pm-5:00pm EDT
October 19 10:00am-11:00am EDT
October 24 4:00pm-5:00pm EDT
Date Time(s)
October 26 10:00am-11:00am EDT
October 31 4:00pm-5:00pm EDT
November 2 10:00am-11:00am EDT
November 7 4:00pm-5:00pm EST
Date Time(s)
November 9 10:00am-11:00am EST
November 14 4:00pm-5:00pm EST
November 16 10:00am-11:00am EST
November 20 4:00pm-5:00pm EST
November 21 10:00am-11:00am EST
Date Time(s)
November 28 4:00pm-5:00pm EST
November 30 10:00am-11:00am EST
December 5 4:00pm-5:00pm EST
Date Time(s)
December 7 10:00am-11:00am EST
December 12 4:00pm-5:00pm EST
December 14 10:00am-11:00am EST
December 19 4:00pm-5:00pm EST
Date Time(s)
January 4 10:00am-11:00am EST
January 9 4:00pm-5:00pm EST
January 11 10:00am-11:00am EST
January 16 4:00pm-5:00pm EST
Date Time(s)
January 18 10:00am-11:00am EST
January 23 4:00pm-5:00pm EST
January 25 10:00am-11:00am EST
January 30 4:00pm-5:00pm EST
Date Time(s)
February 1 10:00am-11:00am EST
February 6 4:00pm-5:00pm EST
February 8 10:00am-11:00am EST
February 13 4:00pm-5:00pm EST
Date Time(s)
February 15 10:00am-11:00am EST
February 20 4:00pm-5:00pm EST
February 22 10:00am-11:00am EST
February 27 4:00pm-5:00pm EST
Date Time(s)
February 29 10:00am-11:00am EST
March 5 4:00pm-5:00pm EST
March 7 10:00am-11:00am EST
March 12 4:00pm-5:00pm EDT
Date Time(s)
March 14 10:00am-11:00am EDT
March 19 4:00pm-5:00pm EDT
March 21 10:00am-11:00am EDT
March 26 4:00pm-5:00pm EDT
Date Time(s)
March 28 10:00am-11:00am EDT
April 2 4:00pm-5:00pm EDT
April 4 10:00am-11:00am EDT
April 9 4:00pm-5:00pm EDT