WP Manifestindependent plugin directory
manifest / integrations / wp-block-control

Arrigoo CDP Block control WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA

Control display of your blocks based on segments from the Arrigoo CDP.

★ 2stars
295composer installs
1.2.12latest · 1mo ago

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/arrigoo/wp-block-control/archive/refs/heads/main.zip

On Packagist as arrigoo/wp-block-control:

composer require arrigoo/wp-block-control
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Arrigoo Block control

What this plugin does

A WordPress plugin that adds a "CDP Segment control" panel to every Gutenberg block's inspector. Editors pick segments (from the Arrigoo CDP) that the block should be shown to or hidden from. All blocks still render server-side; a frontend script reads the visitor's segments from the Arrigoo CDP and either reveals or removes the marked blocks in the DOM.

Commands

  • npm run build — Builds both JS entry points with @wordpress/scripts (webpack) and copies src/bundle.js to build/bundle.js. The copy step is required because bundle.js is a pre-built CDP SDK artifact, not a webpack entry — webpack would otherwise overwrite or skip it.
  • npm start — wp-scripts start (watch mode for src/index.js and src/frontend-loader.js). Note: this does not copy bundle.js; run npm run build once to seed it.
  • composer install — Installs the arrigoo/cdp-php-sdk dependency and sets up the PSR-4 autoloader for the Arrigoo\WpCdpBlockControl\ namespace. The plugin relies on a Composer autoloader being loaded by WordPress (see README.md — the deliciousbrains "WP in git" pattern).

No test suite or linter is configured.

Architecture

Two-stage rendering (the core trick)

  1. Server: every block with selected segments is rendered with a data-segments="seg1 seg2 !seg3" attribute. A `block in` hides them all by default (EndUser.php:34-38).
  2. Client: frontend-loader.js waits for the CDP bundle to emit ao_loaded, reads the visitor's segment list from window.argo.get('s') (falling back to the base64-encoded arrigoocdp sessionStorage entry), then either unhides each block (display: block) or removes it from the DOM.

The ! prefix means "hide from this segment". The literal segment unknown matches visitors the CDP has not recognized.

PHP side (src_php/, namespace Arrigoo\WpCdpBlockControl\)

Hooks are registered in index.php. Three classes, all static:

  • BlockControl — registers the editor JS bundle (build/index.js) and injects window.arrigooCdpSegments via wp_add_inline_script. Adds a selectedSegments array attribute to every block via register_block_type_args, and writes data-segments onto the outermost tag of each block via render_block. Owns the CDP segment fetch (cached 5 min in the ARRIGOO_CDP option).
  • EndUser — emits the frontend `

Releases

18 releases.

Tag
Published
1.2.12 latest
Sep 3, 2026 1mo ago
Aug 26, 2026 1mo ago
Jun 22, 2026 4mo ago
Jun 22, 2026 4mo ago
Jun 22, 2026 4mo ago
Jun 19, 2026 4mo ago
Jun 18, 2026 4mo ago
Jun 9, 2026 4mo ago
Jun 1, 2026 4mo ago
Mar 23, 2026 7mo ago
Mar 19, 2026 7mo ago
Jan 26, 2026 8mo ago
Jan 22, 2026 9mo ago
Nov 10, 2025 11mo ago
Nov 10, 2025 11mo ago
Nov 7, 2025 11mo ago
Oct 22, 2025 1 year ago
Nov 20, 2024 1 year ago

These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.

A grade

Security

Arrigoo CDP Block control 1.2.12 · audited by WP Registry

No security issues found.

Audited release
1.2.12
Findings
none
Worst severity
—
Content hash
8d9cbfbfcd946193a1868a8c…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.