Build · Engineering

WordPress plugin development that stays maintainable.

We build and maintain our own plugins, and put them through public review, so we build yours the same way we build our own: core APIs, coding standards, proper versioning and documentation — code that outlives whoever wrote it. That is what our WordPress plugin development work is built to fix.

  • Built on hooks and core APIs, never by editing core files
  • Documented and versioned so any developer can maintain it
  • You own the code outright, with no licence tied to us

The problem

When businesses come to us for WordPress plugin development.

No plugin does quite what you need

You have tried four. Each does roughly seventy percent of the job, none does the last thirty, and you are maintaining workarounds around all of them.

Five plugins faking one feature

A form plugin, an automation plugin, a webhook plugin and two connectors, chained together to do something a single purpose-built plugin would do in a tenth of the weight.

The custom code lives in the theme

Business logic sitting in functions.php means it dies the day you redesign. Functionality belongs in a plugin so it survives the theme it was born under.

The developer who built it vanished

A custom plugin nobody can safely update, with no documentation, no version control and a fatal error waiting behind the next PHP upgrade.

What we build

What our WordPress plugin development work covers.

Discuss your plugin ↗︎

Custom plugins

Purpose-built functionality designed around your workflow, with a settings interface your team can actually use and sensible defaults so it works before anyone configures it.

Extending existing plugins

Often the right answer is not a new plugin but a clean extension of one you already run — using its hooks and filters, so updates do not undo the work.

Third-party integrations

Connecting WordPress to CRMs, ERPs, payment providers and internal systems, with authentication, rate limiting, retries and logs you can read when something fails.

Automation & scheduled jobs

Background processing built on Action Scheduler rather than WP-Cron, so long-running imports and syncs finish reliably instead of timing out silently.

Admin interfaces

Settings screens, dashboards and custom list tables built with native WordPress components, so they feel like part of the admin rather than a bolted-on iframe.

Plugin rescue & audits

Inheriting a plugin somebody else wrote: security review, standards cleanup, dependency updates and documentation, so it becomes maintainable instead of load-bearing and untouchable.

How it works

How our WordPress plugin development works.

  1. Spec

    What it must do, what it must not do, and every edge case we can find upfront.

  2. Architecture

    Data model, hooks and where responsibility sits, agreed before code.

  3. Build

    Written to WordPress Coding Standards with version control from day one.

  4. Test

    Unit tests, PHPCS and real-data testing on staging against your setup.

  5. Ship

    Versioned release, update mechanism and documentation for your team.

  6. Maintain

    Compatibility with new WordPress and PHP releases as they land.

Results

What the work produced.

Screenshot of the Dove Expressions site we built

Dove Expressions

A ministry, a shop and an assessment in one build

A prophetic teaching ministry that is also a shop, a community, a coaching practice and an interactive assessment. The client arrived with a finished mockup and a clear vision — and no theme that could hold all of it without one part swallowing the rest. Built to the client's mockup rather than bent out of a template. The three teaching pillars, the Dream Journal with its own reviews, the spiritual-wiring…

Screenshot of the Forged Vaelor Research site we built

Forged Vaelor Research

A regulated product with an age gate in front of it

A research and supplement brand that legally cannot show its catalogue to anyone under 21, which means the first thing every visitor meets is a door rather than the brand. Built the site so the gate is a moment rather than a wall — brand and proof land immediately after it, with the verification and testing claims kept where a cautious buyer will actually look for them.

Capabilities

The WordPress plugin development stack we work in.

Core APIs

  • Hooks & filters
  • WP REST API
  • Settings API
  • Options API
  • Transients
  • Custom tables
  • Capabilities & roles

Languages & tooling

  • PHP 8
  • JavaScript / React
  • Composer
  • npm
  • WP-CLI
  • Git
  • Semantic versioning

Integration

  • Action Scheduler
  • Webhooks
  • OAuth 2
  • REST clients
  • Rate limiting
  • Retry & backoff
  • Structured logging

Quality

  • WordPress Coding Standards
  • PHPCS
  • PHPUnit
  • Security review
  • Nonces & sanitisation
  • Update mechanism

Engagement

Three ways this usually runs.

Spec sprint

Fixed fee

A written specification and technical architecture you can build from — with us or with anyone else. Often the cheapest way to discover a plugin is not what you needed.

  • 1–2 weeks
  • No obligation to continue
  • Yours to take elsewhere

Plugin maintenance

Monthly

Keeping a plugin compatible as WordPress, PHP and its dependencies move — plus small feature work as your requirements change.

  • Rolling monthly
  • Compatibility guaranteed
  • Cancel any time

Cost

What WordPress plugin development costs, and what moves the number.

The full WordPress cost breakdown ↗︎

The engagement shapes above say how the work is bought. This is the other half: why two plugin briefs that sound similar can be quoted very differently, and which of those differences decide whether the plugin is still maintainable in two years.

What it has to connect to

A plugin that only works inside WordPress is contained. One that syncs with an external API has to handle rate limits, authentication, timeouts and the other side changing without notice — and that handling is most of the engineering.

How much admin interface it needs

A settings page with a few options is small. A custom admin screen with tables, filters, bulk actions and its own permissions is a product interface, designed and built as one.

How much data it manages

Storing a handful of options is trivial. Storing thousands of records that need custom tables, indexes, imports and clean removal on uninstall is a data-design problem that has to be right from the first release.

Where it will be used

A plugin for one site can assume that site's hosting and theme. One distributed on WordPress.org, or sold, has to work on hosts and setups nobody has tested — and pass a review — which is substantially more work.

How it will be tested and supported

Automated tests, compatibility with future WordPress releases and a plan for updates are what keep a plugin alive. A build without them is cheaper at handover and more expensive the first time WordPress changes underneath it.

Questions

WordPress plugin development questions, answered plainly.

If your WordPress plugin development question is not covered here, send us the details and we will reply with a straight answer.

Should this be a plugin or code in our theme?

If it is functionality, it belongs in a plugin. If it is presentation, it belongs in the theme. The test is simple: would you still need this if you redesigned the site tomorrow? Business logic in functions.php is one of the most common reasons a redesign becomes far more expensive than it needed to be.

Will a custom plugin survive WordPress updates?

Yes, when it is built on documented hooks and APIs rather than on assumptions about core internals. We never edit core files and we avoid depending on undocumented behaviour. We also test against WordPress beta releases, so compatibility issues surface before your site meets them.

Do we own the code?

Completely. You get the full source, in your own repository, with no licence key, no phone-home and no dependency on us continuing to exist. WordPress plugins inherit the GPL, and we hand over everything needed for another developer to take it forward.

Can you fix a plugin somebody else built?

Yes, and it is a large part of what we do. We start with a review covering security, standards and how it will behave on current PHP and WordPress versions, then give you an honest recommendation: repair, refactor or replace. Sometimes rewriting is genuinely cheaper than untangling.

Do you publish plugins to the WordPress.org repository?

We do, both our own and client plugins where that makes sense commercially. Public repository plugins go through review and get scrutinised by strangers, which is a useful discipline. For internal or commercial plugins we set up private updates instead, so your sites still get versioned releases.

How do updates and versioning work?

Semantic versioning and a proper update mechanism, whether the plugin is public or private. Every release has a changelog, breaking changes are flagged clearly, and updates can be staged before they touch production. You are never in the position of guessing what a version changed.

When is WordPress plugin development worth it?

When the logic is specific to how your business works, when the integration does not exist, or when you are chaining three plugins to fake one feature. If a maintained plugin already does it, buy that instead — we will tell you so.

The platform itself is documented at wordpress.org.

Who owns the code?

You do, and you hold the repository. Custom WordPress plugin development that leaves you dependent on one supplier defeats the point of building it.

Off the shelf

Prefer a ready-made WordPress plugin?

Browse our plugins ↗︎

We also publish our own WordPress plugins, built to the same standard. If one of them already solves your problem, it is the fastest and cheapest route — no custom build required.

Start here

Start your WordPress plugin development project.

The more you can tell us, the more useful our first reply will be. No sales sequence — one of the people who would actually do the work reads this.

  • We read it and look at your site
  • You get a written reply with our honest read
  • If it fits, we scope it properly

Prefer email? hello@dotance.com

We reply within one business day.