Learning drupal 9 as a framework

Book Cover
Learning Drupal 9 as a framework

$34.99 $24.99

Order Now 20% off now!

In this hands-on course...

A Drupal expert with 10 years of experience will give you a deep dive into the power that Drupal core has to offer. *2021 & 2022 best sold Drupal book on Leanpub.com!*

  • 4.6/5 author rating. Course already taken by 1500 people from 55 countries worldwide.
  • +2400 lines of ready-to-use code snippets
  • Full project code included
  • Build a real platform, not just separate tutorials
  • Suitable for individual training or teams, also for experienced coders from other frameworks
  • Also part of the Udemy Business training

Scroll down this page to read more!

Video Courses

Drupal 9
Drupal developer essentials
New!

What you'll learn:

  • Composer commands
  • Development & debug
  • Configuration management

This course includes:

  • 2 hours on-demand video
  • 12 downloadable resources
  • Full lifetime access
Drupal 9
Drupal 9: start with custom entities
1097 students

What you'll learn:

  • Set up a custom content entity
  • Add fields to a custom entity
  • Build a multi-step entity form and submit data to the database
  • ...Many more things!

This course includes:

  • 2.5 hours on-demand video
  • 18 downloadable resources
  • Full lifetime access
Drupal 9
Drupal 9: Advanced module development guide
597 students

What you'll learn:

  • Programmatic database actions on custom entities: insert / update / reference / delete
  • Create a block plugin and use dependency injection to load in the current entity
  • Set up and use advanced core caching mechanisms like cache tags and cache contexts
  • ...Many more things!

This course includes:

  • 4.5 hours on-demand video
  • 22 downloadable resources
  • Full lifetime access

About the Author

Stef Van Looveren

It struck me that there are so few good learning paths for Drupal. With this course I try to fill the gap. I gave it my best and I hope you will enjoy it!

Stef Van Looveren

Senior Drupal Developer

User Reviews

The course has been taken by people from over 55 countries.

Tim Camps
Tim Camps

Belgium flag drupal.org

Jun 2023

As a long time Drupal user (mostly theming), I really enjoyed the class.
This class will help you on the way with setting up a solid develop environment and get you started with Drupal Configuration Management.

Federico Calo
Federico Calo

France flag

February 2nd, 2023

Five stars!
Clear explanations, valuable, engaging.

Paulo Junior
Paulo Junior

Brazil flag

February, 2023

Muito bom o curso.
Successfully finished Start with custom entities!

Gergő Szabó
Gergő Szabó

Hungary flag

November 28, 2022

Escellent
Engaging delivery and clear explanations, five stars!!

Camilo Figueroa
Camilo Figueroa

Colombia flag

10 Sept 2021

Fantastic book
Thanks for this amazing book, it is wonderful, throufull explained and pedagogically crafted with care. Great Book.

Hari Venu
Hari Venu Senior Drupal developer

Qatar flag

10 July 2022

The book is very useful and worthful
Very nice set of codes and explanations with examples, also getting in depth with Drupal 9. The way of introduction of each terms in Drupal is surprisingly marvels. Expecting more books from Stef :)

Vlade Radovanovic
Vlade Radovanovic Junior Drupal Developer/Site Builder

Serbia flag

9 June 2022

Clear explanations, helpful practice activities, knowledgeable instructor
Expecting the next course!

Balasaranya Varathalingam
Balasaranya Varathalingam

India flag

20 Dec 2022

Helpful, clear, engaging!
Successfully ended video course start with custom entities.

Table of Contents

Please read the table of contents to know what to expect.

Part 1

Drupal developer essentials
  • Composer
    • Basic composer commands
    • Comparing with drupal 7 and earlier
    • Patching with composer
  • Git best practices
  • CLI tools
  • Development & debug
    • Xdebug
    • Webprofiler
  • Configuration management
    • Basic configuration management
    • Creating custom configuration settings
    • Different configuration per environment

Part 2

Project code and set-up
  • Seed data
  • Project set-up
Not in this course

⛔ Please do not buy this course if you are looking specifically for the topics below

  • How to install drupal
  • Server set-up
  • JSON API / Webservices
  • Unit-testing
  • Drupal theming guide

Part 3

Custom entities 101, CRUD operations, workflow states and access
  • Content entities
  • Building our first content entity
  • Securing access of our entities
  • Adding the create/edit/delete forms (CRUD)
  • Views integration of our custom entity to add a listing
  • Getting up-to-speed: making the entity fieldable
    • Media field with library
    • Adding fields to the custom entity via the UI
    • Adding workflows and moderation to custom entities
  • Change entity access based on workflow states
  • Adding views plugins: custom fields and operation links
  • Adding a custom controller for direct publishing
  • Building an overview page
  • Adding a custom views filter based on moderation state
  • Optimize the entity teaser with custom variables for twig
  • Adding css to views
  • Adding a user-friendly multistep form for entity creation
  • Add custom actions to the form
  • Conditional fields in the Form API
  • Updating our data seeds

Part 4

Building the application. Storing, validating and rendering data
  • Add dynamic menu links with Menu plugins
  • Building the offer page with twig: theming a custom content entity
  • Adding a dynamic bidding form to our page with an advanced block plugin
  • Adding site-wide css and javascript
  • Adding a code-only bid entity
  • Saving the bid entities on form submission
  • Form validation based on highest bids
  • Add dynamic variables to our entity teaser
  • Validating the entity with constraints
  • Displaying all bids in a dynamically rendered table
  • Integrating the core revision system into the bidding process to raise a bid
  • Deleting a bid with a core dialog pop-up

Part 5

Transitions, Events, Caching and user registration
  • User notifications on transition events
  • Update entire view with custom ajax callback
  • OO in practice: deletion of bid and notification entities when an offer gets deleted
  • Caching in-depth
    • Caching of views pages
    • Caching of custom entity pages
    • Use of cache contexts and cache tags for caching custom blocks
    • Use of cacheable dependencies in render arrays
    • Invalidate cache of another entity after saving
  • Dispatch custom Events with an EventSubscriber to redirect users
  • Customize the user registration process with a RouteSubscriber
  • Finishing up the platform

Screenshots

You will be building the following software from scratch with Drupal 9.
(Not much effort was put in design, because this is not a theming course!)

Entity Detail
Entity Listing
Step 1 Custom Entity
Step 3 Custom Entity
Entity Overview
Drupal Block
Drupal Ajax
Drush
Code