01
Block themes done right
theme.json as the single source of truth. Templates and template parts in the right places. Patterns registered properly. Style variations for the brand variants you need.
Site Editor works the way Gutenberg intends.
Service Themes
Built to your design, fast and accessible from the start, and ready for WooCommerce and BuddyPress without fighting over styles.
Why custom themes
Page builders bloat the page weight. Premium themes lock you into their patterns. Override CSS fights the original styles. By the time the brand is right and the performance is acceptable, the team has spent more on customization than a proper theme would have cost in the first place.
We build themes from your design tokens, your component library, and your real content. The theme matches the brand on day one, the page weight stays in budget, and editors can extend it through the Site Editor without code changes.
theme.json · live
Block themes are configuration first, code second. Toggle the swatches below. The hero
preview updates instantly. The theme.json snippet under the controls reflects
the actual JSON the editor consumes.
Editor-friendly defaults, design-system-true tokens, accessibility checked. Your designers stay in Figma. Your editors stay in Gutenberg.
See the theme →{
"$schema": "https://schemas.wp.org/trunk/theme.json",
"settings": {
"color": {
"palette": [
{ "slug": "brand", "color": "#1C55E9", "name": "Brand" }
]
},
"layout": { "contentSize": "var(--content-medium)" },
"spacing": { "padding": { "default": "medium" } }
}
} What we build
Block-first, hybrid where it makes sense, classic when WooCommerce and BuddyPress need it. Pixel-parity with your design. Fast, accessible, plugin compatible.
01
theme.json as the single source of truth. Templates and template parts in the right places. Patterns registered properly. Style variations for the brand variants you need.
Site Editor works the way Gutenberg intends.
02
Not every site is ready for full block themes. We build hybrid themes (block templates + classic PHP for the parts that need it) and pure classic themes when WooCommerce, BuddyPress, or LearnDash require it.
Theme architecture matches the product reality.
03
Figma to WordPress with no degradation. Type scale, spacing scale, color tokens, every component. We design in tokens and build in tokens, so light and dark variants ship from the same source.
Brand stays consistent across every page.
04
No render-blocking JavaScript. Critical CSS inlined. Web fonts subsetted and preloaded. Lazy loaded images with proper dimensions. Core Web Vitals pass on launch day.
PageSpeed scores stay above 90.
05
Color contrast ratios verified. Focus states visible on every interactive element. Keyboard navigation works for the entire site. Screen reader labels on every icon-only button.
Accessibility audit passes.
06
Themes shipped tested against the major plugin ecosystems. Cart pages, account pages, member profiles, course pages all match the brand without overrides fighting the plugin styles.
Plugins look native, not bolted on.
3,000+
active installs of BuddyX, our free community theme, on WordPress.org
Built by the same team. WordPress.org rated 4.7 stars.
theme.json
Every block theme we ship uses theme.json as the design token source. Colors, fonts, spacing, fluid type scale. The Site Editor picks them up automatically. CSS overrides become the exception, not the rule.
{
"$schema": "https://schemas.wp.org/trunk/theme.json",
"version": 3,
"settings": {
"appearanceTools": true,
"color": {
"palette": [
{ "slug": "brand", "color": "#1C55E9", "name": "Brand" },
{ "slug": "accent", "color": "#FFAD0D", "name": "Accent" }
]
},
"typography": {
"fontFamilies": [
{
"slug": "inter",
"name": "Inter",
"fontFamily": "'Inter', system-ui, sans-serif"
}
],
"fluid": true,
"fontSizes": [
{ "slug": "small", "size": "0.875rem", "fluid": false },
{ "slug": "medium", "size": "1rem", "fluid": false },
{ "slug": "large", "size": "clamp(1.25rem, 2vw, 1.5rem)" }
]
},
"spacing": {
"spacingScale": { "steps": 8 }
}
},
"styles": {
"color": { "background": "#fff", "text": "#111827" },
"typography": { "fontFamily": "var(--wp--preset--font-family--inter)" }
}
}
What it costs
Aligning an existing theme to your brand and building a block theme with editor controls your team can actually use are the same sentence and very different projects. Here is what moves the number.
What moves the number
Small, well-defined work is usually better handled as an hourly block than scoped as a project, and we will say so rather than inflate it into one.
Rough idea to delivery
How we work
Ongoing work uses one blended team rate that covers analysis, front end, back end and QA, with every hour logged.
Tell us about your projectQuick enquiry
Tell us how many page types you actually have and whether a design exists. Those two answers settle most of the estimate before we speak.
Prefer the full form? Tell us about your project
Common questions
Block theme if the site is content-driven and editors will use the Site Editor. Classic theme if the site is heavily integrated with WooCommerce, BuddyPress, or LearnDash where Full Site Editing is still maturing. Hybrid when you want both. We pick the right architecture in discovery.
Both. We have customized BuddyX, Astra, Kadence, Blocksy, GeneratePress, and many others. We also build from scratch when the brand needs full control. The choice depends on budget, timeline, and how much of the existing theme you actually use.
Yes for block themes and hybrid themes. theme.json drives global styles, templates and patterns are registered, style variations cover your brand variants. Editors can change colors, fonts, and layouts without touching code.
Yes through our retainer. We push WordPress core compatibility, plugin compatibility, and design refinements. Themes ship with a child theme pattern from day one so your overrides survive updates.
Yes. We build to design tokens (colors, type scale, spacing scale) extracted from your Figma file. Components get built one at a time and reviewed against the design before the next one starts. No "close enough" approach.
Every theme gets a fixed price within 48 hours of a free call. Aligning an existing theme to your brand is a contained job; a block theme built from your design with custom patterns and templates is a larger one.
A page builder is quick for a small site edited by one person. A custom block theme is faster, easier to keep consistent, and lets editors change content without breaking the design, which matters once several people edit the site or speed affects sales.
Yes. The new theme is built on a copy of your site with your real content, every URL stays the same or gets a redirect, and titles and structured data are carried across. We compare search performance after launch and fix anything that moved.
Where to go next
“Wbcom Designs was methodical, reliable, innovative, and knowledgeable. They communicated with us every step of the way and delivered on time and on budget.”
“A partner, very trustworthy, very reliable. Gets the job done.”
Rated 4.8 out of 5 across 360+ Upwork jobs since 2010, on our company and founder profiles.See them on Upwork
Our plugin customers rate us 4.8 on Trustpilot (96 reviews).Read them
Need a theme that fits the brand?
Discovery call is free. Fixed-price quote within 48 hours.
Support staff is responsive and knowledgable