Stephen Harris
Stephen is a Mathematician, Christian & WordPress developer all rolled into one, oddly human shape. He's the author of the event management plug-in Event Organiser.
Tutorials
  • Code
    Accessibility, Part 4: OperableAccessibility
    198 shares
    Broadly speaking this is the principle that your website must be able to be safely navigated for all users. This includes the guideline that your entire website should be accessible by using the keyboard alone. Furthermore, the way your website responds to user input (by keyboard or otherwise) should be predictable, clear and safe. Read More…
  • Code
    Accessibility, Part 3: ARIAAccessibility
    215 shares
    WAI-ARIA is a W3C protocol which improves your site's interaction with assistive technologies. In this part we look at how to implement it into your theme.Read More…
  • Code
    Accessibility, Part 2: PerceivableAccessibility
    214 shares
    This principle states that all content must be in a format (or available on demand in a format) which can be readily perceived by the user. Said another way, your websites should be designed such that anyone can 'read' the content, regardless of any disability they may have.Read More…
  • Code
    Accessibility, Part 1: IntroductionAccessibility
    272 shares
    In this series we take a look at Web Content Accessibility Guidelines and what practical steps theme developers can take to make their theme more accessible.Read More…
  • Code
    Heartbeat API: Using Heartbeat in a PluginHeartbeat api
    2 shares
    In this tutorial we're going to create a simple plugin which uses the Heartbeat API. Our plugin will alert logged in users, via a growl-like notification, whenever another user logs in or out of the site.Read More…
  • Code
    The Heartbeat API: Changing the PulseHeartbeat api
    7 shares
    In the first part of this series we looked at the basics of the Heartbeat API, and how it can be implemented in a plugin. In this tutorial we'll be looking at how you can change the "pulse" of the Heartbeat. By default the WordPress heart beats once every 15 seconds. You can lower that rate to anything down to one beat every minute. Alternatively you can temporarily increase the rate to one beat every 5 seconds – but only temporarily for two and half minutes before it is reset to the the 'standard' beat: "4 BPM".Read More…
  • Code
    The Heartbeat API: Getting StartedHeartbeat api
    9 shares
    With 3.6, aka "Oscar", just released, lets take a look at some of the new features that are available to developers. In particular, in this series I'll be looking at the new heartbeat API, and demonstrating how you can make use of it in your plugins and themes.Read More…
  • Code
    Quick Tip: Add Shortlinks to Custom Post TypesAdd shortlinks to custom post types
    5 shares
    If you use any form of social media, and in particular Twitter, then you have almost certainly come across 'shortlinks' – shortened URLs which act as a label, pointing to a particular page but disguising its lengthier URL. They've been around for over a decade now, but their use really took off with URL shortening services which provided click-through statistics, and character limits on tweets.Read More…
  • Code
    Custom Database Tables: Importing DataCustomdbtables part6
    5 shares
    In the last tutorial we looked at exporting data from a custom table. Of course this is only half the story - we obviously need to provide a way of importing that data. Naturally, WordPress doesn't handle this - so once more we need to roll our own.Read More…
  • Code
    Custom Database Tables: Exporting DataCustomdbtables part5
    2 shares
    As mentioned in the very first article of this series one of the major problems with a custom database tables is the fact that they are not handled by existing import & export handlers. This article aims to address that problem – but it should be noted that currently there is no completely satisfactory solution.Read More…
  • Code
    Custom Database Tables: Maintaining the DatabaseCustomdbtables part4
    6 shares
    Over the lifetime of your custom table you will probably find that you need to make changes to what it stores, or how it stores it. This may be in response to a need to store more (or less) data. It may be that the initial design of your database wasn’t intended to deal (efficiently) with what your user-base is now demanding. Either way, we need to know how to adapt our table to meet our new needs. This is what we’ll be looking at in this tutorial, and we’ll primarily focused on the function dbDelta() that we first met in part one.Read More…
  • Code
    Custom Database Tables: Creating an APICustomdbtables part3
    10 shares
    In the first part of this series we looked at the disadvantages of using a custom table. One of the major ones is the lack of an API: so in this article we'll look at how to create one. The API acts a layer between handling data in your plug-in and the actual interaction with the database table – and is primarily intended to ensure such interactions are safe and to provide a ‘human friendly’ wrapper for your table. As such we’ll require wrapper functions for inserting, updating, deleting and querying data.Read More…