Drupal 8: Autoloading Basics

Autoloading of PHP classes was introduced in Drupal 7. Through a mechanism known as "the registry", modules were able to specify the files…

Tokens in Drupal 7

This article is a followup to Creating Tokens in Drupal 6 . Part of the token module was moved into core for Drupal 7, meaning it is even…

Fast Drupal on Linode

I recently made the switch from Hostgator Shared hosting to a Linode instance, and WOW. It's amazing what you can do with a single…

Using Drupal's Queue API

One of the additions to Drupal 7 that went in without a lot of fanfare was the Queue API . The Queue API is designed to manage tasks. It…

jQuery Dropdown Table Filter

This is especially sweet for Drupal, since it (at least in theory) allows us to serve a single cached version of the page, and allow users…

Easy Upgrade to Drupal 7

If there's one thing I've learned about upgrading Drupal sites, it's that you're going to have to do the same 50 steps over and over and…

Custom Submenus for Drupal

Drupal's menu behavior is probably one of the most confusing aspects of building a site in Drupal 6.  There are plenty of "fixit" modules…

Creating Tokens in Drupal 6

Update 8/13/11 - For creating tokens in Drupal 7, see Tokens in Drupal 7 . Making tokens in Drupal 6 is super easy as long as you don't…

Javascript Content Pane

I'm fond of any trick that can replace javascript functionality in a web page with pure CSS/HTML.  Probably the best example of a CSS…

Ubuntu Home Server II

In the last article, I picked some components to build my Ubuntu Development Server. Now, it's time to put the pieces together. For the…

Ubuntu Home Server I

Last June, I decided to build a home server with the primary goal of using it as a PHP/MySQL development platform.   I wanted an offline…

Ugly Boxes in Google Maps

Using the Google Maps API can be a pain in the ass.  It's great that there's such a powerful, free service out there, but it's a pretty…

Flattening a PHP/MySQL Site

Question... What do you do if you're a PHP/MySQL Developer, and you need to take your work with you? This is a problem I ran into last…