WHMCS services
WHMCS Theme Customization
I customize WHMCS themes for hosting companies and service businesses: client area, order forms, home page, emails and PDF invoices. All changes live in a child or custom template folder, never in core files, so your branding survives upgrades, and every changed page is checked on a phone.
Free scoping call of about 30 minutes · written quote within one business day · two weeks of support after delivery
By Shahid Malla, AI agent and AI chat developer, full-stack developer · Updated
Which parts of the WHMCS client area can be restyled?
Nearly every customer-facing screen can be restyled, because each one is rendered by a Smarty template file in the theme folder. The table lists the parts people ask about most.
| Part | Where it lives | What I usually change |
|---|---|---|
| Header and menu | header.tpl and navbar hooks | Logo, menu items and order, login and cart links |
| Home page | homepage.tpl | Hero area, product tiles, domain search position |
| Footer | footer.tpl | Links, legal text, scripts and tracking |
| Order forms | templates/orderforms/ | Product list layout, option fields, checkout steps |
| Client dashboard | clientareahome.tpl | Which panels show and in what order |
| Invoices | viewinvoice.tpl | On-screen layout and the position of the pay button |
| Login and registration | login.tpl, clientregister.tpl | Field order, wording and extra help text |
| Support pages | supportticketslist.tpl, knowledgebase.tpl | Layout, search box position, ticket list columns |
| Emails | Email Templates in the admin area | HTML, plain text, logo and merge fields |
| PDF invoice | A separate PDF layout, not the on-screen invoice template | Logo, company details, tax lines and footer |
How is a WHMCS theme built?
A WHMCS theme is a folder inside templates/ holding Smarty .tpl files plus the CSS, JavaScript and images they load. Order forms are separate templates under templates/orderforms/, so the cart and the client area can be styled independently.
Smarty is a PHP template language. A file mixes HTML with tags such as {$variable}, {if} and {foreach}, and WHMCS supplies the variables for each page. You pick the active theme in the admin general settings and an order form per product group. Because the logic is separate from the layout, I can move, hide or restyle a section without touching how WHMCS processes the data behind it. That is also why design changes rarely threaten billing.
Why do my changes go in a child theme and never in core files?
Changes go in a child or custom theme folder because a WHMCS upgrade overwrites the default theme's files, and any edit made to them disappears. A child folder is not touched by the upgrade.
A child theme holds only the files I have changed. For every other page, WHMCS falls back to the parent theme, which keeps the child small and easy to review. For the default Twenty-One theme, the child folder declares its parent in a small theme.yaml file. Where I can, I avoid editing templates at all. I use the ClientAreaHeadOutput and ClientAreaFooterOutput hooks to add CSS and JavaScript, and a file in lang/overrides/ to reword text. Each of those survives upgrades with no template copy to maintain. The trade-off is that a child theme still inherits parent updates, so I retest after each WHMCS release.
Can you customize a commercial theme I already own?
Yes, provided you hold a license for it and the vendor permits changes. I work within the vendor's own override method, which is usually a custom folder, a settings panel or a custom stylesheet.
I do not edit encoded vendor files, and I do not work on pirated copies of any theme. If a theme encodes parts of its code, I can only change what the vendor exposes. Before I start, I record the theme version and list the files I change, so a vendor update can be compared with my work instead of overwriting it blindly. If you do not own a theme yet, note that I am the founder of WHMCSPilot.com, which sells premium themes. You are under no obligation to buy from it, and custom work on the default theme is a legitimate alternative.
How do you check mobile, accessibility and speed?
I test every changed page at phone, tablet and desktop widths, with a keyboard and with a contrast checker, and I time how the page loads. Order forms get the most attention because a broken cart loses sales directly.
- Mobile: I test at narrow widths and on a real phone, including tapping the checkout buttons, filling the forms and paying.
- Accessibility: I check text and button contrast, visible focus outlines, form labels and a keyboard-only run through the order flow. I work toward WCAG AA guidelines, but I do not certify compliance.
- Speed: Smarty compiles each template once and stores the result in
templates_c. The first view after a change is slower, and the folder must stay writable. I also keep heavy scripts and large images out of the page.
If the client area is slow but the theme is light, the cause is usually the server or the database, not the template. I check PHP and database settings before blaming the design, and the troubleshooting guide covers that kind of check.
How do email templates and PDF invoices fit in?
Email templates are edited in the WHMCS admin area, while PDF invoices use a separate layout. Both should carry the same brand as the client area so customers see one consistent company.
Email templates use Smarty merge fields such as the client name and invoice number. I restyle the shared header and footer, then open every changed template with test data to catch broken fields. I also check the plain-text version and the look in the major mail clients. For the PDF invoice, I use the override method your WHMCS release supports instead of editing core files. I match logo size, company details and tax lines, then test long item names, several currencies and right-to-left or non-Latin text, since the PDF engine needs fonts that contain the characters.
What is outside theme work?
I will not edit WHMCS core files or default theme files, install pirated themes, or promise a particular conversion rate or search ranking from a design change. I do not certify accessibility compliance, and I do not design brand identities from scratch. Theme work also stops at the template layer. If a feature needs new behavior, such as an extra page backed by its own data, that becomes a custom module and is quoted separately. For a fresh system that needs both configuration and styling, see WHMCS development.
Who this is for
- Hosting companies whose client area still looks like the default install
- Businesses with a brand guide or Figma design that WHMCS needs to match
- Owners with a commercial theme who need changes the vendor does not offer
- Teams whose order form loses customers on mobile
What is included
- Child or custom theme folder set up so core theme files are untouched
- Header, footer and home page layout work in Smarty .tpl files
- Order form template changes: product lists, configuration options and checkout
- Client area pages restyled: dashboard, services, invoices and tickets
- Email templates and PDF invoice layout matched to your brand
- Mobile, keyboard and color contrast checks on every changed page
- A list of every changed file, so future upgrades can be compared against it
How the work runs
-
1
Collect the design
I work from your brand colors, fonts, logo files and any Figma or PDF design. If you have none, I propose a simple direction on the scoping call and you approve it before I code.
-
2
Set up the child theme
I create a child or custom theme folder in a staging copy of WHMCS and select it there. The default theme files remain untouched, so a WHMCS update cannot erase the work.
-
3
Build page by page
I start with header, footer and home page, then order forms, then the client area, checking each page at phone, tablet and desktop widths before moving on.
-
4
Check speed and access
I test with keyboard-only navigation, a contrast checker and a real phone. I also confirm the compiled template cache is rebuilding cleanly.
-
5
Deploy and document
On your approval I copy the theme to production, clear the template cache and hand over a list of changed files with notes for the next upgrade.
Guides on this topic
All guides →-
WHMCS Theme Structure: Folders, Child Themes and Order Forms
How a WHMCS theme and an order form template are laid out, how theme.yaml and child themes work, which files and variables matter, what survives an update and how to test before going live.
-
WHMCS Google Tag Manager and GA4: Hook File, Purchase Event, Consent
Google Tag Manager and GA4 in WHMCS without template edits: the output hooks, a purchase event built from the order, consent mode, keeping staff and personal data out, and testing with Tag Assistant.
-
WHMCS Live Chat Integration: Options Compared and Hook Setup
Every way to get live chat into WHMCS compared on the same criteria, then the upgrade-safe hook setup: passing the signed-in client with a server-side signature and turning finished chats into tickets.
-
WHMCS Invoice Template Customization: Files, Logo, PDF, Settings
The WHMCS invoice template checked against the official docs: viewinvoice.tpl and invoicepdf.tpl, the logo, Pay To Text, child themes, numbering, proforma invoices, tax IDs, custom fields and testing.
Frequently asked questions
Can you customize a commercial WHMCS theme I bought?
Yes, if you hold a valid license and the vendor allows modification. I follow the vendor's documented way to override templates and styles, and I keep a record of every change so vendor updates can be reapplied. Where the vendor encodes part of the theme, I can only change what they leave open.
Will my theme survive a WHMCS upgrade?
Mostly yes. Changes in a child or custom theme folder are not overwritten by the upgrade. But a new WHMCS release can change template variables or add new pages, so I recommend a quick retest of the client area and cart after each upgrade. A support plan can include that check.
Can you make the order form match my website?
Yes. I restyle the order form template with your colors, fonts and layout, and adjust the steps so the product choice, options and checkout read clearly on a phone. I can also match the header and footer to your main site so customers do not feel they have left it.
Can you change how PDF invoices look?
Yes, within limits. PDF invoices are produced by a different engine than the on-screen invoice, so I can change the logo, company details, tax lines and footer, but not everything a web page allows. Fonts for scripts such as Urdu or Hindi need to be checked, because a missing font shows empty boxes.
Do you design the look from scratch?
I build from a given design, and I can adapt an existing theme to your brand. I am not a brand designer, so I do not create logos or full identities. If you need new visual design, bring a designer or a Figma file and I will build it into WHMCS faithfully.
Do you sell themes?
I am the founder of WHMCSPilot.com, which sells premium WHMCS modules and themes, so I have a financial interest in that. You are free to choose any theme or none. Custom work on the default Twenty-One theme is a valid route, and I will tell you which option costs less for your case.
Related services
-
WHMCS Migration Service
I move WHMCS to a new server, host or version without losing invoices or billing runs. Database, license, cron...
-
WHMCS Support and Maintenance
Ongoing WHMCS care, hourly or monthly: staged upgrades, PHP changes, cron and backup checks, module updates an...
-
WHMCS Custom Module Development
I build custom WHMCS modules for provisioning, addon, gateway and registrar jobs. Specced in writing, tested i...
Ready to talk about your project?
You deal with me personally from the first message to the handover. Choose the way that suits you; I reply within one business day.