Altering views queries

Posted: Sat, 14/12/2013
I needed to add a outer select query to a view query to remove double rows in the output, which came form the same node being related to two different Organic groups.

Drupal performance tricks

Posted: Sun, 22/09/2013
My view on how to handle a large sites and boost performance on the server at all levels and how to make Drupal faster.

Speed up drush make

Posted: Tue, 09/07/2013
When using drush make on projects where each repository (or module) have their own makefiles and these declares the same modules over and over again drush will download the same data more than once. The code here will utilize drush's cache to only download a module or library once.

Find and Image Magick

Posted: Sun, 17/02/2013
I ran into a problem where a site user had upload a bunch of larger images that ended up crashing PHP as 196Mb of memory was not enough for image styles to resize the images. To the rescue comes the find command combined with ImageMagick's convert program to resize the images.

Log rotation on a Mac

Posted: Wed, 07/11/2012
When working with large web projects over a longer period of time on a local development machine. You may notice that your disk space (especially with a SSD) is running low and one of the reason could be your log files. So why not rotate them an automatically delete older ones.

Ajaxifying Drupal forms

Posted: Sun, 14/10/2012
Sometimes you may want the login form or a contact form to be displayed in a more dynamic way. It could be in modal window and using ajax to submit the form for better user experience. This post provides example modules for Drupal 6 and 7.

PureFTPd over TLS

Posted: Thu, 16/08/2012
You may need to allow a third party to have access to a site, but don't want to give the party full SSH server access. The solution can be to setup at secure FTP server using TLS/SSL encryption.

SSH tunnels and access restriction

Posted: Wed, 25/07/2012
When working with large Drupal sites which connects to web services, which is protected by IP address or you are lock out by company firewalls. SSH port forwarding (also known as SSH tunnels) can be the solution.

Drupal server performance (under siege)

Posted: Wed, 20/06/2012
Drupal server performance can be tricky especially with high traffic sites. If you are upgrading from an existing platform or migrating to a new server you can use the Apache access logs to generate close to real workloads, using Seige, on the new server and make adjustments before going live.

TileStream, Openlayers and Drupal 7

Posted: Sun, 29/04/2012
If you want to have custom designed maps on your Drupal site one solution is to use TileMill and TileStream combined with OpenLayers. This article explains how to install TileStream on a Debian 6.0 server and how to display them using views and OpenLayers in Drupal 7.