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.
  • Code
    Custom Database Tables: Creating the TableCustomdbtables part1
    In this series we'll be looking at using custom database tables. We'll cover how to create, maintain and remove the table, as well as how to safely, and efficiently, add, remove and query data. In this first article we look at when custom tables might be appropriate, the pros and cons of using them and how to create the table.Read More…
  • Code
    Two Ways to Develop WordPress Plugins: Functional ProgrammingTwo ways to develop wordpress plugins   part 2   functional progamming
    This part two of a series looking at two different programming styles (sometimes called programming paradigms) that you can use when writing WordPress plug-ins. In part one Tom McFarlin covered object-oriented programming. In this part we'll be looking at functional programming.Read More…
  • Code
    Integrating With WordPress’ UI: Admin PointersIntegratingwithwordpressadminui admin pointers
    This is part 3 of a series of articles looking at how your plugin or theme can best integrate into the WordPress admin user interface. In this part we are going to look at how you can use WordPress' 'admin pointers' in your plugins.Read More…
  • Code
    Integrating With WordPress’ UI: Meta Boxes on Custom PagesIntegratingwithwordpressadminui metaboxes
    This is part 2 of a series looking at how your plugin and theme can provide the best user experience by 'fitting in' with WordPress' native UI. This means more than just looking a part of WordPress (which we covered in part one), but where appropriate, mimicking the same workflow that would (hopefully) be familiar to WordPress users. A part of this, is how you structure pages and present information the end user. An incredibly useful tool from both a UI and developer perspective is the meta box. In this tutorial we look at how you can add meta boxes to your own custom admin page.Read More…
  • Code
    Integrating With WordPress' UI: The BasicsIntegratingwithwordpressadminui
    It’s long been widely accepted that one of the biggest advantages WordPress has over its competitors is its admin user interface. It is, on the whole, very easy and intuitive to use. Furthermore it’s being constantly refined and improved, with the media upload screen now one of the many things under scrutiny. Unfortunately, there is something that the WordPress-UI team have no control over, which consistently undoes all their hard work: plugins and themes. Your plugin’s UI (I shall use the term plugin in this article, but the same applies to your theme's UI) is one of the most important aspects of your plugin. It defines how people interact with it, how easy it is to use, and perhaps even how much they enjoy using it. This is the ultimate aim of your plugin: to make a particular task, or tasks, easier for your end user (in fact this is the seemingly forgotten aim of computers themselves). The UI should be attractive, but ultimately it should be functional. When deciding how to layout your plugin, you need to decide how to make your plugin easy to use - better yet, get feedback - this is essentially what WordPress is doing.Read More…
  • Code
    Quick Tip: Get the Current Screen's HooksCurrent screens hooks
    Wherever possible it's better to use screen-specific hooks rather than more generic init, admin_init, admin_footer etc. (unless you specifically want your callback to run on every screen). In this quick tip we'll look at how you can easily obtain the screen hooks for any particular page.Read More…
  • Code
    Interacting with WordPress' Plug-in & Theme APIInteractingwithwordpressapi
    The WordPress Repository API is the API used to fetch plug-in and theme information for use on your admin pages. For instance it displays the latest plug-ins on the dashboard, allows you to view themes on your theme tab and allows you to search for, and install, plug-ins straight from the repository. In this tutorial we're going to look at how this API works and how it can be used to access information such as your plug-in's rating, how many times it's been downloaded, or even its ReadMe sections. Using this API, for instance, you can host a link on your website that will always point to the latest version of your plug-in or theme.Read More…
  • Code
    Capabilities and NoncesThumb
    In this previous article I looked at helping keep your theme or plug-in secure through appropriate data sanitization and validation. In this article, we'll be looking at another important aspect of WordPress security: capabilities and nonces.Read More…
  • Code
    How to Create a Recent Tweets WidgetPreview
    In this tutorial we'll look at how to create a 'recent tweets' widget. There are a fair number of twitter-related plug-ins in the repository, however I hope that this tutorial will cover some of the important (and generally applicable) methods needed for creating such a plug-in, (whether Twitter based or not).Read More…
  • Code
    Data Sanitization and Validation With WordPressSanitization and validation preview
    Proper security is critical to keeping your site or that of your theme or plug-in users safe. Part of that means appropriate data validation and sanitization. In this article we are going to look at why this is important, what needs to be done, and what functions WordPress provides to help.Read More…
  • Code
    The Rewrite API: Post Types & TaxonomiesPreview
    This is part two of a series looking at WordPress' Rewrite API. In part one we took a whistle stop tour of the basics of WordPress' Rewrite API. In this tutorial we will look at the rewrite settings available to us when registering a post type or taxonomy. While custom post types and taxonomies (unlike the default posts, categories and tags) don't benefit from any Settings -> Permalink interface, setting up rewrites for custom types is still fairly straightforward. We'll also be using the methods introduced in part one, so if you haven't already I recommend you read WordPress' Rewrite API Part One: The Basics.Read More…
  • Code
    The Rewrite API: The BasicsPreview
    This is part one of a two part series looking at WordPress' Rewrite API. In this tutorial we look at how rewrites work and the basic methods available to create custom rewrite rules.Read More…