Blog

Drupal 8 controller callback argument resolving explained Wednesday 7, February 2018 mglaman
Drupal 8 has a robust routing system built on top of Symfony components. Robust can be taken in many ways. It's powerful and yet magical, making it confusing at times. There is a lot of great documentation on Drupal.org which covers the routing system, route parameters, and highlights of the underlying functionality. But the magic isn't fully covered. So, let's explore.

Running Behat tests from CircleCI to a Platform.sh environment

Published on Wednesday 31, January 2018
In client projects, I push for as much testing as possible. In Drupal 8 we finally have PHPUnit, which makes life grand and simpler. We use Kernel tests to run through some basic integration tests using a minimally bootstrapped database. However, we need Behat to cover behavior and functional testing on an existing site for speed and sanity reasons.

Soonish: A humorous and insightful look to emerging technologies

Published on Tuesday 23, January 2018

SOONISH highlights ten emerging technologies that can make our life awesome, or appear awesome and ruin everything. The book ranges from wrangling asteroids to mine like space cowboys all the way to being able to plug your brain into The Cloud™ so we can share emotional feels and stuff. 

Drupal, Coffee, Burgers - A small world afterall

Published on Saturday 20, January 2018
This year I joined a coffee exchange for some members of the Drupal community. I had known there was one floating around, but finally got signed up. Over the past two years, I have gotten more and more into coffee - being a coffee snob about roasts and learning brewing techniques. Last week we were paired up. And sent out some roasts.
Attributing RSS traffic on your Drupal site using UTM Wednesday 17, January 2018 mglaman
It seems like RSS is not quite as a buzz as it once was, years ago. There are reasons for that, but I partly believe it is because more services mask direct RSS feed subscriptions in larger aggregate tools. This change also makes it more interesting to get analytics about where that traffic is coming from, and what feed. When I migrated my site to Drupal 8, I decided to take an adventure on adding UTM parameters to my RSS feeds.

My first day with React.js

Published on Tuesday 9, January 2018

On New Years Day I sat down over ReactJS and decided to see what all the commotion was about. I primarily work on the backend and have dabbled lightly with AngularJS. Generally, my JavaScript work just falls to basic DOM manipulation using vanilla JS or jQuery. Nothing fancy, no components. ReactJS is fun.

Noindex WTF Friday 5, January 2018 mglaman
On a client project, we wanted to prevent search engines from accessing pages on the site. It needed to be directly linked to from some various sources, public, but not queryable. So we did the reasonable thing. We modified our robots.txt and added our metatags. Unfortunately, this didn't seem to work as we would expect and pages still showed up in Google searches.

Goodbye 2017, Hi 2018

Published on Tuesday 2, January 2018

I spent the last 8 days of 2017 not touching my computer. Except for one night, after a few old fashions in, I decided to upgrade my MacBook to High Sierra "for the hell of it." Then New Years came, and we are riding into 2018. I'm going to also try to focus more on blogging. This was my goal for the end of 2017, but I did not stick to it. However, a tweet sent out by Dries resonated that goal and is something I plan to work more on.

MigrationWTF: Specified key was too long; max key length is 3072 bytes Saturday 2, December 2017 mglaman
I recently hit a curveball with a custom migration to import location data into Drupal. I am helping a family friend merge their bespoke application into Drupal. Part of the application involves managing Locations. Locations have a parent location, so I used taxonomy terms to harness the relationship capabilities. Importing levels one, two, three, and four worked great! Then, all the sudden, when I began to import levels five and six I ran into an error: Specified key was too long; max key length is 3072 bytes

Using JSON API to query your Search API indexes

Published on Saturday 28, October 2017
The JSON API module is becoming wildly popular for in Drupal 8 as an out of the box way to provide an API server. Why? Because it implements the {json:api} specification. It’s still a RESTful interface, but the specification just helps bring an open standard for how data should be represented and requests should be constructed. The JSON API module exposes collection routes, which allows retrieving multiple resources in a single request.
Subscribe to Blog