Drupal articles

Sometimes you just need to connect to earth: a desk chair story

16th May 2018

Steven and I had been encountering (fairly savage) static electric shocks from our desk chairs.

For a number of months we'd been noticing the issue, each "crack!" seeming louder and more painful than the last. Almost every time we walked across the room, our chairs would greet us with a stab to the hand. The comedy value grew just as the frustration did; we'd enjoy listening for that signature sound whenever our colleagues returned to their desks, and laugh according to how loud a sound the tiny lightning bolts could muster. Some of the most entertaining shocks were the ones...

Read more

Got a config schema error on saving a view?

14th May 2018

We ran into an obscure error recently, when saving a view that used a custom views plugin. It was supposed to be a very simple extension to core's bundle (content type) filter:

InvalidArgumentException: The configuration property display.default.display_options.filters.bundle.value.article doesn't exist. in Drupal\Core\Config\Schema\ArrayElement->get() (line 76 of [...]/core/lib/Drupal/Core/Config/Schema/ArrayElement.php).

Several contrib projects ran into this issue too: Drupal Commerce, Search API and Webform Views integration. There's even a core issue that looked relevant... but it turned out to be a simple, if perhaps surprising fix. If you ever run into it, it will have a different property (i.e. due to whichever plugin or default...

Read more

Creating multilingual variables

A super quick blast from the past today; a Drupal 7 based article!

I had some work recently to create a new "setting" variable for one our Drupal 7 multilingual sites, which meant creating multilingual versions of those variables. I soon found out that there is very much a correct way - or order - to achieve this as I got this one very wrong (I had to re-instate my DB!). So here I am writing a very quick guide to help those from my wrong doings.

(This guide assumes you have a multilingual site setup with [i18n's Variable translation...

Read more

Rebranding ComputerMinds - Part 4: Pattern Lab

Part of the series
Rebranding ComputerMinds
3rd May 2018

We didn’t see this project solely as a chance to rebrand and rebuild for ourselves, it was also an opportunity to try something new and expand our collective knowledge with the potential for using with clients in the future. We had been discussing using Pattern Lab for Front End development for some time and this was the perfect opportunity to try it out.

Patten Lab allows the creation of component-driven user interfaces using atomic design principles. This means we can create modular patterns all packaged up nicely that can be assembled together to build a site. Plus we can use...

Read more

SA-CORE-2018-004

26th Apr 2018

As with every other Drupal agency on the planet, it was another fun evening of frantic patching of client sites last night due to the release of the highly critical SA-CORE-2018-004 security update for Drupal, released on 25/04/2018.

Being so closely related to SA-CORE-2018-002 and knowing proven exploits for that were already affecting thousands of un-patched Drupal sites, time was of the essence for this one as a new exploit was sure to be released in a matter of hours.

Our crack team of developers who stayed late especially had all of our clients' production and testing sites patched within a...

Read more

Rebranding ComputerMinds - Part 3: Website design

Part of the series
Rebranding ComputerMinds
23rd Apr 2018

Now that we had settled on the branding and had established and planned exactly what we needed to create, I could start looking at designing the new website.

I wanted a clean, spacious site with a modern look and feel. I always keep a close eye on changing design trends and it was important that for our site I was careful to design something that would age well...

Read more

Rebranding ComputerMinds - Part 2: SEO analysis, planning and Information Architecture

Part of the series
Rebranding ComputerMinds
19th Apr 2018

Before I could actually start designing, we needed a clear understanding of exactly what we wanted from the new site. We conducted a full SEO analysis to see which content was popular on our existing site and what was not often read and could be consolidated. We also discussed the current state of our business and the direction we wanted to be heading in. We were taking on more and more big development projects and this was something that needed to be reflected and showcased on the site. On the old site, Drupal training was sitting most prominent on the...

Read more

Rebranding ComputerMinds - Part 1: Branding

Part of the series
Rebranding ComputerMinds
11th Apr 2018

After seeing our logo alongside others in various places it was clear to us that we were starting to look outdated. The work we were doing was getting more and more advanced and our branding did not reflect this. We needed to rebrand.

Read more

Rebranding ComputerMinds - Introduction

11th Apr 2018

After 7 years of our brand and website, we felt the outdated look did not reflect the cutting edge work we were doing, so it was time for a change.

With the relatively recent release of Drupal 8 there was no better time for a complete overhaul, so I set to work. But before any website design or build could begin it was important to rebrand the company fully so this could be carried through and be consistent throughout.

We released the new site and branding at the same time a few weeks ago. This series of articles talks through...

Read more

Rendering Drupal fields (the right way)

10th Apr 2018

Once upon a time, we wrote an article about how to render fields on their own in Drupal 7, which was really handy because Drupal 7 wasn't always intuitive. It's common to want to display a field outside of the context of its main entity page, like showing author information in a sidebar block or in a panel, but you had to just know which functions to use. Drupal 8 came along since then using 'grown up' things like objects and methods, which actually makes the job a little easier. So now for Drupal 9, 10 and beyond we have...

Read more