Websites · Plugins

WordPress plugin development and API integrations

I write WordPress plugins for processes that no ready-made solution covers. Through APIs, I connect websites to the systems your company works with every day, for example a CRM, stock management software, a recruitment system or a supplier’s portal. A custom plugin also makes sense when the ready-made one needs a subscription that grows with your traffic, or brings dozens of features when you need one. The code is yours, and I quote after a short brief.

  • Code in its own plugin, separate from the theme
  • No licence or subscription fees
  • Development on a copy of the website
  • A stabilisation period after launch

Scope of work

What I build most often

These jobs come up regularly. Each one starts with a check of whether I can solve the task without custom code, and sometimes I can.

A plugin for one specific feature

It might be a quote calculator, a form with unusual validation or a panel for data that does not fit into ordinary posts. The code sits in a separate plugin rather than in the theme files, so it keeps working after a theme change and does not disappear with a theme update.

Integrations through the REST API

The website connects to the system your company works in every day, such as recruitment software, stock management, a CRM, a course database or a supplier’s portal. I fetch the data at set intervals and store it on your hosting, so an outage of the external server does not stop your website.

Custom content types and fields

Projects, products, offers or training dates have their own properties and need their own views. I build them as custom post types with fields that match the data, filters and repeatable layouts, instead of assembling every page by hand in the editor.

Importing and syncing data

The data might come as an XML file from a wholesaler, a spreadsheet with a price list or an export from an old system. I set up an import that recognises new and changed items by itself and does not fill the database with duplicates on every run. Whatever it cannot match, it reports without losing any data.

Plugin clean-up and conflicts

I go through every plugin on the website and check whether anyone uses it, whether it duplicates another one and whether it has gone two years without an update. Thirty plugins usually come down to a dozen or so, and the website gets faster and less exposed to attacks along the way.

Cookie consent without a subscription

I wrote my own cookie consent plugin. It keeps a register of accepted consents only, the data stays on your server, and you need neither an external service billed every month nor another script from someone else’s server. You can see it on this website too, by clicking “Cookie settings” in the footer.

Decision

A ready-made plugin or a custom one?

The WordPress plugin directory lists tens of thousands of plugins, and in most cases one of them is enough. I write a custom plugin only when there is a specific reason for it.

Ready-made plugin

When I advise against custom code

  • The problem is a common one, like a form, a gallery, backups or a sitemap.
  • The plugin is actively supported, gets regular releases and has a sizeable number of active installations.
  • The annual licence costs less than a few hours of work on a replacement.
  • It concerns payments or security. I do not write that kind of code from scratch.

My work then comes down to choosing the plugin, configuring it and checking that it does not clash with the rest of the website. That usually takes an hour or two.

Custom plugin

When a ready-made plugin is not enough

  • No suitable solution exists, because the rules of your industry are specific to it.
  • The ready-made plugin needs a subscription that can grow with your traffic or the number of records.
  • The plugin brings dozens of features, you need one of them, and the rest slows the website down.
  • The website has to connect to a system that no plugin supports.

The code is yours. You pay no licence or annual fee, and you do not depend on whether the author of a plugin is still developing it two years from now.

Three examples from my work. A plugin pulls job vacancies from a recruitment system through its API and shows them as ordinary pages. It replaced the provider’s widget, an embedded script whose content Google could hardly see because it was only generated in the browser. On a website built with JetEngine, custom post types and repeatable layouts replace pages assembled one by one. The third example is my cookie consent plugin from the list above, which replaces an external service with a monthly fee. You will find more projects in the case studies.

Process

How I build a plugin

Sometimes the first step is enough, because it shows that the task needs no custom code. The last step matters more here than when building a website, since I have to watch code connected to someone else’s system with real data.

  1. Reviewing the existing code

    I start by asking whether I need to write anything at all. A plugin you already have, or a ready-made one with active support, may solve the problem. If it does, I tell you, even if that turns the job into two hours of work instead of two weeks.

  2. Reviewing the data and documentation

    For an integration, I read the API documentation and check the request limits, the authentication method and what the system returns in practice, beyond the examples. Before anything touches the live website, I test the connection with a test key. If there is no documentation, I agree the format with the provider.

  3. Building in a staging environment

    The code becomes a separate plugin, with settings in the admin panel, error handling and a log entry whenever the external system does not respond. You see the working version on a copy of the website and can click through it before you decide on the launch.

  4. Launch and stabilisation period

    After launch, I watch the logs for an agreed period and fix what the real data reveals, because an external API sooner or later returns data that was not in the documentation. The quote sets the scope and length of this period, along with the rules for later changes.

Starting the project

What I need from you

With integrations, waiting for access to the other system usually takes longer than writing the code. That is why the test key and a contact at the provider come first.

If you do not know whether your system has an API, send me the name of the software. I will check the documentation and tell you whether I can connect it to the website before I send a quote.

  • a description of the business rule in plain sentences, saying what should happen, when and for whom
  • the documentation of the external system and a test key for its API
  • a contact at the system provider for cases the documentation does not cover
  • sample data in the target format; a few records are enough to start
  • a WordPress administrator account and FTP or SSH access, or your agreement that I work on a copy of the website
  • which theme and page builder the website uses and which plugins are active today

Other services

Most of the plugins I write come with a larger project, for example a new website or a shop that has to follow a non‑standard rule.

All case studies

The Websites page lists the other website services. If something stopped working after you installed a new plugin, start with WordPress support, where conflicts between plugins are a case of their own. It is worth keeping a website with custom code under ongoing maintenance, so that critical updates do not cause an outage. All prices are net, excluding VAT. The offer is for businesses only.

FAQ

Questions about plugin development

What clients ask before ordering, most often about the cost, whether the code survives updates and who owns it.

How much does a custom WordPress plugin cost?

It depends on how many rules the plugin has to cover and whether the system on the other side has usable documentation. A simple plugin that displays data from an external API usually takes a few days of work, and an extensive module with settings and an import a few weeks. I give you the price after a short brief and an analysis, together with the scope, and I start only once you accept it. All prices are net, excluding VAT. The offer is for businesses only.

Will a custom plugin survive WordPress updates?

I write the code using the official WordPress mechanisms, without changes to the core or the theme, so updates go through without surprises. The risk comes from elsewhere, when the external system changes the format of its data or the author of another plugin adds a library that causes errors. In those cases you come back to me with a specific report, or the website goes on a maintenance plan and I monitor it without any action from you.

Who owns the code?

You do. The plugin comes with its source code and a short description of how it is built. There is no licence to renew and no activation key needed to keep the features working. If you move to another developer later, you hand them the files, and that is all. This is one of the reasons I do not package such work as my own subscription service.

Can the website send data to other systems too?

Yes, for instance enquiries from a form going straight into a CRM, orders passed to stock management software or notifications sent to a ticketing system. With connections like these, I make sure that no data gets lost when the recipient briefly does not respond, and that nothing arrives twice after a retry.

How do you tell whether an error comes from a plugin conflict?

I reproduce the situation on a copy of the website and switch components off there under controlled conditions, leaving the live website untouched. The most common case is two plugins that each load their own version of the same JavaScript library, after which the gallery or the editor stops working. I describe diagnosing faults like this in more detail on the WordPress support page.

Do you develop plugins for UK businesses?

Yes. I work remotely with companies in the UK and the EU, among them a chain of tattoo and piercing studios in the UK and education organisations in Belgium. You deal with me directly, in English. The work needs no visit, because I build and test the plugin on a copy of your website and agree the details in writing or in a video call. You can reach me by email, WhatsApp, phone and video call, Monday to Friday, 9:00–⁠17:00 Central European Time (8:00–⁠16:00 UK time).

Do you have a process that no plugin covers?

Describe what should happen and which system the website needs to connect to. I reply within 24 hours with an analysis and the price.

I reply within 24 hours

Free quote

Tell me what needs to be built or fixed. I answer every enquiry myself and do the work myself.