Plugin Development

WordPress plugin developer who starts with architecture, not with hooks

Plugin architecture

Plugin development is not only hooks and filters. First comes understanding the plugin’s place in the system. There are four models, and I have used each of them on real projects.

1. Hierarchical — B2B wholesale portal. Core Sync keeps WooCommerce and the CRM in sync both ways; the analytics dashboard was built for this project: it reads WooCommerce through the WC Analytics API, but without Core Sync most of its features — filtering by legal entity and contract — are not available, so it depends on the core; other plugins, such as 4WP Notifications, do not know about the business core at all — they listen to declared WordPress and WooCommerce events or custom endpoints.

Diagram

WC Analytics API

depends on: legal entities, contracts

WooCommerceCore Syncpricing, legal entitiesCRMAnalytics dashboardper vendor, by legal entityWordPress &WooCommerce eventspost updates · order events· custom endpoints4WP Notificationsand other plugins

2. Replaceable — dental clinic. 4WP Booking replaced the CF7 + Telegram Notifier combination. It does not matter whether the site runs on Gutenberg or Elementor: block, shortcode and widget all work.

Diagram

replaced by

CF7 + Telegram Notifier4WP BookingClinicCards CRMEmail + TelegramGutenberg block ·shortcode · Elementorwidget

3. Parallel, encapsulated — media resource for legal professionals. 4WP Drive works alongside everything and touches nothing. When needed, it can automatically mark up core blocks or the 4WP FAQ block.

Diagram

optional

Google Docs / Markdown4WP DrivePostCore blocks / 4WP FAQ

4. Ecosystem — 4WP Bundle. See below.

Only after architecture come namespaces, hooks and filters.

Hooks & filters

Hooks and filters let a plugin initialise correctly within our architecture and process the data that other plugins already hold. They are what the links between plugins in an ecosystem rest on.

Modular plugin ecosystems (4WP)

A modular system is not a set of unrelated plugins. It is an ecosystem that brings dozens of plugins together under a shared contour — a main namespace and a single source that everything inherits from. From there the ecosystem grows in the direction we choose.

4WP is not finished yet. More than ten plugins are already on WordPress.org — independent, yet connected — while 4WP Bundle has not been officially released. It is a working prototype of how a set of seemingly unrelated plugins can grow and scale.

The principle: soft bridges. Every plugin lives on its own: Drive works without FAQ, FAQ works without Drive. The link switches on only when both are active.

Diagram

if active

if active

4WP FAQregisters FAQ block4WP Drivecatalog + filters · PatternsUI4WP SEO Helperregisters TechArticle

The Bundle will orchestrate — shared admin, onboarding — not merge plugins into one.

A chain example. 4WP Smart Link seems to have nothing to do with FAQ or SEO Helper. But Smart Link now supports dynamic variables, such as “number of projects”. The text holds a shortcode with that variable instead of a number, and wherever it is placed it shows the current value from the dashboard. When content is imported through 4WP Drive, all the links switch on:

Diagram
DocumentSmart Link variableshortcode4WP Driveimport, block mapping4WP FAQFAQ block, FAQPageschema4WP SEO HelperSEO inventory, SearchConsole

WordPress.org standards

11 plugins have passed the WordPress.org review — and none of them on the first ZIP. The usual path is T1 → fix → often T2 → approved. “Pended” is not a rejection; it is part of the process.

What the review catches most often:

  • trademark in the slug and name (4WP / WP);
  • the External services section in readme;
  • REST permissions at object level, not only at route level;
  • unnecessary wp-admin/includes;
  • outdated bundled JS libraries;
  • a ZIP that differs from the working tree.

The rule after every review email: a line in the checklist, a script or grep to verify it, and a lesson in the course. That way the same mistake does not come back in the next plugin.

Open source

Dozens of plugins on WordPress.org and GitHub.

Work with me

Need a WordPress plugin developer? I design and build plugins that live on their own and grow into an ecosystem.

Contact · CV