Recently I’ve found myself using Laravel Valet for local PHP development on my Mac. I love how fast and low-maintenance it is. One thing that is a little tricky about Valet is that you can’t really write custom Nginx configs. That means that I couldn’t use my favorite technique of routing missing images to the […]| Mark on WordPress
Today I pushed an update to my redirect and repointing plugin, Page Links To. Tomorrow, this plugin will have been in the WordPress.org Plugin Directory for 13 years (it was the 339th plugin in the WordPress plugin repository; there are now over 75,000!). To celebrate its transition to a teenager, I’ve added some new features […]| Mark on WordPress
Continuing my series about ScoutDocs and the process of building it, this week I’m talking about Build Tools. What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site. Coding in React involves JSX, a bizarre-but-wonderful XML syntax that you dump directly into the middle of your JavaScript code. It feels exquisitely […]| Mark on WordPress
Continuing my series about ScoutDocs and the process of building it, this week I’m talking about React. What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site. After the first iteration of ScoutDocs was built and none of the partners on the project were happy with its experience, it became clear […]| Mark on WordPress
Now that ScoutDocs is in the WordPress plugin repository, I’d like to share some lessons I learned making it. Every project teaches me something — this one taught me a lot. What is ScoutDocs? ScoutDocs is a WordPress plugin that adds simple file-sharing to your WordPress site. You can upload files (which are stored securely […]| Mark on WordPress
New versions of WordPress are released about three times a year, and WordPress itself supports PHP versions all the way back to 5.2.4. What does this mean for you as a plugin developer? Honestly, many plugin developers spend too much time supporting old versions of WordPress and really old versions of PHP. It doesn’t have […]| Mark on WordPress
Now that you know how I deploy WordPress sites and how I configure WordPress environments, what about the maintenance of keeping a WordPress site’s plugins up-to-date? Since I’m using Git, I cannot use WordPress built-in plugin updater on the live site (and I wouldn’t want to — if a plugin update goes wrong, my live […]| Mark on WordPress
Many WordPress hosts will give your site a “staging” environment. You can also use tools like Local by Flywheel, or MAMP Pro to run a local “dev” version of your site. These are great ways of testing code changes, playing with new plugins, or making theme tweaks, without risking breaking your live “production” site. Here […]| Mark on WordPress
A few weeks back, Clifton Griffin asked me a question about deploying WordPress sites: @markjaquith Hey Mark, quick question: Do you still use and recommend Capistrano? — Clifton Griffin 🛒 (@clifgriffin) January 3, 2018 I do not use Capistrano for deployments anymore, for one simple reason: it was massive overkill for most of the sites […]| Mark on WordPress
One of my Covered Web Services clients recently came to me with a problem: Yoast SEO sitemaps were broken on their largest, highest-traffic WordPress site. Yoast SEO breaks your sitemap up into chunks. On this site, the individual chunks were loading, but the sitemap index (its “table of contents”) would not load, and was giving […]| Mark on WordPress
As a seasoned WordPress developer, I am frequently asked what WordPress web hosts I recommend. There are so many solid choices now! The WordPress ecosystem is truly a bounty of choice in 2016. I could write an exhaustive comparison of all of the options, but these are called “exhaustive comparisons” for a reason. Let’s skip […]| Mark on WordPress
Pantheon has long been hosting Drupal sites, and their entry into the WordPress hosting marketplace is quite welcome. For the most part, hosting WordPress sites on Pantheon is a dream for developers. Their command line tools and git-based development deployments, and automatic dev, test, live environments (with the ability to have multiple dev environments on some […]| Mark on WordPress
WordPress is, by default, completely dynamic. On every page load, a bunch of “work” happens. Cookies are read. A database is queried. Content is transformed. All of this makes WordPress very powerful and flexible. But for sites that get a lot of traffic and mostly just need to crank out the same pages for everyone, […]| Mark on WordPress
People ask me a lot of questions. About WordPress and web development for sure, but also about other topics. I’ve decided to try a little experiment: a public way to ask me questions. Zach Holman from GitHub had the idea to use a GitHub issue tracker for this very purpose, and I think it looks […]| Mark on WordPress
template_redirect is a popular WordPress hook, for good reason. When it runs, WordPress has made its main query. All objects have been instantiated, but no output has been sent to the browser. It i…| Mark on WordPress
WordPress has had support for “Contributor” users since version 1.3 (an unreleased development version in late 2004 that turned into version 1.5). Contributors could save drafts, but no…| Mark on WordPress