

Three versions of one hero, written once and named. Pick the schedule — daily, weekly or monthly — choose shuffle or sequence, repeat or stop on the last one, and preview every variation from the editor without waiting for the clock.
Write several versions of a section once, and let the page show a different one over time.
A testimonial that changes every week. A hero message that rotates each month. A call to action
that differs every day. You write the variations in the block editor, choose how often they
change, and the page takes it from there.
How it works
Add a Cycle block, then add a variation inside it for each version you want. Anything can go
in a variation — headings, images, buttons, columns, other blocks. Pick an interval, and that is
the whole setup.
Rendered on the server, which matters more than it sounds
The variation is chosen before the page is sent to the browser. Only one is ever in the HTML.
Built to behave
This plugin contacts GhostLabs’ licensing service in exactly one situation: when you start the
upgrade to Cycle Block Pro from the settings screen — by submitting a license key, or by clicking
“Complete upgrade” after a purchase. It sends the license key you entered (or the one-time claim
token from your purchase), this site’s domain name, the plugin’s slug and the edition being
requested, so the service can verify the license and deliver the Cycle Block Pro package. Nothing is sent on any other page
load, and nothing is ever sent without that explicit action.
The service is operated by GhostLabs. Terms of service ·
Privacy policy
The plugin’s compiled JavaScript is built from readable sources, and both are published
together at:
https://github.com/theghostlab/wp-ghostlabs-cycle-block-lite
That repository contains this plugin exactly as distributed, plus the uncompiled src/ and
dev/ behind its bundles and the configuration used to build them. Every dependency is a
public package, and the one GhostLabs library the plugin uses is carried as readable source
inside it (lib/wp-kit/, GPL-2.0-or-later) — so composer install && pnpm install && pnpm run needs no credentials of any kind and reproduces the shipped
buildbuild/, assets/js/ and
assets/css/settings.css byte for byte.