
I decided to give Claude.AI a shot at creating a new WordPress theme for my site. The promise of AI-assisted development is tempting, so I gave it a go to see what it could do.
I started by explaining what I wanted:
“I want to redesign my blog. Something modern, minimal, colorful, professional and techy. Have any ideas for what my site could look like?”
At first, I was genuinely impressed. Claude created a design that felt good. From there, it built out all the WordPress theme files. We began iterating together, and every time I asked about supporting a new feature, it quickly added what I needed. When it was all done, I had a full WordPress theme that seemed amazing. This was all accomplished with the free version, which made it even more impressive.
The sales pitch Ai gave me was huge.
Efficient animations (GPU accelerated)
CSS-only dropdowns (no JS required for functionality)
Accessibility (WCAG 2.1 AA)
Mobile-First Design
CSS-first approach
All code is production-ready
Fully translatable (i18n ready)
No external dependencies
Optimized for performance
SEO friendly
Security best practices followed
Escaping and sanitization throughout
WordPress Coding Standards compliant
The theme worked right out of the gate. Off to a great start.
Then I started noticing issues. First, the single post template was broken. I opened up Visual Studio Code and fixed that with GitHub Copilot. Then I started looking around more and found more and more problems.
The code wasn’t bad, but it wasn’t great either. JavaScript was doing a lot of work that could have been handled in CSS, and there was significant duplication in both JS and CSS.
It wasn’t long after viewing the site in my browser that I realized something was wrong. My browser was using an excessive amount of GPU resources. Turns out, many of the modern effects the theme relied on were CSS blur effects, which are extremely browser intensive. All of that had to be refactored.
As I had GitHub Copilot clean things up, things only got worse. I’m not sure if it was Copilot’s terrible job at refactoring, but it continued to write new CSS instead of using existing styles, and it often wrote invalid PHP and didn’t notice until I said something.
I also discovered that Claude had decided to use a CSS trick to load the page superfast, but that caused a lot of content shift. It didn’t really think that one through.
As I tried to clean things up, AI frequently wrote new styles instead of using existing ones, created multiple classes that fought for specificity, or refactored things at different breakpoints that didn’t need refactoring.
AI doesn’t do well with DRY (Don’t Repeat Yourself) coding principles I’ve figured out. Rather, it focuses on the immediate task at hand and just creates new code. Case in point: I asked it to add some fields to WordPress’s customizer, and it did, but it set defaults in three different areas even though only one default is actually needed.
I also had issues where Ai would build out the backend functionality for parts of the site, but never add the UI.
The theme was also supposed to be mobile first, but it wasn’t, and, when I asked AI to re-write the CSS, it’d work really hard and not do much at all. We had many rounds of cleanup to make things mobile first, only to end up with items that still weren’t mobile first. I had to do a lot of this manually.
Eventually, I reached the point where I just started updating things myself. It worked much better, and quicker, than asking AI to make a fix and watching it over-architect a solution.
AI works great at small, targeted tasks, but not at larger tasks where it needs to actually think holistically about the codebase. AI also has a memory issue where it reverts code I write, apparently not understanding why that code exists in the first place. That got annoying REALLY fast. Or, the opposite, where I’d decide that the code AI wrote was bad, and removed it all, and later on it’d decide to add it back in for some reason.
Did AI help me build a WordPress theme faster?
Technically, yes. It did a lot of coding, laying the groundwork and getting things moving forward. But the polish had to be done by hand. There are just so many things that AI doesn’t understand. It’s one thing to look at code and think it’s great, and it’s another to see it in the browser and actually use the site.
In the end, it all worked out. This theme took about a week to put together, and most of that was in random blocks of time when I had time available. It’s still not perfect, but I can always find something to improve. I feel the CSS is overdone in spots, and it’s still not 100% mobile first, but it’s in good shape. I’ve wanted a new design for a while, and I’m happy to have something new.
The takeaway? AI is a powerful tool for getting started and handling some tasks, but it’s not a replacement for human judgment and refinement. At least not yet. I don’t see a point in time where I can trust AI to do a great job like I could trust my co-workers, but it did help get the job done faster.