Skip to main content

Kim Pepper

Technical Director

Location

Sydney

Kim is the co-founder and Technical Director of PreviousNext. He enjoys experimenting with new technologies, and contributing to open source projects like Drupal.

My blog posts

Monitoring Drupal Site Status at Scale

by Kim Pepper /

For many agencies, and large organisations that have tens or hundreds of Drupal sites, it can be difficult to keep tabs on which sites have what modules installed and whether they are up to date or not. Manually crawling through each site can be time consuming and error prone.

In this post, I describe a solution that allows you to keep a dashboard of site status information that you can query to find out precisely what is going on on each of your sites.

Read the full post

Managed Drupal and aGov websites on Microsoft Azure in Australia

by Kim Pepper /

In recent months, PreviousNext has been privileged to be part of Microsoft’s APAC Open Source Partner Accelerator program. With Microsoft now providing full support for open source technologies running on the Azure cloud services platform, the partner program has focused on initiatives for PreviousNext to deploy, manage and support customer’s Drupal sites hosted on Microsoft Azure.

Read the full post

DrupalGov Canberra 2014: The new Front-end work-flow from ticketing to building

by Kim Pepper /

John Albin Wilkins recently gave a session on The new Front-end work-flow from ticketing to building at DrupalGov Canberra. 

This session will outline our current mistakes and then introduce the basic techniques for CSS layering and using design components, the heart of any front-end CSS project. We will also discuss ticket structure, project organization, and tricks to implement components when you can't change Drupal's classes.

Read the full post

Using Drupal 8 Condition Plugins API

by Kim Pepper /

Although Drupal 8 has had a Conditions Plugin API for a several months, it wasn't until during DrupalCon Austin sprint we managed to get blocks to use the Conditions Plugin API for block visibility.

The great thing about Condition Plugins, is they are re-usable chunks of code, and many contrib projects will be able to take advantage of them (Page Manager, Panels, Rules anyone?)

In this post, I show how you can create an example Page Message module that uses a RequestPath condition plugin to show a message on a configured page.

Read the full post

Drupal 8 Now: Composer dependencies in Drupal 7

by Kim Pepper /

One of the key goals of namespaces in PHP is to avoid collisions between class and function names between different libraries. Using namespaces and the PSR-0/4 standard creates a clean and simple way of sharing code across projects. This is a core part of the Drupal 8 architecture.

This approach has been a large factor in the PHP Renaissance and the huge amount of sharing of code across PHP external libraries.

In this post, I will show how we can leverage external libraries in existing Drupal 7 sites, using similar techniques to how it is being done in Drupal 8.

Read the full post

Dynamic Routes in Drupal 8 with a RouteSubscriber

by Kim Pepper /

Previously I have demonstrated how to create a new route controller in Using Drupal 8's new route controllers then how to restrict access to it in Controlling Access to Drupal 8 Routes with Access Checks. But that's not where the fun ends!

What about when we need to create a route dynamically. For example, if we need to create routes for content types that we don't know will exist in advance?  In Drupal 7, we created dynamic routes with a foreach loop in hook_menu(). In Drupal 8, we can do all this and more with a RouteSubscriber.

Read the full post

Pagination