Hey! The countdown to WordCamp US in Portland is heating up. If you are going to be there, drop me a comment/reply and maybe we can chat. I’ll be spending some time at the Woo booth, so feel free to come grab that swag.
Let’s get into it.
Am I just bad at prompting?
The past few weeks I’ve leveraged AI to tackle a few side projects with varying results of success.
First, I was helping someone migrate a site from a page builder to the WordPress block editor. I spent too much time trying to find an AI-based solution to migrating (creating ‘before/after’ examples of layouts and elements, feeding them to an LLM, and seeing if it could automatically convert page builder content to blocks). In the end, it didn’t end up working and we converted most of it by hand.
Where AI did help, however, was in creating a few custom blocks for modules that aren’t in core WordPress, like a modals and carousels, using the Interactivity API for more efficient load times.
Takeaway? WordPress syntax is not very forgiving. I’ve had AI generate me some janky Tailwind/React components that have been ugly, but they were still functional. Gutenberg markup, on the other hand, does not tolerate mistakes. Meanwhile, custom blocks are more easily achievable.
My second project went much better. My wife is a baker and we’re setting up a Woo store for her business. Her current pain point is calculating and tracking the cost of her recipes. Using Cursor, I set up a custom admin screen in WordPress to manage recipes (a custom post type), ingredients (a taxonomy), and quickly generate pricing suggestions and shopping lists based on how many of each recipe she planned to make.
This was the ideal AI coding scenario. Yes, I had to fight it at first to get it to use proper WordPress components and data storage, but since I already knew how it worked and what I wanted, everything moved faster than before. Once the architecture of the plugin was there, adding small optimizations and features was a breeze. At one point, the code was getting pretty sloppy, so I asked Cursor to refactor the entire source code and make simplified components. To my surprise, it one-shotted this request.
Setting up single-page-app style navigation inside the custom admin screen wasn’t going well, but I just gave it a link to some similar code in Nick Diego’s Block Visibility plugin, and Cursor fixed it instantly. You can explore the recipe plugin here, and let me know if a deep dive video would be of interest.
Takeaway: When you know what you want, understand your tools, and can explain how you would normally accomplish it, AI coding can be fun, with quick progress.
My third project has been a real shit-show so far. I wanted to build my own workout management app, and I decided to go with the dynamite TNTS stack: Typescript + Next.js + Tailwind + Supabase (I’m 90% sure I just made that acronym up).
I’ve jumped between Claude Code and Cursor and, to be honest, neither have impressed me here. I think the biggest issue is that I have a vague idea of the specific features I want, but I don’t have a clear understanding of the architecture or how I would effectively use Next.js to build something this complicated. I haven’t really done the homework or preparation- I thought I could jump straight into vibe coding it (like everyone on Twitter tells me).
Every prompt I submit breaks five features to fix one issue (if that). Entire chunks of UI have disappeared at random moments, and the asynchronous nature of Next.js has continually led to random race conditions and infinite loops that crash the app. Hint: If you see a bunch of ‘setTimeout’ wrappers added for 100ms, run!
Takeaway: I’m still skeptical that “vibe coding” is within reach of the non-technical. Maybe for simple to-do list apps or small workflow improvements, but for novel and complicated ideas, prior knowledge, experience, and planning are still crucial.
Where WordPress and AI are Headed
For a deeper dive on AI, I met up with Matt Medeiros at the WP Minute to dig into the current state of “vibe coding”. Matt’s a highly-technical non-developer who has had a lot more success than me with vibe coding projects and trusting the models.
We talk through a few concerns (including why LLMs create the ugliest Tailwind components imaginable) and where we think the future of AI will go as the costs (and pressure from investors) start to outpace the model improvements.
We also talk about the best platforms for AI, and we both believe that your WordPress site already has the foundation to be a great AI platform for building bespoke apps – you have a server, a database, solid APIs for data management, a decent component system, and two decades of open source history.
Is WordPress in Crisis?
I should also note that we start the conversation talking about Kevin Geary’s recent blog post The WordPress Architecture Crisis: How the Web’s Most Popular CMS Became Its Own Worst Enemy. You should probably read that first, and maybe even check out Matt Medeiros’ response video Is Etch Fixing WordPress? I dive deeper into it in my the podcast above with Matt, but I’ll clarify my thoughts on Kevin’s post here.
I agree with many of Kevin’s individual points (I’ve long argued for fixed design tokens and an overhaul of the templating engine), but I disagree with the larger narrative he presents, that custom theme building is creating “isolated islands” or “walled gardens” that can only be fixed by purchasing his product, Etch. His main argument against Gutenberg is that it “could have created a universal language for WordPress sites” but instead is “forcing users to choose between incompatible theme architectures.”
I completely disagree. WordPress block themes are more interchangeable and interoperable than any previous method of site building on WordPress, from classic themes to page builders. To say otherwise is bonkers. Your post and page content is vastly more interoperable when built with blocks than when built with classic tools like ACF flexible layout fields.
Yes, transferring theme templates from one block theme to another requires you to manually move the files, but they’re still essentially interoperable. Also the individual template files are a small percentage of your overall content when compared to your posts, pages, CPTs, etc. On top of that, the very need to switch themes has reduced significantly now that all themes have access to the same design possibilities. Gone are the days of migrating from Genesis to Flatsome because you needed a new carousel homepage.
He continues that “choosing a theme means you’re now reliant on the theme developer–not WordPress–to keep that architecture up to date”- something that seems to apply to page builders and classic themes significantly more than block themes. So I don’t understand the logic here.
I’ve long said that WordPress’ roadmap undervalues the importance of agency-type developers over DIYers, but that doesn’t mean they’re the only WordPress user we should think about. The real sweet spot for WordPress is the intersection between an agency builder and a non-technical client who wants to manage their own content.
Etch hasn’t launched yet, and I’ve yet to hear of any large-scale websites running it, so at this point, the “fix” is another future abstraction on top of WordPress, but closed-source and commercial. That’s great and I’m looking forward to what his team is cooking up (truly, I think they’re making something very powerful), but that’s just playing a different game than core is. I think it’s a strong enough product that it doesn’t need to keep relying on the predictably-timed marketing tactic of “complain loudly about an open source project then end with a sales pitch”.
New videos
New Tutorial: Adding custom fields to the WooCommerce Checkout Block just got easier with PHP-based field registration and conditional logic. I take you through it in this tutorial.
New Podcast: Last month I sat down with Mike McAlister to talk about his new free courses for WordPress block and theme development.
Links from around the web
The WordPress AI team has outlined a solid technical roadmap on the path to WordPress 7.0. I’m a believer that you have to have a specific goal in mind to get far, even if plans change along the way. I think we’ll see big stuff from this team, wherever they land.
The team at Gravatar built a tool for fetching avatars of users in your Supabase databse.
I’ll be speaking at WordCamp Canada later this year. Grab those tickets if you can.
I didn’t listen to the 6 hour DHH + Lex Fridman interview, but I did listen to the segment on open source. I’m a big fan of DHH’s approach, and I think his take on the open source gift exchange should be studied by the armchair critics of WordPress.
Product Manager James Kemp wants to know what you’d improve about WooCommerce. A similar question from Rodolfo Melogli.
Amber Hinds and team at Equalize Digital combined forces with 10up and our team at WooCommerce to clean up frontend accessibility for all Woo stores. This is what attracted me to working at Woo – one small change can impact millions of stores and millions upon millions of customers.
Mike McAlister dropped a killer new idea for the block editor- quickly apply styles to other blocks with similar positioning on the page. Kevin Geary sees it as a crutch for the lack of components in Gutenberg (I don’t disagree), but I see it as the tip of a potential new UI considering in WordPress Core – “intelligent autocomplete”. Just like Copilot and Gemini now have intelligent autocomplete in VS Code and Gmail, I’d love autocomplete for WordPress. Drop in an image and it “suggests” some alternative text. Build a card design and it “suggests” three duplicates in the remaining columns. And so on. The potentials for AI in WordPress are pretty amazing, but they require a clear vision and coherent roadmap, beyond what we’ve seen in Gutenberg traditionally.
WordPress Studio continues it’s slow march to becoming a compelling local development tool for WordPress.
This WordPress-focused interview with John Gruber was a real treat.
Is leaning on AI this much even good for us? Are you thinking about long-term professional growth or just short-term productivity boosts? Great post from Tom Cafferkey.
If anyone can make a decent screen adaptation of Neuromancer, I feel like Apple (or else HBO) has the best chance.
That’s all. Hope to see you at WordCamp US (or Canada) this year!
Leave a Reply