Tom McFarlin
Tom is a self-employed developer who loves writing, building, and sharing WordPress-based projects. He runs Pressware where he provides WordPress goods and services. You can follow him on Twitter.
Courses
  • Web Design

    The WordPress Theme Customizer

    1.5 hours
  • Code

    Design Patterns in WordPress

    1.6 hours
  • Code

    Working With Meta Boxes in WordPress

    1.5 hours
  • Code

    Using the WordPress Settings API

    2.2 hours
  • Code

    WordPress Widgets: Front To Back

    2 hours
Tutorials
  • Code
    The Beginner’s Guide to WordPress TaxonomiesTaxonomies
    263 shares
    In this series, we're going to be taking a beginner's look at taxonomies - from the concept to how they work in WordPress and from how we can use them in themes and plugins to implementing them in our own work.Read More…
  • Code
    Advantages and Disadvantages of WordPress FrameworksWordpress frameworks
    329 shares
    We're going to be looking at the advantages and disadvantages of selecting a framework when working with WordPress to help make better decisions as it relates to building sites, applications, and other projects on top of WordPress.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: RefactoringMaintainable meta boxes
    204 shares
    Throughout this series, we've been focusing on building maintainable WordPress meta boxes. By that, I mean that we've been working to create a WordPress plugin that's well-organized, follows WordPress coding standards, and that can be easily adapted and maintained as the project moves forward over time.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: Save and RetrieveMaintainable meta boxes
    241 shares
    In this article, we're going to continue our work by saving the information to the database, retrieving the information, and displaying it on the front-end. Along the way, we'll also look at some of the built-in WordPress API functions designed to help make this a bit easier for us as well as some tips for double-checking our work in the database to verify our information is being saved exactly as we expect.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: Verify and SanitizeMaintainable meta boxes 1
    185 shares
    Up to this point, we've put together the basic file organization of the plugin as well as the front-end, but we haven't actually implemented functionality for saving information to the database. And if you can't save information, then the plugin is of little benefit to anyone. In this post, we're going to hop back into the server-side code and implement the functionality that will verify the user has permission to save and that the data is properly sanitized.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: Finish The Front-EndMaintainable meta boxes 1
    172 shares
    In this article, we're going to continue with introducing the rest of the user interface, and then we're going to move onto actually writing code responsible for verifying the user input and associating it with the given post.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: The Front-EndMaintainable meta boxes 1
    267 shares
    This article will continue building on what we've done thus far. We're going to be introducing content in each of the tabs, implementing functionality that allows us to toggle the content, and we'll begin introducing the fields for content on the first tab.Read More…
  • Code
    Creating Maintainable WordPress Meta Boxes: The LayoutMaintainable meta boxes 1
    237 shares
    In the first post, we looked at the initial directory structure and setup the basic code required to get a plugin running in WordPress. In this post, we're going to continue planning and building our plugin. We'll also be talking about the decisions that we're making when it comes to separating parts of our code and how it factors into maintainability.Read More…
  • Code
    Creating Maintainable WordPress Meta BoxesMaintainable meta boxes
    294 shares
    Throughout this series, we're going to take at one way that we can write maintainable code in WordPress through an example plugin that introduces meta boxes, various options, and tabbed navigation in the WordPress dashboard.Read More…
  • Code
    Saving Images with the WordPress Media UploaderWordpress media uploader
    242 shares
    In this series, we're taking a look at how to implement the WordPress Media Uploader in an actual plugin. The idea behind this series and its associated code is to give a clear understanding of how it works, how we can use it in the future, and how we can incorporate it into our work. In this article, we're going to pick up where we left off and finish implementing the rest of this plugin. Note that I'm assuming you've read the previous two posts and understand the source code that we've covered thus far.Read More…
  • Code
    Adding and Removing Images with the WordPress Media UploaderWordpress media uploader
    259 shares
    In the previous post in this series, we started working with the latest iteration of the WordPress Media Uploader in order to get a clearer understanding of how to begin to incorporate it into our projects. Based on the feedback from the first article, we're going to look at expanding the scope of this series a little bit more. In this article, we're going to look at practically applying the functionality that we introduced in the last article. Then, in a follow up article (or perhaps more than one follow-up article) we'll look at some more of the finer points of how the Media Uploader works.Read More…
  • Code
    Getting Started with the WordPress Media UploaderWordpress media uploader
    185 shares
    When WordPress 3.5 was released, one of the most significant changes that was introduced was to that of the Media Uploader. Perhaps a more accurate description of the change would be to refer to at as an addition of a new Media Uploader. Since the new Media Library is what’s becoming standard in WordPress, and since there’s not a lot of documentation available for how to use it, we’re going to take a look at the functionality over the next few articles to understand how the new Media Library is constructed, how we can implement it in our own work, and how we can take advantage of the various functionality that’s already included in WordPress core.Read More…