I’ve been building websites, applications, and online systems with Drupal since 2010 - which in Drupal years probably makes me something close to a dinosaur already. Over the past 15+ years I’ve worked across multiple Drupal generations, from older procedural builds to modern Drupal 10 and 11 architectures. This section is where I share practical Drupal knowledge, including custom modules, debugging tricks, workflow improvements, performance optimizations, and the countless small fixes that usually come only from maintaining real production systems for years.
Alongside Drupal itself, a large part of the work involves the surrounding infrastructure that keeps everything running reliably. That includes Ubuntu servers, Nginx configurations, deployment workflows, caching, SSL, database tuning, automation scripts and more.
For more than 10 years I’ve been using a dedicated image field in Drupal content types as a featured image. Back when I originally built the site architecture, this approach made…
In this article, you will learn how to set up a webserver for serving Drupal 11 websites running with Nginx, PHP-FPM 8.3, MySQL, and phpMyAdmin on Ubuntu 24.04For the…
As a Drupal developer, keeping your modules up to date is crucial for security and performance. To streamline this process, I use Composer—a powerful dependency manager for PHP.…
In this article, you will learn how to set up a webserver for serving Drupal websites running with Nginx, PHP-FPM 8.1, MySQL, and phpMyAdmin on Ubuntu 23.04
For the…
AMP for Drupal is a really powerful module, that can give your Drupal-powered website an impressive website traffic boost. But it will only work if there are no AMP-related issues…
In this article, you will learn how to set up a webserver for serving Drupal websites running with Nginx, PHP-FPM 8.1, MySQL, and phpMyAdmin on Ubuntu 22.04
For the…
As this was already the second time i faced the "Unable to install bootstrap, bootstrap.settings already exists in active configuration." problem i decided to share a…
In this article, I will keep notes on how I upgraded the multilingual Drupal 7 site to a multilingual Drupal 9 site.
Turns out I had originally built this website on Drupal 7…
Just recently I migrated my blog from Drupal 7 to the Drupal 9 platform, and this time I decided to stick with what I get, instead of building it all from scratch.
I really like…
I was facing problems with some Drupal modules not being supported, before upgrading to PHP 7.4 version.
As I had running Ubuntu 16.04 server with Nginx and PHP 7.0…
Today working on my favorite website - optionsbrew.com, for a moment I faced a small issue - how to display block (s) on the default taxonomy/term page.I remember I was doing such…
Recently I launched a new Drupal 8 website and was surprised by a spam amount we got via website's contact form (built with Webform module).
As the website was new, I…
When building a new Drupal website I prefer working with a Bootstrap theme and apply a subtheme
Just like in the case with Drupal 7, theming a subtheme based on Bootstrap…
In this article, you will learn how to setup webserver for serving Drupal websites running with Nginx, PHP-FPM 7.4, MySQL and phpMyAdmin on Ubuntu 20.04
For the…
Time after time I'm facing this issue with gmap markers. As mostly this happens when I'm doing something on the server side with file permissions, I decided to keep the notes…
Working on the OptionsBrew.com project (website is powered by Drupal 8) I faced the following responsive table issue while browsing content with a table on smaller…
I was migrating Drupal 7 website to a newer infrastructure (PHP 7.4) and during the migration process when tried to connect to the MySQL database I faced following error -…
Unlike in Drupal 7 version where IP banning is enabled by default, with Drupal 8 version, there is one more step added - IP banning must be enabled from the extend section.
Here…
Let's Encrypt have done some very good job, providing SSL certificates that everyone can use absolutely for free. Encrypted HTTPS websites should be default in 2020.
I…
In this article, you will learn how to setup Drupal 8 with Nginx, PHP-FPM 7.2, MySQL and phpMyAdmin on Ubuntu 18.04
For the following tutorial, I used very much the information…
Analytics privacy choice
We use anonymous website analytics only if you allow it. Accept and Reject are equally available. You can change this choice at any time.