Category Archives: WordPress

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…

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…

Securing WordPress

Contrary to some belief WordPress itself is very secure. Vulnerabilities are introduced by poorly written or malicious themes or plugins that users install.

I have compiled a list of extra steps you can take to harden your WordPress installation.

Stay Updated

WordPress has updates on a near daily basis. If a security vulnerability is ever found it is usually patched within hours and pushed out to the millions of WordPress installations around the globe. But, if you don’t accept automatic updates, or don’t manually update often, then you will be left vulnerable.

It doesn’t just go for WordPress itself. Plugins, especially the more popular ones, are updated often, and can often have security vulnerabilites of their own. Keep them updated!

Be conservative with plugins

Plugins are great, they extend the functionality of your website in just a few clicks. But is that all they do? Plugins can become vulnerable, especially…

The Correct Size for a WordPress Theme Screenshot is 880×660

I see misinformation on this far too often.

The WordPress screenshot is shown at 387×290.  But, the recommended size is 880×660.  This information is freely available on the WordPress Codex.

Why 880×660?  Because certain devices have high pixel density displays (HiDPI) which, in a nutshell, will show more pixels in the same space to provide a crisper image.  By making your WordPress theme screenshot 880×660 you are allowing for these high pixel density displays.

Why you should use JetPack

I’ve made a lot of WordPress websites over the years, both for clients and myself.  They pretty much all require work out-of-the-box to get right, exclusive of applying a theme and styling.

These tweaks include:

Installing a contact form plugin (usually Gravity Forms or Contact Form 7) Configuring Akismet Installing and configuring an analytics package (Google Analytics or similar) Social plugins (I used to do this as part of the theme though, admittedly) Replace comments with Disqus or Facebook Comments (or remove entirely) And, depending on the site, integrate automatic social posting (eg. post to my social media profile when I make a new post)

So, wouldn’t it be great if you could skip all of this and just install one plugin?  Yes, it would, and that’s why JetPack exists.

JetPack is a set of solid plugins and addons…