CTA Popup

Answer the question without sending the shopper off the page

A button or a text link that opens a window holding whatever the page needs — a size chart, the delivery table, the terms of a promotion. The window takes real Page Builder content, so an image, a Notice Box or another Wrizu element goes into it the same way a paragraph does.

Nothing interrupts the purchase

The answer arrives over the page the shopper is already on. No new tab, no policy page, no scroll back to where they were.

A window, not a text field

Drop an image, a button, a list or another Wrizu element into it. It is a Page Builder container, so everything inside keeps its own settings form.

The keyboard and the screen reader are covered

The trigger is a real button and the window is a real dialog, both from the same Magento widget your basket already uses. Escape closes it and the focus goes back where it came from.

Use cases

Where shops put it

A size chart beside the Add to basket button

The measurement table that decides whether the order happens at all, one press away, without the shopper losing the size they had selected.

Delivery and returns on a campaign page

The full table behind a quiet text link, so the landing page keeps its shape and the detail is still one press away for the shopper who wants it.

The terms of a promotion

The small print that has to be reachable and must not be the first thing anyone reads. A link in the copy, the conditions in the window.

What you control

Every field in the form, in plain words

Two appearances
The trigger as a theme button, or as a plain underlined text link.
The words on the trigger
Its button style (Primary, Secondary or Link) and its alignment.
A window title
Optional, and it is what names the window for a screen reader.
Window width
In four steps, from 480 px to full width.
Close on overlay click
Whether pressing the dimmed background closes the window.
Anything inside
Text, headings, images, buttons, dividers, video, banners, sliders, maps, product lists and every other Wrizu element.
Advanced tab
For alignment, spacing, border and CSS classes.

Shown in the demo store

Native and honest

Your content is written in Magento's own format

The trigger is written to the page as a real button and never as a link to nowhere, and the window's content is stored as ordinary content types in the place you put them. That is what makes the next paragraph possible.

Where the promise stops: with the module switched off, the content of the window is still on the page as an ordinary section with its title above it — nothing is lost. But if the stylesheet loads and the script does not, that content is off the page as far as the eye is concerned and there is no trigger to reveal. We would rather say so than let you find it.

Every element saves itself the way native Page Builder saves its own: a plain <div data-content-type="wrizu_…"> with its settings in data-* attributes, stored with the page. There is no proprietary database table, no shortcode, no second editor and nothing that has to be converted later.

That has a practical consequence. Disable the module and the storefront keeps serving those pages: headings, copy, images, links and buttons stay visible and clickable, and the styling you set per element — alignment, colours, spacing — stays with them, because it lives in a <style> block stored with the page rather than in our stylesheets. What you lose is what our CSS draws: the layouts, the borders and shadows, the button variants and the bundled icons.

One honest warning

With the module switched off, do not open and save a page that contains Wrizu elements — Page Builder flattens any page holding a content type it does not know into a single HTML Code block, and that save cannot be undone. It behaves that way with every unknown content type, not only with ours, and the storefront is unaffected either way; the rule is simply to leave those pages alone until the module is back on.

Works with any Luma-based theme

The elements are built on the same front-end stack the native Page Builder uses: jQuery and the libraries Page Builder already loads. They target Luma-based themes — Magento Blank, Luma, and the custom themes shops build on either of them.

Buttons use Luma's own button mixins, so a Wrizu button looks like a button from your theme rather than like a button from a plug-in. All of the module's CSS is scoped to [data-content-type^="wrizu_"], so it styles our elements and nothing else in your theme.

Requirements

  • Magento Open Source or Adobe Commerce 2.4.6 or newer, with the Magento_PageBuilder module enabled
  • PHP 8.1 to 8.5 — whichever your Magento version supports
  • No other extension, no external icon font, no CDN dependency

Questions about this element

Can I put Columns inside the window?
Does the Advanced tab style the window?
Can it open by itself, after a delay or on exit intent?
What does it look like with the module switched off?

Conversion & trust

More in Conversion & trust

Auto Popup

The same window with no trigger: it opens itself after a delay you set.

Comparison Table

Two to five things side by side, a row per feature, one column recommended.

Countdown Timer

Days, hours, minutes and seconds down to a deadline you set.

Coupon Code

A discount code on a ticket, in a line or on a banner, with a button that copies it.

CTA Box

A call-to-action band with a heading, a subheading and up to two buttons.

Logo Cloud

A row of brand, partner or payment marks, as a grid or a carousel — or a row of social icons.

Newsletter Signup

Your store's own newsletter subscription as a bar, a card or a full-width band.

Pricing Table

Columns of plans with feature lists and a call to action in each.

Star Rating

A score in stars — to a tenth of a star, out of five or ten — with the number and a caption.

Testimonials Slider

A carousel of customer quotations with photographs and star ratings.

Thirty-five conversion elements for the Page Builder you already have

Wrizu Page Builder Extensions adds them to the native Magento 2 Page Builder — no second editor, no proprietary format, no content held hostage.