Push-to-Deploy with Sail and GitHub Actions

Sail supports deploying WordPress out of the box, without the need of Git or any other source code management tools. This is great for solo-projects, or simple applications with very small teams. With larger teams and more complex WordPress applications, you’ll want a more robust workflow, including pull requests, code reviews, etc. GitHub Actions is one of the best CI/CD tools on the...

Understanding _n_noop()

_n_noop() is one of the many functions overlooked by WordPress developers, probably because of it’s somewhat cryptic name, or perhaps due to lack of a good use case. Let’s see what the docs say:
Register plural strings in POT file, but don’t translate them.
Exactly. No, seriously, that’s what it does.

7 Tips for Better WordPress Theme Development

I gave this talk at WordCamp Norway 2013. It covers several tips and tricks that will make you a better theme developer.

You can follow the slides and the notes/transcript below. If you have any questions or comments, feel free to ping me here or on Twitter, I’m always happy to help :)

Understanding get_template_part

If you’re creating WordPress themes you surely came across the get_template_part function at one point or another. It’s one of those hidden gems inside of WordPress that don’t get the attention they deserve. Let’s change that. The get_template_part function is essentially a PHP include or require, on steroids: It already knows where your theme is located and it will look...

WordPress Workflow Tips: Using Subversion Externals for Plugins, Themes and Core

I’m pretty sure most of you are familiar with version control, and that it’s best practice to start each new project in version control, and not “add it sometime later.” Version control will help you manage changes to your code, and have revisions which you can easily roll back to. Although my favorite version control software is Git, today we’ll talk about...

The Ultimate Guide to WP_List_Table

Without a doubt, the best WP_List_Table tutorial is in class-wp-list-table.php and the rest of the list table classes in wp-admin/includes. Seriously, you should not go looking any further :)

Installing WordPress with MAMP on Mac OS X

This is an absolute beginners tutorial on how to get yourself a local WordPress development environment set up on your Mac OS X with MAMP. Step by step (and with screenshots,) we’ll go through each part of the process — downloading and installing MAMP, basic MAMP configuration, creating a MySQL user and database, getting WordPress up and running, and in the end I’ll share some...

How To: Add Taxonomies to Your Custom Post Types in WordPress

Custom Post Types are not new to WordPress, they’ve been around since version 3.0 and have really changed the “WordPress as a CMS” game ever since. Custom taxonomies though, have been around even earlier and are used to group your posts and custom post types. This post will give you a short insight on taxonomies in WordPress and show you how to add different taxonomies to...

Generating Easy To Remember Yet Secure Passwords

I had some Twitter conversations about passwords lately, and long and boring discussions with my friends and co-workers. It turns out that no matter how many security articles and books are published about passwords, people tend to follow a very, very insecure method of picking them up and memorizing them. In this post I’ll try to demonstrate a brand new theory (or maybe not so new) of...

Powered by Delicious: Web Design, Coding & HTML5

This is my first “Powered by Delicious” post, but I plan on writing similar posts at least once a month or so, depending how many links I bookmark. Here’s a list of some of my latest delicious bookmarks, with goodies on web design, coding, html5, photoshop, javascript and a bunch of other stuff. The Most 10 Common Mistakes Web Designers Make | Noupe 50+ Top Free Icon Resources...