Drupal Planet

By berliner , 11 September, 2026

In the previous post in this series, I described how we rebuilt our page templates with Layout Builder. I ended that post by mentioning that templates are less suitable when the page hierarchy must be derived from the data itself.

To explain that part of the rebuild, it helps to look at a more basic change. In the Drupal 7 site, an imported data object and the page that presented it were the same node, whereas the rebuilt site stores them as separate entities.

By berliner , 15 August, 2026

Back in 2022, we upgraded an existing brochure-style site from Drupal 7. The project has been running in different forms for many years and has accumulated a few architectural ideas that worked well, as well as others that needed reconsideration.

This is the first in a series of posts about things I learned while rebuilding and further developing that site.

Most of the information displayed on the site comes from external data sources. Instead of writing and formatting narrative content, editors select from a library of data-driven widgets. These display maps, charts, lists or key figures and provide a limited set of configuration options.

By berliner , 10 May, 2017

The D8 project I'm currently working on used the file-system based workflow for configuration management. As our deployment workflow improved and got slightly more complex, we started to run into issues with file permissions during deployments and wanted to revert back to the database based workflow that is the default for a new D8 installation.

By berliner , 26 July, 2014

The last months I was busy with a friends art project. Today I'm very happy to announce that it went public on july 15th and is doing good so far.

By berliner , 18 January, 2014

During the Drupal 8 port of my relatively new Mefibs module I realized that block creation in code got somewhat more complex than it used to be in Drupal 7 and earlier. It took me quite a while to figure out how this works, especially because there is not a lot of documentation for Drupal 8 yet. So I had to dig my way through core to see how it's done there and finally I got around it. The following is a comparison between how we used to do this in Drupal 7 and how it's done in Drupal 8.

By berliner , 27 November, 2013

The project I'm currently working on requires different registration paths and logic for users with different roles. The heavy lifting of having different paths for the registration page, different form elements to collect profile data, and also the final role assignment is done with the Profile2 Registration Path module. But one piece was missing.