Michael's blog

HowTo: Checkpoint Backup a KVM VPS on SolusVM

  • Posted on: 21 May 2014
  • By: Michael

I have a barebones testing VPS, which, as they are insanely cheap, I think everyone should have one. True, these aren't really usable by retail website owners, but if you're in IT and take QA seriously they're wonderful.

The one big issue with these are having to rebuild them from scratch when you want to try a different set of software packages that will emulate a clean production build and configuration. The solution was relatively easy, but the journey was a pita.

Extract the Exif DateTimeOriginal field and prepend it to the file name to facilitate image sorting

  • Posted on: 19 May 2014
  • By: Michael

Clients!? Clients are wonderful things. They pay the bills. But they definitely ask you for some odd things.

I have a client who needed 10s of thousands of images, from different sources, to be displayed by the date they were taken. As he didn't want to spend hours in his favorite image editor, checking the properties of each file one by one, he punted the whole thing to me with a: "Hey, take these images, and add them to the gallery and make sure they display by date."

As it's my business to make clients happy, my reply, "Sure. I'll have that for you in a few days."

Install PECL uploadprogress on WHM (cPanel) [For Drupal]

  • Posted on: 2 September 2013
  • By: Michael

"uploadprogress" is the usual suspect for Drupal to track the progress of file uploads.

Installation is very straightforward:

  1. Login to WHM, https://ServerIP-Address:2087
  2. Go to: Software » Module Installers
  3. on the line "PHP Pecl," click "Manage"
  4. Paste "uploadprogress" into the "Install a PHP Pecl" box, click "Install Now"

Done.

To verify, reload your 'Status Report' page:

D6 or D7: /admin/reports/status

That's it!

Search Engine Traffic and Optimization for Drupal

  • Posted on: 17 July 2013
  • By: Michael

Drupal out of the box, properly configured, is very SEO friendly. But don't expect your 10 to 20 page site to get any significant search engine traffic. And by search engine, we're talking Google. Google routinely accounts for about two thirds of all US search engine traffic, and other than China, a significant portion of the worlds search engine traffic.

But I want Search Engine Traffic!

Absolutely nothing beats a properly configured Drupal site with significant amounts of unique, relevant, similarly topic'ed content.

If you don't want to bother with creating content, you supposedly can "hire an 'SEO guru' who will rocket your site to the first page of Google results and/or sell lots of your product through PPC." I have several problems with these statements.

Theming Drupal

  • Posted on: 16 July 2013
  • By: Michael

A site's 'look and feel' in geek speak is called a Template, a Front End Overlay, a User Interface (UI) and the User Experience (UX), or in Drupal, the "Theme." You probably already know that ...

This document offers some guidelines on when you should start theming a Drupal project, just how varied Drupal themes can be, where to find 'free' themes, and steps you can take to reduce your theming costs.

Drush snippets for Drupal

  • Posted on: 27 June 2013
  • By: Michael

Use, abuse as desired. “alias =” are entries I’ve placed in .bashrc.

drush pml | grep -v Core | grep Enabled -c
 
alias drush="/home/michael/common/bin/drush/drush"
alias di='drush pmi'
alias dl='drush dl'
alias ds='drush status'
alias dv='drush vget > /home/michael/data/trash/drush-vget`pd`.txt'

Simple Last Access:

One Safe Method for Updating a Drupal Site

  • Posted on: 28 December 2012
  • By: Michael

If I've just sent you a link to this page, it's because I realized I didn't explain how I usually do Drupal updates. Apologies for that and hopefully all of this is old hat to you. For anyone else who's stumbled across this page, here's a relatively high level overview on how to safely update your Drupal site within a major release (e.g. 6.18 to 6.19).

Step 01: Make a Backup of Production

Everything you ever do with a Drupal site should start here.

Pages