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
Running Drush Without the Path 00:06:40
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

When is this class taught?

Class Start Date

You can start this class any time within 6 months of purchase.

Lesson Videos

This course includes detailed step-by-step lesson videos, available on-demand to watch on your own schedule. These videos are yours forever, so you can come back and watch them any time you need a refresher.

Live Webinars

In addition to the lesson videos you will be able to attend 2 weeks of optional live Q&A webinars with your instructor. In these sessions, you can ask questions, get help with troubleshooting issues, or dive deeper into any topics that interest you. Click here for a list of upcoming Q&A webinar times.

Online Development Environment

We will provide you with 3 weeks of access to an online development environment where you can follow along with the lesson videos without installing anything on your computer.