My LocalGov Drupal contributions for January 2026

Beautifully crafted digital products and experiences that matter.

We're still being clobbered by the migration of projects from GitHub to Drupal.org, making work a lot slower as we try to work and keep track of issues/tasks in two places.

  • I've been proposing for a while a desire/need to have a LocalGov Base companion module, so we can run update hooks (e.g. if we launch a new design pattern, we can reset existing sites to the old pattern so things don't break). But there's an issue with how we get that module installed on all sites in the first place. I need to use an update hook for the "Allowing configuring how many top tasks per row" feature, because we are going to set that to four, but existing sites currently have 3. Then ... Rupert came up with a great idea - themes do not have .install files to run update hooks, but they can run post_update commands. So now I have my PR updated to use our shiny news localgov_base.post_update.php file to do what I what.
  • And because of that, I think we can hold-off on my original proposal to have a companion module, at least for now.
  • Not everyone wants the "Section title" on Guides to be a required field, but we all agree we'd like a fallback if that field is not filled in. We have that now - it will fall back to the Guide title if the section title is left blank. I looked at this one for a while, then realised it was a simple config change, but kept looking through the code to see where the fallback is stored. I can't find it, I'm not convinced it should have been as easy as a simple config change, but we'll see when the other core maintainers are finished testing it.
  • I haven't gotten a huge amount of Drupal core work done recently, so I started work on the issue for removing Stable9 theme - of which I am the core maintainer. We plan to have it marked as deprecated from Drupal 11.4 and removed from Drupal 12.
  • We still haven't gotten to an agreement on what we should use as an aria-label for our facets blocks. But at least the conversation is progressing.
  • I'm not sure how I missed the fact that when creating a documents paragraph type, we show the icon for the file type in the backend when editing, but not in the frontend when viewing the page. You know me, MR ahoy!
  • Sticking to the conversations about documents, we have a lovely hook_preprocess_file_link in LocalGov Base which formats our documents like this on the frontend: "Mark's File (PDF, 2MB)", but since we don't use LocalGov Base on the backend for editing, we see this in editing mode: "mark-file.pdf". So ... I created an MR to add the function to LocalGov Core and a corresponding MR to remove the function from LocalGov Base.
  • Let's add a library to our subtheme generator, so subthemes can easily add styles to CKEditor5. Here's an MR for it.
  • Some users are not fully in love with the idea that every time we change a content moderation state to published, the 'Review date' get automatically enabled and set. I have an MR ready now to make this a configurable setting.
  • We've had one of those bikesheds of issues - a good bikeshed in this case, thankfully - trying to figure out an approach to an aria-label if the block title for a directory search block is not available. I think we have a solution.
  • And in kind of major news that no one knows about, I've started work on a redesign of the Scarfolk theme. What there's was completed in just a few days, and I've never been content with it. Hopefully a fresher design will help sell LGD better.

Course: Build a LocalGov Drupal Website

Subscribe to get updates about the course (and perhaps a discount code before it is launched).