Skip to main content
Home
Drupal life hacks

Main navigation

  • Drupal
  • React
  • WP
  • Contact
  • About
User account menu
  • Log in
By admin, 3 August, 2026

Database Schema Definitions Replace Array-Based Schema API in Drupal 12

Drupal 12 introduces one of the biggest improvements to the Database Schema API in years. The traditional nested array structure used to define database schemas is being replaced with a modern, object-oriented API built around immutable value objects.

This change makes schema definitions easier to validate, safer to extend, and opens the door for future database-specific capabilities without sacrificing Drupal's database abstraction.

By admin, 1 August, 2026
Drupal 11.5 Route title property example using PHP route attributes

Route Attributes Now Support a Top-Level title Property in Drupal 11.5

The Drupal 11.5 Route title property introduces a small but welcome improvement to the routing system. Route attributes now support a top-level title property, making route definitions cleaner and allowing simple dynamic page titles to be defined directly alongside the route.

Tags

  • Drupal
  • Drupal 11.5
  • Drupal Core
  • Route Attributes
  • PHP Attributes
  • Routing
  • Dynamic Page Titles
  • Module Development
By admin, 11 July, 2026
Drupal 11 CLI showing the new vendor/bin/dr command in Drupal 11.4.

Drupal 11.4 introduces dr: A new CLI for Drupal Core

Drupal 11.4 brings one of the most significant developer experience improvements in recent years: a built-in command-line interface that can discover commands provided by Drupal modules.

Until now, Drupal Core included a limited CLI (core/scripts/drupal) that only supported a handful of core commands. Most developers relied entirely on Drush for command-line workflows.

Tags

  • Drupal
  • Drupal 11
  • Drupal Core
  • Drupal CLI
  • dr
  • Drush
  • Symfony Console
  • Symfony Attributes
  • PHP
  • Module Development
  • Developer Experience
  • Composer
  • DDEV
  • Command Line
  • Drupal 11.4
By admin, 2 July, 2026
PHP Attributes for Form Routes

Drupal 11.5: Defining Form Routes with PHP Attributes

Drupal 11.5 introduces another significant step toward modern PHP development by allowing form routes to be defined directly on form classes using PHP attributes.

Until now, every custom form required a corresponding entry in a module's .routing.yml file. With this new feature, many of those YAML definitions can be eliminated, making code easier to maintain and keeping route configuration close to the class it belongs to.

Tags

  • Drupal
  • Drupal 11.5
  • Drupal Core
  • PHP Attributes
  • Form Routes
  • Route Discovery
  • Symfony Attributes
  • Module Development
  • ConfigFormBase
  • FormBase
  • Drupal API
  • Modern PHP
By admin, 10 May, 2026

Understanding the Drupal 11.4 Change: Block Content Attributes Moved to the Content Wrapper

With the release of Drupal, an important rendering behavior has changed for block content render arrays. If your custom modules or themes rely on #attributes in block render arrays, this update may affect your frontend output.

The change was introduced in the Drupal core issue:

“Attributes of a block content are applied to block itself” (#2486267)

This article explains what changed, why it matters, and how to update your code correctly.

Tags

  • Drupal
  • PHP
  • CMS
  • Open Source
By admin, 15 January, 2026
Drupal Core Adopts the main Branch: A Technical Deep Dive into the New Workflow

Drupal Core Adopts the main Branch: A Technical Deep Dive into the New Workflow

Drupal Core Adopts the main Branch: A Technical Deep Dive into the New Workflow

In January 2026, the Drupal project officially announced that the main branch is now the primary development branch for Drupal core. This change completes a series of infrastructure updates that began back in 2023 and brings Drupal’s development workflow in line with modern Git best practices used across the open-source ecosystem.

This article explains:

Tags

  • Drupal
  • Drupal Core
  • Git Workflow
  • Main Branch
  • Open Source
  • CI/CD
  • software architecture
By admin, 4 January, 2026

Implementing a Real-World Feature Across Drupal, Symfony, and Laravel

Implementing a Real-World Feature Across Drupal, Symfony, and Laravel

Feature: E-Commerce “Discount Code Validator”

Requirement:

  • When a user applies a discount code during checkout:
    • Validate the code
    • Check expiration and usage limits
    • Calculate discount
    • Return an updated order total
  • Must be extensible for future promotion types

This feature is small but touches services, events, plugins, and DI—perfect for comparing modular approaches.

Tags

  • Drupal
  • Symfony
  • Laravel
  • PHP
  • modularity
  • Dependency Injection
  • DI
  • plugin API
  • service provider
  • Services
  • bundles
  • CMS
  • web development
  • PHP frameworks
  • software architecture
  • extensibility
  • Drupal module
  • Symfony Components
  • Laravel packages
  • event system
  • Service Container
  • Autowiring
  • software design
  • code reusability
  • feature implementation
By admin, 3 January, 2026
Why You Should Use the Extend Help Maintainers Module in Drupal

Why You Should Use the Extend Help Maintainers Module in Drupal

Why You Should Use the Extend Help Maintainers Module in Drupal

Introduction

When working with Drupal, especially on large or long‑living projects, one common challenge is understanding who maintains a module and where to get help. Core and contributed modules often have maintainers listed on Drupal.org, but this information is not always easily accessible directly inside the Drupal admin interface.

Tags

  • Drupal
  • Drupal module
  • Extend Help Maintainers
  • Drupal help system
  • module maintainers
  • Drupal .info.yml
  • Drupal Development
  • Drupal contrib modules
  • Drupal custom modules
  • developer documentation
  • Drupal best practices
By admin, 3 January, 2026
Dependency Injection Without Pain: Symfony, Laravel, and Drupal Explained

Dependency Injection Without Pain: Symfony, Laravel, and Drupal Explained

Dependency Injection Without Pain: Symfony, Laravel, and Drupal Explained

Introduction

Dependency Injection (DI) is a cornerstone of modern PHP frameworks, but many developers—especially those coming from Drupal—find it confusing. Why inject services instead of calling them directly? How do DI containers differ between Drupal, Symfony, and Laravel?

In this article, we’ll break it down with practical examples, showing how to use DI without headaches across these three systems.


1. What is Dependency Injection?

Simply put:

Tags

  • Drupal dependency injection
  • Symfony dependency injection
  • Laravel dependency injection
  • PHP frameworks
  • Drupal services
  • Symfony DI container
  • Laravel service provider
  • PHP modular architecture
  • Drupal Module Development
  • Laravel packages
  • Symfony services
  • event-driven architecture
  • PHP developer guide
  • DI best practices
  • cross-framework comparison
By admin, 2 January, 2026
One Feature, Three Approaches: Drupal Module vs Symfony vs Laravel

One Feature, Three Approaches: Drupal Module vs Symfony vs Laravel

One Feature, Three Approaches: Drupal Module vs Symfony vs Laravel

Feature Description

We will implement the same simple feature in all three systems:

User Registration Logger

When a new user registers, the system logs:

  • user ID
  • email
  • registration time

Why this feature?

Because it:

Tags

  • Drupal Module Development
  • Drupal modular architecture
  • Symfony modularity
  • Laravel modularity
  • PHP frameworks comparison
  • Drupal vs Symfony vs Laravel
  • Symfony Components
  • Laravel service providers
  • PHP dependency injection
  • event-driven architecture
  • Drupal Plugin API
  • composer packages
  • PHP application architecture

Pagination

  • Page 1
  • Page 2
  • Page 3
  • Page 4
  • Page 5
  • Page 6
  • Page 7
  • Page 8
  • Page 9
  • …
  • Next page
  • Last page
Powered by Drupal