Skip to main content

📘 Understanding Drupal: A Complete Guide to Caching Layers — my new book is out now!

[2018-01-09]

My first day with React.js

#reactjs #javascript #drupal

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.

[2018-01-05]

Noindex WTF

#drupal #google #seo
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.
[2018-01-02]

Goodbye 2017, Hi 2018

#drupal #reactjs

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.

[2017-12-02]

MigrationWTF: Specified key was too long; max key length is 3072 bytes

#drupal #migrate
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
[2017-10-28]

Using JSON API to query your Search API indexes

#drupal #jsonapi #search api
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.
[2017-10-23]

ContribKanban.com: What's next

#drupal #contribkanban

Back in 2015, I created ContribKanban.com as a tool to experiment with AngularJS and also have a better tool to identify issues to sprint on at my previous employer before Commerce Guys. At the Global Sprint Weekend in Chicago, I received a lot of feedback from YesCT and also ended up open sourcing the project.

[2017-10-16]

Why and How for SSLs and your website

#drupal #security #ssl
Secure sites. HTTPS and SSL. A topic more and more site owners and maintainers are having to work with. For some, this is a great thing and others it is either nerve-wracking or confusing. Luckily, for us all, getting an SSL and implementing full site HTTPS is becoming easier.
[2017-10-10]

Implementing a Checkout Flow resolver in Drupal Commerce 2.0

CheckoutResolverInterface.php
Understand the order and checkout relationship
Implement a checkout flow resolver service

What are we going to learn?

Drupal Commerce 2 allows you to support multiple checkout forms. This is pretty cool because it allows you to have different checkout experiences for your customers based on what they are purchasing. We're going to dive into why you would want to use a checkout flow resolver and how to implement one.

[2017-09-11]

Migrated: Now on Drupal 8!

#migrate #drupal

My personal site is now officially migrated onto Drupal 8! I had first attempted a migration of my site back when Drupal 8.0 was released but had a few issues. With Drupal 8.3 it was nearly flawless (maybe even 8.2, but I had put the idea back burner.) I did have some interesting issues to workaround