DEV Community

Cover image for NeoDark Pro: adding Freemius licensing to a WordPress theme without touching the original codebase
Andrew Armstrong
Andrew Armstrong

Posted on

NeoDark Pro: adding Freemius licensing to a WordPress theme without touching the original codebase

Hi DEV! I recently shipped NeoDark Pro, the premium version of NeoDark (a free dark-mode WordPress theme for tech guides and reviews), and the more interesting part of that launch wasn't the theme itself — it was adding proper license-key licensing to it without touching the original codebase or the free theme at all.

The setup

NeoDark Pro adds a homepage hero slider, dedicated review content blocks (Quick Facts, Pros & Cons, Comparison Tables, Verdict Boxes), a mega menu, full-width landing page templates, and a built-in download counter on top of everything the free theme already does. It had been selling as a plain WooCommerce downloadable product — pay, get a zip, done. Which meant: no license enforcement, no update delivery, and the raw zip could be shared indefinitely with nothing checking whether the person installing it had actually paid for it.

Why not just bolt it onto the existing package

The free NeoDark theme is in the WordPress.org Theme Directory review queue, and the Pro package was already a sold, working product. I didn't want to risk either of those by editing in place. So instead of modifying the live Pro codebase, I built a fully isolated copy — same theme, plus the Freemius PHP SDK dropped into vendor/freemius/, plus the SDK's init snippet added to functions.php, plus the readme.txt format Freemius expects. Nothing about the original free theme or the previously-sold package changed at all; the licensed build is a separate artifact that happens to start from the same source.

What Freemius actually adds

Freemius works as a "merchant of record" — it handles the checkout, generates a license key per purchase, and its SDK checks that key against the activating site before the premium functionality unlocks. Once the licensed build was deployed and the plan released, I switched techygeekshome.info's own Buy button from a plain WooCommerce download link to the Freemius checkout URL, so every real sale now goes through it and issues a license key the SDK verifies. It's not bulletproof — a determined person can still strip license checks out of a theme, same as any WordPress product — but it raises the bar considerably above "here's a zip, enjoy."

Result

Sandbox checkout tested clean, the plan is live and purchasable at £39 one-time (lifetime updates), and the split between "free theme in WP.org review" and "licensed Pro build sold via Freemius" means neither one can break the other going forward.

Happy to go deeper on the SDK integration, the isolated-build approach, or the Freemius setup specifically if anyone's tackling something similar.

Links

NeoDark Pro: https://techygeekshome.info/
Free version (NeoDark): currently in WordPress.org Theme Directory review

Top comments (0)