WordPress Plugin · v0.16.0

The official WordPress plugin for the WPSignal realtime event service. Install, connect, and your site starts pushing events to browsers instantly. No polling. No server to manage.

  • WP 6.2+
  • PHP 7.4+
  • Tested up to WP 7.0
  • GPL-2.0

<Setup />

Up and running in less than a minute

No server to provision. No WebSocket infrastructure to manage.

  1. 1. Install and connect

    Upload the plugin or install from the WordPress directory. Go to WP Admin > WordSocket and click Connect.

  2. 2. Events fire on save

    Post updates publish instantly without any code. Register custom triggers with the PHP builder to attach realtime events to any WordPress action hook.

  3. 3. Browser receives instantly

    The client script connects via WebSocket on page load. Every event fires a native CustomEvent on document. No polling, no framework required.

Need a visual guide? Watch this 1min demo

One line of PHP.
Live in the browser.

Register a custom trigger on any WordPress action hook using the fluent builder. The browser receives the event the moment the hook fires.

Listen with window.WPS.on() or the native document.addEventListener('wpsignal:*') API. No framework required.

wp-content/plugins/{plugin}/plugin.php
WPS::trigger('comment.approved') 
  ->on('wp_set_comment_status', 10, 2) 
  ->channel('events') ->data(fn($id, $comment) => [ 
    'author' => $comment->comment_author, 
    'content' => $comment->comment_content, 
  ])
  ->when(fn($id, $comment) => 
    $comment->comment_approved === '1'
  )
  ->register();
wp-content/plugins/{plugin}/plugin.js
const unsub = WPS.on('comment.approved', (data) => {
  console.log('New comment from', data.author); 
}); 
  // Or via native DOM events
document.addEventListener('wpsignal:comment.approved', (e) => {
  console.log(e.detail.data); 
});

<Features />

Built for WordPress developers

Common questions

Do I need a WPSignal account?

Yes. WordSocket relays events through the WPSignal server. Create a free account at wpsignal.io, then paste your API key into the plugin settings.

What data leaves my WordPress site?

During registration: your site URL and name. During normal operation: AES-256-GCM encrypted event payloads. The WPSignal server never sees plaintext content. Data is not stored on the server.

Does it work for logged-out visitors?

The built-in client loads for logged-in users by default. Use the wpsignal_allow_client filter to load it for all visitors.

What happens when WebSocket is unavailable?

The client falls back to SSE automatically. Channel subscriptions are replayed on reconnect. Collaborative editing detects the fallback and surfaces a "not synced" status in the block editor.

Does collaborative editing require WordPress 7.0?

Yes. The Yjs sync provider requires @wordpress/sync, which ships in WordPress 7.0. The plugin detects the version and skips registration on older installs.

Get started

For Free

Create a free WPSignal account, install WordSocket from the WordPress plugin directory, and connect in under a minute.

Create free accountView on WordPress.org