WP Signal is an independent service and is not affiliated with or endorsed by the WordPress project.
Beta

Realtime WordPress events.
Zero polling.

Push WordPress events, post updates, comment counts, and order status changes to browsers instantly via WebSocket. One PHP call. No infrastructure to manage.

Event lifecycle

Hook fires.
Browser knows.

Every WordPress action hook is a potential signal. WPSignal captures the event at the moment it fires, signs it, and relays it through a persistent connection straight to the browser as a native CustomEvent.

The round trip from publish to DOM event takes milliseconds. No polling interval, no stale state.

3 steps

How it works

Three steps from installation to live events in the browser.

1

Install the plugin

Install WordSocket, the WordPress plugin. Click 'Connect to WPSignal' in the settings page: your site registers automatically and credentials are saved.

2

Events fire automatically

The plugin publishes 'post.updated' events on every save. Register custom triggers with one line of PHP for any WordPress action.

3

Browser receives events

Logged-in users get a WebSocket connection (SSE fallback). Every event fires a native 'CustomEvent' on 'document' — no framework required.

WPSignal: infinite real-time connections

Always connected

One signal.
Infinite reach.

A persistent WebSocket connection between your WordPress site and every browser. Events arrive the instant they fire, no polling, no delay, no infrastructure to babysit.

Capabilities

Built for WordPress developers

WebSocket-first

Persistent WebSocket connections with Server-Sent Events as automatic fallback. Keepalive pings every 20 seconds.

HMAC-signed publishes

Every event is signed with SHA-256 HMAC. Timestamp replay protection and per-site rate limiting built in.

Fluent trigger API

Attach events to any WordPress action hook with a builder — channel, payload, condition — all in one call.

Cross-origin ready

CORS-enabled for SSE connections. Works from any domain without proxy configuration.

Multi-site support

Each WordPress site gets its own site_key and publish secret. Tenant isolation is enforced at the channel level.

Explorer

Built-in admin page showing connection status, live event log, publish form, and token inspector for instant debugging.

One line of PHP.
Live in the browser.

Register custom triggers on any WordPress action hook using the fluent builder API. Add a condition, custom channel, or transform the payload: all optional.

The browser client auto-connects and dispatches native CustomEvents, listen with plain JavaScript or integrate with any frontend framework.

See the full guide →
functions.php
// Publish when a WooCommerce order status changes
add_action('wpsignal_loaded', function () {
WPS::trigger('order.status_changed')
  ->on('woocommerce_order_status_changed', 10, 3) 
  ->channel('events')
  ->data(
    fn ($order_id, $old_status, $new_status) => [ 
      'order_id' => $order_id, 
      'old_status' => $old_status, 
      'new_status' => $new_status,
      'total' => $order->get_total(), 
    ])
  ->register(); 
});
your-theme.js
// Listen for the order status change event
document.addEventListener('wpsignal:order.status_changed', (e) => { 
  const { order_id, new_status, total } = e.detail.data;
  updateOrderUI(order_id, new_status, total); 
});

Demo

Bidirectional chat.
Built on WPSignal.

The WPSignal Chat plugin is a reference implementation demonstrating real-time private messaging between logged-in WordPress users, built entirely on the WPSignal infrastructure, with no additional WebSocket connections or third-party services.

  • Shared connection

    Hooks into window.WPS: the connection opened by the core plugin. Zero additional WebSocket connections.

  • Private channels

    Each user subscribes to their own chat.user.{id} channel. Messages route exclusively to the intended recipient.

  • Live typing indicators

    chat.typing events throttled to 2 seconds, auto-cleared after 3 seconds of inactivity.

  • Optimistic UI

    Messages appear instantly. Server confirmation via chat.message.sent reconciles state silently in the background.

  • REST + realtime hybrid

    Message history loads from the WordPress REST API with cursor pagination. Real-time events layer on top: no polling required.

WPSignal Chat widget open showing a message thread
WPSignal Chat widget open showing a message thread

What's next

On the roadmap

WPSignal is actively developed. Here's what's planned next.

complete

WP Plugin Repository Submission

WordSocket is live on the WordPress.org plugin directory. Install it directly from WP Admin or via WP-CLI.

in progress

E2E Encryption

WPSignal currently supports blind-relay encryption, WPSignal only ever sees ciphertext. Soon E2E encryption will be supported.

complete

WordPress RTC Integration

WPSignal as a Tier 3 WebSocket sync provider for WordPress collaborative editing, powered by Yjs.

planned

Hub and Spoke

One primary WordPress site dispatches events; connected child sites consume them. Cross-site event routing without duplication.

Ready to go realtime?

Free during beta. No credit card required. Sign up, connect your site, and push your first event in minutes.