Foundation for Email

I’m a big fan of using the right tools for the job, especially when those tools can make your life easier. In the case of Foundation for Email, those tools come in the form of a responsive CSS framework for building HTML emails.

Anyone who has ever built a HTML email knows how horrific the experience can be. Email clients haven’t really moved on much in the last 10+ years, Outlook is absolutely woeful, and you need to support web-based clients such as Gmail that have their own quirks.

Foundation for Email is a suite of styles that make building these HTML emails a lot easier. There are a number of different components that can be put together to build responsive email. These components, which you’ll recognise from other CSS frameworks such as Foundation for Sites or Bootstrap, are all tried and tested against all the major email…

Parse Closes Its Doors

Parse has closed its doors and is currently winding down its services.

Parse is a mobile backend as a service (BaaS) provider, which was created in 2011 by a number of ex-Google and Y Combinator employees. Parse was a tool used predominantly by mobile developers – although it could have been used in all sorts of situations other than mobile apps – to provide a suite of tools that most mobile apps use. The idea was to remove the hassle of creating a backend for your mobile app. Lots of mobile developers don’t have the skills or the interest in building and maintaining a scalable database or API that is quick, secure and optimised, which is where Parse came in.

In 2011 Parse gained venture capital of around $5.5M. In 2012 they reported that Parse was used by 20,000 mobile developers in even more apps. Their growth was at…

The State of Play of E-Commerce

Traditionally I am a full-stack developer, focussing on PHP. I work at a development agency, and lots of our clients have e-commerce websites. In fact, much of the Internet is based around e-commerce. That’s why I find it so difficult to understand the current state of play of the e-commerce offering.

PHP is the most popular programming language on the web. Lots of people have beef with PHP, but its popularity is a fact. As such, lets look at the PHP-based e-commerce solutions available.


Magento is the most popular e-commerce platform on the web. Many e-commerce sites I build are in Magento.

Magento has a few flaws that I would consider pretty major when choosing an e-commerce platform.

It’s slow. This is down to its fundamentally flawed database structure (built on EAV) and architecture (hundreds of XML files). Many major hosting providers won’t even touch a Magento website…

How to use page attributes inside the loop on WordPress

I like WordPress, but sometimes it works in weird ways.

I recently needed to get information such as the title and some custom fields of the Page I was on. That’s easy, but the Page happened to be ‘News’ which was served from index.php. That apparently isn’t so easy.

To do it, I needed the Page ID. That’s something a lot of people can probably hard-code, but this is a multi-site theme, so no can do. Instead I had to use get_option( ‘page_for_posts’ );.

Here we have it:

<?php $page_id = get_option( ‘page_for_posts’ ); ?> <h1><?php echo get_the_title($page_id) ?></h1>

WordPress Hosting Comparison

WordPress Hosting Comparison is a website I launched this week. The website lists the main web hosts in the industry that supply managed hosting. The website doesn’t include providers of what I would deem to be more bare bones systems, where you would receive root access to a (virtual) box, but instead focuses on providers who offer tailored hosting solutions ready to go.

Not all of the providers offer a WordPress-specific hosting option, but many do. However, all of the web hosts and all of the web hosting packages within the comparison will fully support WordPress. Many of the providers have WordPress only packages, and some have WordPress pre-installed and optimised with their own in-house plugins tailored specifically for their own servers.

The website itself is built in Ruby on the Rails framework. I created the website as an opportunity to learn a little more about…

OpenCart Database Cache

I recently developed a plugin for OpenCart, the plugin (excuse the cheese) is called: Super FAST Database Cache.

I’ve been using OpenCart for years, and prefer it over Magento for a dedicated shopping cart (I’m quite fond of WooCommerce too). I decided to bundle up this plugin as I wrote it for a website that required a bit of a better caching solution than the out-of-the-box caching that ships with OpenCart.

The plugin is purely a database cache. It replaces the default MySQL driver, rather than the somewhat dirty vqMod implementations that seem to be the norm. The only drawback is that different OpenCart versions have different class names and locations for the drivers, even on minor version changes.

So how does it work? The database driver will MD5 hash the query, and check if a cache file exists with that name, if so (and it hasn’t expired)…

WordPress Twenty Fifteen

WordPress has announced the development of their new default theme to ship with WordPress, called Twenty Fifteen.

The new default theme will be released around December time, which is the usual time for the default theme release, and follows last year’s theme Twenty Fourteen.

I’m a big fan of this theme. It looks like a blog, it’s clean, it’s responsive, but still allows you to put your own stamp on it with theme customisations.

Twenty Fifteen is a clean, blog-focused theme designed through simplicity. With careful attention to typography, the theme treats text as a major part of the user interface. It features Google’s Noto Serif and Sans – a font family designed to be visually harmonious across many of the world’s languages, and a perfect fit for the internationalization strides being made in WordPress core.

The theme is also designed to maximize the impact of core’s customization…

WordPress 4.0 – Benny

The new major version of WordPress was released yesterday, nicknamed “Benny”.

Although this is a ‘major’ version in terms of numbering, you’re not going to log into your site and expect to see something totally different, the majority of changes are somewhat specific to sections of WordPress, and unless you use WordPress daily, you probably won’t notice. These changes, though, will make a big difference to those power users who are working with WordPress every day.

Here is a brief overview of some of the changes:

Media library has been greatly enhanced with an endless grid, which makes it easier and more intuitive to browse your media on all devices. Making lots of edits to lots of media is now a much sleeker process.  You can now make an amend to a piece of media, click ‘Next’, and continue editing. The media library shows previews of rich media, such as videos…

How to Safely Move a WordPress Site

This will technically work with most single-server applications (if you don’t know the difference then you’re probably on a single-server set up), not just WordPress, but as WordPress is pretty popular I’ll talk through that instead.

Moving to a new host can be a little unnerving.  If all goes well your visitors would never know, but on the flip side it can all go terribly wrong very quickly, and there is a lot that can go a miss.  This is a step-by-step guide on how to move your WordPress website from one host to another with no downtime.

Before we begin I’ll assume you have your two hosting environments ready.  Your original hosting environment (we’ll call that environment A) and your new hosting environment (environment B).

1.  Begin downloading a copy of your site via FTP.  Download all the files to somewhere safe on your computer.

2.  Upload these files…

YASP – Yet Another Stats Plugin

I recently launched a plugin for WordPress, called YASP (Yet Another Stats Plugin).

YASP is pretty simple, as it was more of an experiment for me, allowing me to play with the Dashboard API of WordPress. YASP simply adds a widget to your admin dashboard that shows some useful statistics about your site.

The plugin is a more advanced version of the “At A Glance” widget that ships with WordPress, which shows the number of posts and comments you have.

Here’s a list of the stats that YASP displays:

Number of posts Number of pages Number of x (where x is a custom post type, so if you have ‘Books’ and ‘Movies’ as defined custom post types, YASP will show ‘4 Books’, ‘8 Movies’) Number of pingbacks Number of trackbacks Number of approved comments Number of unapproved comments Number of active plugins Number of active categories (an ‘active’ category is…