Using add to cart links instead of forms in Drupal Commerce 2
Today I'm introducing you to a new contrib module, I've created for allowing "add to cart" (or wishlist) buttons as links instead of forms. This helps to circumvent some unfortunate Drupal core limitations, when you want to build overview pages or blocks.
Potential pitfalls when using Dompdf and how to fix them
In a current project, I had to generate PDF documents based on custom entities on a Drupal 8 page. Although this has never been so easy than with Dompdf, I've stumbled across two problems which cost my some time to find out and fix.
Horizontal Tabs in Drupal 8
Drupal 8 ships with a great and easy to use 'vertical_tabs' form element but unlikely a horizontal counterpart is missing. I'll show you, how can get horizontal tabs into your forms.
Drupal quick tip of the day: react differently to CLI calls
Sometimes you want to react differently, when the current script is running in a command-line environment. Here's how you can do this.
Drupal quick tip of the day: the "autocompleteclose" event
Today I want to introduce you to the lesser known "autocompleteclose" event that you can use for Ajax callbacks in Drupal's Form API.
How Drupal Commerce 2.x improved my skills
Being one of the first early adopters of Drupal Commerce 2.x by starting our first project in early 2016 (on alpha2 version) and soon after a second one, I originally planned to write a blog post soon after beta1 gets published. Unfortunately I was too busy at that time....
Why running \Drupal::entityDefinitionUpdateManager()->applyUpdates() in update hooks is bad
In this blog post I explain why running \Drupal::entityDefinitionUpdateManager()->applyUpdates() in update hooks is very bad. I've already seen this a few times now, and today it was one of times it caused a problem during updating a site.
Drupal's great little helpers: Random utility class
Drupal's API has a huge number of very useful utitlity classes and functions, especially in Drupal 8. Although the API docs are great, it's rather impossible to always find every little feature. Today I want to show you the Random utility class, which I've nearly overseen and found rather by accident.
2016 - the dawn of Drupal
If I had to find a movie title for a Drupal review of the past year, then I'd choose "2016 - the dawn of Drupal" because it was the first full year of Drupal 8, and D8 is really a game changer!
Why it is a bad idea to do function calls on injected services during instantiation in Drupal 8
Today I was tracking down a strange issue with a form submission and validation, which finally turned out to be the consequence of an unobvious wrong function call inside a class constructor.