Recent Blog Posts

Set up a hierarchical taxonomy term Facet using Facet API with Search API Solr

I wanted to document this here just because it took me a little while to get all the bits working just right so I could have a hierarchical taxonomy display inside a Facet API search facet, rather than a flat display of only the taxonomy terms directly related to the nodes in the current search.

Basically, I had a search facet on a search page that allowed users to filter search results by a taxonomy term, and I wanted it to show the taxonomy's hierarchy:

Flat taxonomy to hierarchical taxonomy display using Search API Solr and Facet API in Drupal 7

To do this, you need to do two main things:

  1. Make sure your taxonomy field is being indexed with taxonomy hierarchy data intact.
  2. Set up the Facet API facet for this taxonomy term so it will display the full hierarchy.

Let's first start by making sure the taxonomy information is being indexed (refer to the image below):

Pater Nobis (Our Father)

Note: When migrating my blog over from Lifeisaprayer.com, I dug up a number of unpublished posts that I had completely forgotten about; this was one such post that I had written just prior to the birth of our first child (who is now three, and reminds us of the fact at least twice per hour—me: "How did you know how to do [some incredible new skill]?" - him: "Becawse I'm thWEEEE!"). I originally wrote this post in November of 2012, but am finally publishing it in 2016!

In the past few months, I've had much occasion to think over the words of the Our Father. Specifically, I've been thinking a lot about the relationship of a father and his children, and the love of a father.

In the Our Father, we hear of some of the traits of fatherly love:

How to shoot a large event (photography gear / workflow)

Jeff Geerling shooting photos with Nikon at Steubenville Youth Conference
Shooting with a Nikon D7100 and 70-200mm f/2.8 VR (photo by Sid Hastings).

I love taking pictures. Specifically, I love taking pictures at meaningful events where people show a range of emotions, and enjoy interesting environments and situations. I've been honored to help at a few large events year after year, such as the Ordination Masses for the Archdiocese of St. Louis, or the Steubenville St. Louis Mid-America youth conference, and I thought I'd try to write an article detailing my workflow with tips and techniques for other photographers getting into solo event photography.

Honeypot makes an appearance on the Modules Unraveled podcast

I've been subscribed to the Modules Unraveled podcast since somewhere around episode 40, and it's one of my favorite Drupal-oriented podcasts. I was thrilled to get an email from Brian Lewis last week asking if I'd talk about Honeypot (a popular Drupal module I maintain) on the podcast.

We discussed the module itself, ways to combat spam in general, some reasons why you would or would not want to use Honeypot for your particular site, and also the experience of porting the module to Drupal 8—a three year undertaking.

The full/raw interview is available on YouTube:

Speaking at php[tek] in St. Louis May 25 and 26!

php[tek] 2016 logo

I'm thrilled to announce that I'll be delivering two sessions at php[tek] this year:

Both topics are near and dear to me, as I've had more time to refine the Ansible roles and performance of Drupal 8 on a Raspberry Pi (see Drupal Pi and the Raspberry Pi Dramble website for more info), and I've also been spending some time lately optimizing my WFH environment (the nice cave-like office in my basement, where I spend the majority of my waking hours!).

Configuring CloudFlare with Drupal 8 to protect the Pi Dramble

In a prior post on the constraints of in-home website hosting, I mentioned one of the major hurdles to serving content quickly and reliably over a home Internet connection is the bandwidth you get from your ISP. I also mentioned one way to mitigate the risk of DoSing your own home Internet is to use a CDN and host images externally.

At this point, I have both of those things set up for www.pidramble.com (a Drupal 8 site hosted on a cluster of Raspberry Pis in my basement!), and I wanted to outline how I set up Drupal 8 and CloudFlare so almost all requests to www.pidramble.com are served through CloudFlare directly to the end user!

CloudFlare Configuration

Before anything else, you need a CloudFlare account; the free plan offers the minimal necessary features (though you should consider upgrading to a better plan if you have anything beyond the simplest use cases in mind!). Visit the CloudFlare Plans page and sign up for a Free account.

Pages

Subscribe to Jeff Geerling's Blog