Three reasons why WordPress is hard:

  1. Lack of GUIDs. Posts, Users, Terms and Comments each have their own auto-incremented IDs, meaning a given ID isn’t unique within the system.
  2. Stores PHP-serialized data in the database.
  3. Uses absolute paths for resources, instead of relative, which can be located in PHP-serialized data.

It seems every advanced abstraction on top of WordPress ultimately spends 90% of its time finding a solution for these problems.

Hand Built is Daniel Bachhuber, an effective developer with technology leadership you can trust.

How can I help?

Hit me at [email protected] with a short note about what you'd like to do.

My roots are WordPress and publishing, and I love pretty much everything related to web development (architecture, performance, security, etc.). When not working with clients, I also maintain WP-CLI (WordPress' command line interface) and other open source projects.