Drupal Tips: Avoid infinite loop in user login

Written on January 3, 2023

Picture from Unsplash, by user @tine999
Picture from Unsplash, user Tine Ivanič, @tine999

Last week I had to perform an intervention in a Drupal installation due to an unexpected bug. It was a problem that I hadn’t seen in Drupal for a long time… But the key really is that I was the one who created the issue so I think I’m ready to explain how it happened (my own code generated it) and how to fix it… I am very pleased to join you today to share with you my latest ridiculous mistake: the infinite login redirection in Drupal (and how to solve it)!…

Read More

Tooling: Python2 error in SASS building frontend

Written on September 16, 2022

Picture from Unsplash, by @markuswinkler
Picture from Unsplash, user Markus Winkler, @markuswinkler

Now in my current context I’m working on a multisite Drupal installation with several internal sites (more than a hundred sites) and among other experiences, I’m facing new issues that I had not experienced before. This little post is about that: a very specific error that can be common and how to solve it.

Read More

Drupal Tips: Changing session lifetime for users

Written on March 30, 2022

Picture from Unsplash, by @malvestida
Picture from Unsplash, user Malvestida, @malvestida

The Session time management is an important aspect in any type of application: it allows to determine under which processes the user login will be performed, how the user session will be managed and how the user logout will take place. In the case of Drupal, as in other technologies, it is essential to know the most important aspects of sessions and also, if the architecture is “decoupled”, we will have to take them into account to connect sessions opened from the frontend but managed in the backend. This only increases its complexity and importance.

Read More

Decrease noise, gain focus: Reduce your stress level

Written on February 1, 2022

Picture from Unsplash, by @nikkotations
Picture from Unsplash, user Nikko Macaspac, @nikkotations

Pandemic times have increased our stress levels, without a doubt. A very strange time that gradually stabilizes (it does not disappear, but becomes constant, inescapable and already installed in our daily lives). During this time, we have added new layers of concerns to our lives. We have said Goodbye to many loved ones. We have become (somewhat) more aware of the dangers of our consumerist way of life, seeing the risks of global warming and how this is intertwined, creating new serious problems that travel fast in our interconnected “world-system”…

Read More

Drupal Tips: Altering order of execution in resources

Written on January 15, 2022

Picture from Unsplash, by @andretaissin
Picture from Unsplash, user Andre Taissin, @andretaissin

Changes, changes, changes… throughout a project, we have to implement many changes and alterations to the Drupal code, without touching it directly -of course-. The event system is very powerful but there are still hooks at all levels, so sometimes we must use Hooks that will alter things already modified by other Hooks of the same nature. Also we may need to execute our changes before the changes made by another module (contrib or custom), and for that we must understand well how the order of execution of resources works…

Read More

Drupal Techniques: How to upgrade Drupal

Written on September 29, 2021

Picture from Unsplash, by @saddy143
Picture from Unsplash, user Raul Varzar, @calypso999

As you may have heard, the End Of Life for Drupal 8 is near. This is closing fast, very fast now. In fact the date for Drupal 8 EOL is November 2nd 2021, aligning this transition with the same EOL for one of the most important dependencies and key components: Symfony 3. Yep, the last minor version available for Symfony 3 (3.4) has marked like end for bug fixes and security fixes november 2021. As a rule, supported versions of Drupal must use supported version of Symfony, so this is the end unless you perform and upgrade in your Drupal platform…

Read More

PHP Coding: Reverse Geocoding for taxonomy terms

Written on June 28, 2021

Picture from Unsplash, by @saddy143
Picture from Unsplash, user Nafis Al Sadnan, @saddy143

Have you ever had to perform geocoding? I mean, the exercise of getting some kind of data from stuff like a specific naming in order to get values like longitude and latitude. It had been a long time since I had used the know as “Geographic Information Systems” (GIS), when I was a young (and naive) Java developer…

Read More

PHP Coding: functions that can save your day

Written on May 30, 2021

Picture from Unsplash, by @umby
Picture from Unsplash, user Umberto, @umby

Well, this month I’ve been doing some things I haven’t practiced for some time: data migrations, intensive connections to Gitlab API v4 and even some web-scraping to get data. Along the way I’ve recovered some old PHP functions that I had forgotten or hadn’t used for a long time. As I didn’t want to forget them again, I took this notebook as a reference and wrote down a small post with some functions of our old friend PHP that can give us a little help in the day to day.

Read More

Drupal Tips: Link fields from Twig

Written on April 30, 2021

Picture from Unsplash, by @lazycreekimages
Picture from Unsplash, user Michael Dziedzic, @lazycreekimages

In this new issue of the Drupal Fast Tips I would like to share some basic tips and examples related with the Drupal Link field and how to get the data from its sub-fields (title and link) to rendering in a Twig template. Sometimes we need render values from a link field in a structured way through a Twig template, and depending on the location of the Link field, this may have a different articulation.

Read More

Linux: 70 commands aliases for everyday life

Written on March 29, 2021

Picture from Unsplash, by @jjying
Picture from Unsplash, user JJ Ying

Following on from my previous post about “200 Linux commands for everyday life” that I published a few months ago -September 2020, here-, so today I want to share another small article about little everyday utilities. The previous post had a more extensive (and intense) feedback than when I’m writing about Drupal, so this has invited me to think that maybe (just maybe) it could be useful content for someone.

Read More

Drupal Techniques: URL Patterns and Aliases by code

Written on February 22, 2021

Picture from Unsplash, by @jack_1
Picture from Unsplash, user Rémi Jacquaint

Sometimes in an initial phase of a Drupal project you need prepare some kind of tasks related with routing: creates new routes, defines some Controllers or Forms o maybe just define the so called “aliases”. The aliases allows us define URLs more friendly than the natural, or even thinking in build some patterns in order to apply to our content or entities (users, taxonomy terms, nodes, etc). I’m talking about pretty and semantic URLs like “mydomain.com/blog/article/special-article”.

Read More

Drupal Tips: From arrays to render HTML

Written on January 31, 2021

Picture from Unsplash, by @auntneecey
Picture from Unsplash, user Denise Johnson

Hello everybody! for this post I’m going to stop in a very effective utility for observing the direct relationship between the so-called “Render Arrays” of Drupal and the HTML final code itself, that in many occasions we’ll generating for our Drupal site. I was working on rendering some elements and thought it might be interesting to show that transition exists between a Drupal array and the HTML that will be inserted in the response from our server response, interpreting what Drupal really does from a Render Array with lot of properties and values inside.

Read More

PHP Coding: Playing with Performance

Written on December 10, 2020

Picture from Unsplash, by @thefredyjacob
Picture from Unsplash, user Fredy Jacob

The latest version of PHP (PHP 8) was released recently, maybe at the end of November 2020 (almost a month ago) and a lot of articles has been dedicated to its new features, changes and advanced updates of the most popular programming language for web. I would like to write about this new version, but instead of talkin’ bout features, I have been thinking about performance.

Read More

Linux: 200 commands for everyday life

Written on September 20, 2020

Picture from Unsplash, by @lazycreekimages
Picture from Unsplash, user Michael Dziedzic, @lazycreekimages

For a long time I had the idea of gathering somewhere centrally the most common Linux commands in these years of technology work. Looking back, I see that my relationship with the software in a professional way (I was previously a trainee) began in 2007, about thirteen years ago. Since then, I have always been within Linux environments and above all, in Ubuntu / Debian in particular. In some moments I have had to manage CentOS / RHEL and in some laptops I still have Fedora. But Debian / Ubuntu / L-Ubuntu were always my options (and still are).

Read More

Tooling: Provisioning with Terraform

Written on August 31, 2020

Picture from Unsplash, by @gmmoreno
Picture from Unsplash, user Gustavo Moreno, @gmmoreno

During this summer holiday, strange and so different, I tried to keep myself entertained with a thousand technical things (in addition to the daily needs of home and family) that I had on the TO*DO list. For example, I’ve been testing the Julia programming language to familiarize myself with the syntax and its approach. Or I’ve been studying the internal architecture of arrays built in C language within PHP, and I have also used tools I wanted to know, like in this case: Terraform.

Read More

Drupal Techniques: Patching modules with Composer

Written on July 17, 2020

Picture from Unsplash, by @tony_wanli
Picture from Unsplash, user Tony Wan, @tony_wanli

I was thinking about I could write my as my little monthly post in this sketchbook just when I saw a new comment coming -through email notifications- to my main website, The Russian Lullaby in one of my last articles about migration debugging in Drupal. Specifically, the comment is a query about patching a Drupal module, since the article includes a section where the module has to be patched in order to work fine (at least earlier, for certain versions prior to the last one). So I thought I’d publish a little post about Drupal patches applied from Composer.

Read More

Drupal Techniques: Placing a block by code

Written on June 24, 2020

Picture from Unsplash, by @xavi_cabrera
Picture from Unsplash, user Xavi Cabrera, @xavi_cabrera

Today I would like to type a little bit about a technical exercise I did the other day: I played to activate and locate Drupal blocks in themes avoiding the site - building, just with code. So I’m going to show some ideas related with Forms, Blocks, Themes and the Config system of Drupal. This will be valid for Drupal 8 and Drupal 9. Let’s go.

Read More

Drupal Techniques: Creating nodes by code

Written on May 17, 2020

Picture from Unsplash, by @manuelsardo
Picture from Unsplash, user Manuel Sardo, @manuelsardo

Last week I needed to develop some functionality for a project and I did something I hadn’t implemented for a long time: I had to create nodes through programming and so I realized some things that had been deprecated at this point, So I take this opportunity to publish a simple snippet about this.

Read More

Drupal Tips: Stop submit from jQuery

Written on April 26, 2020

Picture from Unsplash, by @jodaarba
Picture from Unsplash, user Jose Aragones, @jodaarba

I want to make a short and quick publication (I promise), just with a snippet, a piece of code that I have used recently and I wanted to share the idea: How to prevent that after a click on the main button of a Drupal form (based on Form API) it reloads again, stopping the process.

Read More

Drupal Techniques: Xdebug, DDEV and Postman

Written on April 19, 2020

Picture from Unsplash, by @timothycdykes
Picture from Unsplash, user Timothy Dykes, @timothycdykes

Last Friday I had to perform several code debugging to review several use cases based on the interconnections between a data bus and a Drupal installation. It has been a long time since I debugged REST and in this time, I have gone from using Drupal in a custom LAMP / Docker environment to working only and exclusively with DDEV based Drupal environments.

Read More

Drupal Techniques: Examples for Migrations

Written on March 17, 2020

Picture from Unsplash, by @emileseguin
Picture from Unsplash, user Émile Séguin @emileseguin

As I said in the previous post, during these months I will be playing with migrations, preparing some cases for a future (I hope) book. Well, during these days of confinement, I intend to continue with small articles around here to show experiences related to migrations.

Read More

Drupal Techniques: Resources for Migrations

Written on February 25, 2020

Picture from Unsplash, by @inmasantiago
Picture from Unsplash, user Inma Lesielle @inmasantiago

I am working on notes for a draft that will be a book about migration processes made with Drupal and its Migrate API. It is expected to be released in June 2020 and the work of collecting, experimenting and articulating the content is being quite extensive. As there are still some months left for the launch, in order not to lose the mental sanity and to be able to give partial sense to these tasks, I have thought to publish here some small posts derived from the working notes.

Read More

Drupal Tips: The Magic of '#attached'

Written on January 29, 2020

Picture from Unsplash, by @gaspanik
Picture from Unsplash, user Masaaki Komori @gaspanik

Since a few days ago, I’m preparing a tutorial about the integration of JavaScript in Drupal that will be released soon (it will be written in Spanish in Medium). On the other hand, recently I was preparing some Drupal patches for the portability to Drupal 8 of a small contrib module, the humans.txt. Okay, but what do the two activities have in common?…

Read More

Reading: Local Web development with DDEV

Written on December 30, 2019

Picture from Unsplash, by @specialdaddy
Picture from Unsplash, user Janko Ferlič @specialdaddy

I recently acquired the book “Local web development with DDEV explained” written by Mike Anello and I’d like to share my thoughts on that here. So, Do you develop projects based on Drupal? do you know the DDEV tool for building environments? these may be important motivations, but there are more reasons why Mike Anello’s book could be interesting for you…

Read More

Community: Workshop in Drupal Day Spain 2019

Written on November 26, 2019

Picture from Unsplash, by @ryanhafey
Picture from Unsplash, user Ryan Hafey @ryanhafey

I write these lines (or I start them) just as I return from Drupal Day Spain 2019, which this year took place in the city of Zaragoza. I’m typing while I recreate in my head various anecdotes, details, conversations and above all, learning.

It has been a very enriching meeting and I liked it very much from a technical point of view, but now I want to write mainly about what has been my personal contribution to the encounter: an introduction workshop to the backend of Drupal 8.

Read More

Linux: Random commands for your daily life

Written on October 30, 2019

Picture from Unsplash, by @jamie452
Picture from Unsplash, user Jamie Street @jamie452

Recently I returned to the habit of asking myself every morning “What did I do yesterday?” just at the beginning of the day, in time to find the connection with the sequence of tasks of the present day. Among the questions, to contextualize myself I used the command history and history |grep whatever again to extract by console the history of instructions of the previous day…and so I have been compiling some commands used daily.

Read More

Drupal Tips: Prefilling fields in forms

Written on September 27, 2019

Picture from Unsplash, by @chadwiq
Picture from Unsplash, user Chad Walton @chadwiq

Today I would like to play a little with the forms in Drupal 8 , taking advantage of them and walking around interesting concepts such as the injection of services (and services by themselves) or dynamic queries to database. That’s why today I’m thinking about a short and didactic exercise that integrates everything. If you are interested in Drupal 8 forms, the services and the Database API, read on…

Read More

Drupal Tips: Using links in Drupal 8

Written on August 15, 2019

Picture from Unsplash, by @osmanrana
Picture from Unsplash, user Osman Rana @osmanrana

The first thing I need to clarify is that we are not going to talk about “using links” in Drupal 8. We’re actually going to talk about how to build custom links in Drupal 8. Well, I wanted to write about this but because of the character limitation of the title string I used that form. So keep reading if you want to know how to build links programmatically in Drupal 8. Do you follow me?…

Read More

Tooling: Docker Docker-Compose DDEV - Cheatsheet

Written on June 9, 2019

Picture from Unsplash, by @markusspiske
Picture from Unsplash, user Markus Spiske @markusspiske

We know that for some years, working with Docker Engine has become a MUST. From our ability to define specifications(Dockerfiles), configure autobuilds in the cloud to generate images from our repositories(Dockerhub), run images and containers(Docker), connect containers and relate them(Docker-Composer) or deploy container networks( Docker Swarm) … on this depends the agility that we can give to our daily work.

Read More

Drupal Resources: OpenEuropa-European Commission

Written on May 21, 2019

Picture from Unsplash, by @peterlaster
Picture from Unsplash, user Pedro Lastra @peterlaster

“European Commission DIGIT initiative fostering open source adoption in consolidating the European Institutions web presence”…ummm what is this? I want to share -briefly- the process of installing a platform based on Drupal 8.

Read More

Drupal Techniques: Deploy environments with DDEV

Written on May 18, 2019

Picture from Unsplash, by @heapdump
Picture from Unsplash, user Patrick Lindenberg @heapdump

I always (or almost always) had worked on Drupal projects with the same stack of versions, so I only had one environment set up. Then, I started to have different versions (Drupal 6.x, Drupal 7 … 8) at the same time for diverse projects and then I started playing with Docker. But now I have discovered ddev and a new game has started.

Read More

JavaScript: Styles in console output

Written on April 6, 2019

Picture from Unsplash, by @danielwatsondesign
Picture from Unsplash, user Daniel Watson @danielwatsondesign

The previous Tuesday I was practicing with JavaScript and using console.log() to show data (nothing serious, if it was important I had used breakpoints, of course :-P), and in an outflow of extensive information, I remembered a nice way to organize it visually: You could give color and shape to the information displayed through console.log().

Read More

JavaScript: Data with console.table()

Written on March 23, 2019

Picture from Unsplash, by @denisolvr
Picture from Unsplash, user Denis Oliveira @denisolvr

I would like to write down a quick and little trick to get information from an HTML - based web view through Javascript. It’s a useful tip for those who work daily with web technologies and want to do element listings or maybe locate a specific element within the DOM

Read More

Drupal Tips: Three ideas

Written on September 13, 2017

Picture from Unsplash, by @markusspiske
Picture from Unsplash, user Markus Spiske @markusspiske

I have been working with Drupal 7 recently and I have done configuration and development tasks for projects based on Drupal 7: projects of work (consultancy) and other tasks for Drupal modules on which I am working in my free time. I would like to make a collection of snippets and ideas that I have implemented recently (some of which I have not done for a long time) and to register here. Maybe it will help someone at some point who needs to do the same things.

Read More

Community: Drupal Sevilla is moving

Written on June 30, 2017

Picture from Unsplash, by @tegan
Picture from Unsplash, user Tegan Mierle @tegan

This week the local group Drupal Sevilla -the community of people interested in Drupal living and working from Seville (Andalusia, Spain)- has met and we have done a retrospective on the cycle of activities developed to date, taking advantage of the last appointment before Of summer to review and prepare ideas for the new course that will begin in September.

Read More

JavaScript: first steps with P5.js

Written on June 16, 2017

Picture from Unsplash, by @davideragusa
Picture from Unsplash, user Davide Ragusa @davideragusa

A few days ago I attended a talk given by Esperanza Moreno @mimina, architect, researcher and developer. She’s developing applications that allows connect musical files (metadata) with renderings and musical remixes, a visual and auditory show called “Antropoloops”, a quite powerful cultural project. See their website

Read More

Hello World!

Written on May 10, 2017

Picture from Unsplash, by @slavab
Picture from Unsplash, user Slava Bowman @slavab

Hi to everyone! I’m working on a personal website for technical stuff, out of the corporative site and other blogs where I write content in spanish. I have found this piece of software with easy setting and deployment options from Github, from a fork of a repository for light websites with Jekyll and some gems over Ruby, so I’ll try. A bit of Vim, Git in local and push to Github.

Read More