Navigation of Custom Post Type Archives in WordPress

WordPress changed when it introduced Custom Post Types – suddenly the possibilities were endless.  Wordpress had become the content management system we all were hoping it would.

But for one problem.  It was and still really isn’t clear how to include posts of  custom post types in your website navigation.  This article outlines how I do it.

Create a Custom Post Type

First I create a custom post type – let’s use the ubiquitous ‘movie’:

Customize the JPEG Image Compression in WordPress

When you upload an JPEG image to WordPress, it compresses that image to improve performance when the site is being downloaded.  The default level of compression is 10% – that is to say the filesize is reduced to 90% of the original.

If your site and it’s message depends upon it’s imagery, or your target audience is sure to have a fast connection, you may feel that this level of image compression is too high.  Similarly, if your website’s imagery is not critical to the it’s purpose, you might like to increase the compression to maximise website performance.

AJAX in WordPress: A template

To implement AJAX in wordpress themes, use the following template:


var data = array();
data[‘action’] = ‘FUNCTION_NAME’;
new Request.HTML({
url: ‘/wp-admin/admin-ajax.php’,
update: $(‘results’)


add_action(‘wp_ajax_FUNCTION_NAME’, ‘FUNCTION_NAME’);
add_action(‘wp_ajax_nopriv_FUNCTION_NAME’, ‘FUNCTION_NAME’);

function FUNCTION_NAME() {


Improved branding for has a new logo.  It’s been a long time coming, the previous logo was designed 6 years ago and lacked simplicity and a strong metaphor.

The new logo employs all caps and a bold typeface to present a strong presence to support a somewhat awkward name.  A complete re-brand was considered but decided against at this time.  The target symbol in place of the ‘dot’ in ‘dot com’ represents the marketing-driven approach taken by to web design.  Every detail in Iain’s designwork is customer-focused and can be justified in terms of ROI. moves to new offices has recently moved into new offices, shared with the designers of o street and BERG.  Previously a launderette and a general store before that, the new space has been completely renovated to high standard with a contemporary “designer” feel that is already having a massively positive impact on Iain’s creativity and productivity.

SQL required to move a WordPress Site to a new domain

To move a wordpress site from one domain to another, you need to execute the following SQL scripts on the database:
UPDATE wp_options SET option_value = replace(option_value, '', '') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, '','');

UPDATE wp_posts SET post_content = replace(post_content, '', '');

This works as of WordPress 2.8.

Web Marketing – A Brief Glossary

There are increasingly a range of acronyms being thrown around in web marketing that sometimes slip out when interacting with clients. Here’s a brief overview of some of the more common e-marketing acronyms to ease the conversation.

  • SEM
    Search Engine Marketing

    SEM is a broad term covering the range of activities you might engage in to improve the extent to which you generate revenue via search engines

UK Google Market Share 2008

Following our post last year on Google UK’s market share in 2007, here are some figures providing an indication of Google’s Market share in the UK in 2008. Hitwise are providing the numbers again, and in a relatively short sampling period during March 2008, they found Google to be holding a market share 87.5%, 10 percentage points greater than the same figures for 2007. They found 73.7% to be using, and 13.8% Clearly Yahoo, Microsoft and Ask among others have therefore lost ground to their primary competitor.

UK Google Market Share 2008

MooTools’ Garbage Collection and IE’s ‘Stop this script running?’ error

I wrote a post before the weekend about some performance issues with MooTools, DHTML and AJAX, but having found the solution to a related problem this morning, I wanted to post a followup.

I’ve been working with a large, dynamically generated and AJAX populated table that features sorting, filtering and row highlighting, and was finding that my table took a long time to render, and was also very slow to close – that is, when I tried to close the window or refresh the page, there would be a delay when the browser would first hang for a few seconds. IE often (but not always) popped up the error/prompt Stop this script running?, and Firefox less often threw it’s Unresponsive Script warning.

MooTools, AJAX, DHTML and Performance

I first delved into javascript frameworks with Prototype, but I quickly realised that the combination, even in Protocoluous or Protopackt form, was never going to work – it was just too slow.

I moved to MooTools, and for a while was pretty happy – load times were quicker, effects smoother.

But having recently tried to build sorting and filtering functionality into an HTML table of 200+ rows, I’ve been forced to take a closer look at how different browsers execute javascript, and at where the bottlenecks are. Here I’m going to promote a few best practices, largely via Julien LeComte at Yahoo.

"His work is constantly client focused"

Kevin McDonagh
Software Developer JP Morgan Chase

Think we may be able to help you? Why not start a conversation - chances are, you'll go away with some new ideas and knowledge.