I’ve been writing HTML/CSS/JS/PHP for a few years now. I’m comfortable writing a static website, or using a framework like Vue or React. However, I find wordpress to be absolutely oppressive. When I learned to use wordpress I was taught by a friend who had been developing in a wordpress shop for a decade. Their process was to use a custom boilerplate theme and, for each client, extend that boilerplate and basically write a new custom theme from scratch. They would use ACF for managing content and ignore most of the rest of the ecosystem.
Fast forward a couple years. Now I havent touched WordPress for a while and my new employer asks me to do a website. They tell me they want it to be in WordPress and that they just want me to adapt a theme to fit the website. They hand me a pre-purchased theme which I discover does not fit the styling of the site at all. The color-palette was wrong, the layout was completely different, and I struggled to find any of the settings to change it. “Why is this here? how do I change this padding? how do I change the color? Do I \*have\* to use Elementor with this theme?” By the time I had finished I was convinced that the site would have taken less time if I had just written a static website and converted it over into a wordpress theme.
So, while I’m told we dont work in WordPress often, I’m also told we have another WP project on the horizon. I’m debating whether I need to tell my boss to not purchase a theme and let me just write a custom theme (likely starting from something like Understrap) , or whether I need to embrace themes. Are theming options written consistently enough that I will be able to rapidly adapt them to a different site once I understand them? Or will I be doomed to starting over with every theme?
How do other developers work most effectively with wordpress?
[ad_2]
Was it a theme purchased from Themeforest by any chance?
Frankly popular pre made themes (divi etc) very often are so full of shit because they have to accommodate everyone and every template they support. It’s often a lot of unnecessary code that is broken down into partials within partial. You can easily get lost..
Page builders are ugly bloated piles of crap because of the above..
The simplest way, is to have a page design, and for the most part use ACF to create flexible content blocks that match the design with as few as possible fields and repeaters…
Aka.. Make a text field block and image block a columns block. You can use you knowledge of static HTML to make static partial files with php fields inside matching the ACF fields, it’s easy, it’s essentially a page builder but without the bloat.
This method is starting to change and lose traction because WordPress basically made their own version of this method called Gutenberg. The problem is, to get with the times they didn’t make these in PHP they did it in React, so developing new blocks can be more difficult.
There are some quite useful plugins like
that make page building pretty easy.
My personal preference is blank template that I build out with ACF but atm I’m trying to learn React to replicate this in Gutenberg
If you have the opportunity, and you know how, use a boilerplate theme (I used to use underscores, not sure what industry standard is now) and build it yourself, you will save yourself a ton of headaches.
If I don’t have time for the above, or a budget, then I tend to use a page builder, like Elementor, or Oxygen, as its quicker (tho more code bloat) and you can still customize as you need.