A clear start.
No guessing.
What the plugins do, how to install them, and where this release needs a check on your own site.
These are installable plugins with implemented features. They have not been submitted to or approved by WordPress.org. Pro pricing, licensing, and a payment checkout are not configured.
Install & start
- Download Campaign Bars Free.
- In WordPress, open Plugins → Add New → Upload Plugin. Upload the ZIP and activate it.
- Open Campaign Bars in your admin menu.
- Name your campaign, start from a template or write a message, and choose a visual preset. Add a button destination if you need a button.
- Optionally set page exclusions, device/visitor scope, and dates. Checkout is excluded by default.
- Save a draft, review changes and preview it on your site, then publish. Draft edits stay separate from the live bar.
For Pro, install or update and activate Free 0.3.0 first, then upload Campaign Bars Pro. WooCommerce is needed for cart-aware offers and purchase reports.
Purge page/CDN caches after installation, updating, or activating/deactivating Pro so cached pages receive the current scripts. Once the loader is present, publishing or resuming campaigns does not need another cache purge.
Version 0.3.0 moves drafts, approved publications and saved history into a private atomic campaign table. Legacy records remain for recovery, but new edits are stored in the new table. Reinstalling 0.2.0 would read stale data and is not a supported rollback. Export important campaigns and keep a verified database backup.
Free & Pro scope
Free handles everyday announcements. Pro is a separate add-on and contains the advanced implementation.
| Feature | Free | Pro add-on |
|---|---|---|
| Campaigns & live preview | Unlimited | Included through Free |
| Announcement, countdown, coupon copying | Included | Included through Free |
| Presets, colors, text-only, mobile message | Included | Included through Free |
| Page/device scope & checkout exclusion | Included | Always mandatory |
| Visitor login status & fixed dates | Included | Included through Free |
| Local view/click reports & CSV | Per-campaign views/clicks; off by default | Per-campaign filters and filtered CSV |
| Saved revisions, trash recovery and safe resume | 20 revisions per campaign | 50 revisions per campaign |
| Private real-page saved-draft preview | Publisher-only; 15-minute link | Included through Free |
| Visibility diagnostics | Scope, schedules, competition | Also audience, priority and shipping |
| Guided consent setup | WP Consent API, Cookiebot, custom | Included through Free |
| PHP and JavaScript translations | Native loading and POT template | Native loading and separate POT |
| Free shipping progress | Read-only feature preview | WooCommerce rule-aware |
| Eligible coupon application | Code copying | Validated by WooCommerce |
| Cart, source, product/category, role and language rules | Read-only feature preview | AND/OR audience rules |
| Recurring hours & priority | Fixed dates; newest eligible bar | Days/hours; priority 0–100 |
| Local purchase attribution | Read-only feature preview | 1-day/7-day windows; itemized refunds |
| A/B variants & control group | Preview in Explore Pro | Session assignments; descriptive reports |
| Team & staging tools | Preview in Explore Pro | Draft role, brands and reviewed JSON transfer |
Store-aware offers
Shipping progress
Pro reads the shopper’s cart and the matching WooCommerce free-shipping zone rule. It follows the rule’s discount and displayed-tax settings and checks native availability.
A known shipping destination and one shipping package are required. Otherwise the campaign hides, or shows a neutral fallback you write. Coupon-only shipping, split packages, custom shipping algorithms, and multi-currency extensions need separate integration work; this release does not promise a universal threshold for them.
Eligible coupons
Free displays and copies a code. Pro can offer one-click application only when WooCommerce confirms it is valid for the current cart. It does not create coupons or bypass product, spend, expiry, usage or coupon-combination restrictions.
Measurement & consent
Measurement starts disabled. Enable it in Campaign Bars → Settings when you are ready. Data stays in your WordPress database; there are no external analytics or telemetry requests.
Consent is required by default. In Settings, choose automatic detection, WP Consent API, Cookiebot, or a custom connection. Save settings, then use “Test connection” to open your site’s private consent-test tab. Accept and revoke with your normal banner and watch the connected, waiting, granted, or denied status in the editor. Campaign Bars measurement is paused in that tab. The plugin does not install a consent manager or accept consent for visitors. For a custom connection, send this event after permission is granted:
document.dispatchEvent(new CustomEvent('CampaignBarsConsent', {
detail: { analytics: true }
}));
Send analytics: false when consent is revoked. Explicit provider mode follows that provider’s decision. If custom consent is already known
before the plugin loads, set
window.CampaignBarsAnalyticsConsent = true first.
- Free counts bars at least 50% in view and button/coupon interactions. Repeated resolution on the same page does not count another view.
- Aggregate counters retain 90 days of data. No IP addresses, names, or emails are copied into the analytics tables.
- Functional browser session storage remembers dismissal, display frequency, and Pro experiment assignments. Dismissal can quiet a publication, the current page visit, or every bar for the browser session.
-
Pro uses a signed first-party
cbars_attributioncookie for seven days after an eligible click or control exposure with explicit analytics consent. It contains campaign, variant, time and the current consent-grant reference. A separate site-scoped consent epoch cookie lasts up to seven days; a denied marker may remain for that period to block late capture after withdrawal. Optional retained landing-source data is bound to that grant in the current browser tab and clears on withdrawal or tab close. Revocation clears attribution and retires the consent grant so an older response cannot revive it. - Eligible WooCommerce orders retain campaign metadata. Revocation does not erase existing aggregate counters or prior order metadata automatically.
Campaign-level results in Pro
Results lists campaign names, visible views, clicks, attributed orders, net product revenue and itemized refunds. Filter by campaign, inclusive date range within the 90-day retention period, and a 1-day or 7-day attribution window. Dates use your WordPress timezone. Daily totals and an equal preceding-period comparison are available within retained dates. Control groups remain in the separate experiment report.
What purchase reports mean
Attribution is the last eligible consented campaign click, with control exposure recorded separately. Reports offer 1-day and 7-day windows and product revenue after discounts, excluding tax and shipping. Money is hidden for unverifiable historical currency or a detected currency change; no currency conversion is performed. Itemized refunds adjust the original order-day revenue; non-itemized refunds are not allocated automatically. Paid-order counts remain counts of originally paid orders.
A/B and control use different exposure and purchase-attribution definitions in this version. The results are descriptive. The plugin does not claim causal lift, declare a statistical winner, or promise increased sales.
Why isn’t my bar showing?
Open Visibility check in either edition. Choose a page, device and visitor context to inspect published rules, exclusions, schedules, dismissal/frequency and competing campaigns. Unpublished changes are identified. Pro adds priorities, advanced audience, recurring hours, paid-order suppression, and shipping/coupon explanations.
The selected visitor inputs are simulations. Current cart means your own merchant browser session, if WooCommerce has already initialized it. Unknown shipping addresses or carts stay unknown; the tool does not create a cart or inspect another shopper. This checks selection rules, not theme CSS or blocked browser scripts.
Translation readiness
Free and Pro include combined PHP/JavaScript translation templates. Scripts use native WordPress translation loading; translated language catalogs can be provided separately. The download includes English source strings, not a finished translation in every language.
Review, recover and preview
Save draft keeps your public offer unchanged. The publish review shows the pending changes; another editor cannot silently replace a newer save. Campaigns provides saved history and recoverable trash. Restoring from trash keeps a previously published campaign paused. Emergency pause stops public selection without rewriting campaigns.
Private real-page preview shows the exact saved draft on a published page for the publisher who created the link. The link expires after 15 minutes or a campaign change. Campaign measurement, links and coupon actions are disabled. Audience selection is not simulated; shipping is illustrative. Use Visibility check separately for published rules.
History records explicit saves and publications. It is not automatic saving of every keystroke. Save your work before leaving the editor.
Team & staging
Pro adds a Campaign Bars Draft Editor role. It can save drafts; publishing and settings require separate capabilities. Assign it through WordPress Users.
Free includes 20 saved draft/publication revisions per campaign; Pro retains 50. Restore uses a stable revision ID, creates a draft and keeps the live bar unchanged. Pro also includes up to 30 shared brand presets.
For a staging handoff, export JSON, then import it on the destination site with both plugins installed. Preview up to 1,000 campaigns and their shared presets, resolve destination-specific values, then confirm creation of drafts. Recheck pages/products/categories, URLs, coupon codes, roles, language, shipping rules and timezone before publishing. This is a portable file transfer, with no remote publishing connection.
Release status
Version 0.3.0 adds conflict-safe saves, saved recovery, private real-page previews, clearer campaign review and deeper Pro store/reporting tools. It remains for staging review. The source code is readable and GPL-2.0-or-later.
Read the validation report for exact test results and remaining checks. Before public launch, check your theme, mobile display, consent tool, full-page cache/CDN, and WooCommerce cart/checkout flow.
WordPress.org submission is a separate step. The owner’s actual WordPress.org contributor account is still needed in the final submission metadata. No repository approval is claimed.
Common questions
How many bars can appear at once?
One eligible bar. Free uses the newest eligible campaign. Pro adds explicit priorities; the newest ID breaks a tie.
Can I change a live bar without publishing?
Save draft preserves the published configuration. Publish bar replaces it after server validation, capability and current-revision checks. A stale editor gets a conflict. Resume restores only the approved publication, leaving private draft changes alone.
Do OR audience rules override checkout exclusion?
No. Page inclusion, always-excluded pages, device scope, and campaign schedule are mandatory. OR applies only to visitor/cart/source audience conditions.
What happens if I deactivate Pro?
Campaigns published with a Pro dependency are skipped while the add-on is unavailable. Free campaigns continue normally. Data is retained.
Does uninstall delete my data?
Data is preserved by default. Enable “Delete plugin data on uninstall” in Settings before uninstalling to remove the plugin’s campaigns, local report tables, and settings. Pro order metadata can remain with your store’s order records.
How much will Pro cost?
Pricing and licensing are still to be configured. This owner review site provides the first Pro build for staging; it is not a paid checkout.