[donor_merchant] into it. Impreza's docs say this element supports shortcodes. Add a Button element to your header that links to the page, and test the page with your speed settings on.Does Impreza have a donation feature?
No. Impreza, from UpSolution, is a multipurpose theme. Its documentation covers a Contact Form element and WooCommerce shop pages, but no donation or recurring-gift feature. There is nothing to switch off, so you add a donation plugin.
Donor Merchant is a free WordPress plugin for one-time and recurring donations through Stripe and PayPal, with donor records, receipts and a donor portal. All features are free. Install it from Plugins > Add New by searching for "Donor Merchant" (WordPress 6.2+, PHP 7.4+, HTTPS required), then follow Getting started to connect a payment account.
Where do I put the form in Impreza?
Impreza gives you two builders that edit the same pages: its own Live Builder and the bundled WPBakery Page Builder. Impreza says a page made in one can be edited in the other. In both, use the Custom HTML element.
- Create a page called "Donate" and open it with Live Builder (the Edit Live button) or WPBakery.
- Drag in a Custom HTML element. In Live Builder, the search box at the top of the element panel finds it quickly.
- Paste
[donor_merchant]and save.
Impreza wraps the element's output in a <div class="w-html"> and does not validate the code you paste. A shortcode on its own line is all you need, so there is nothing to break.
Shortcode options: [donor_merchant campaign="3"] links the form to a campaign, [donor_merchant title="Support our work"] sets its heading, and [donor_merchant_progress campaign="3"] shows a goal thermometer. Your campaign IDs are listed under Donor Merchant > Settings > Shortcodes.
Using a Reusable Block
If the same form appears on several campaign pages, build it once at Templates > Reusable Blocks and place it with the Reusable Block element. Impreza notes that its [us_page_block] shortcode only works in the main content area of a page or post, so use the element rather than pasting that shortcode into other fields.
The form is a white card up to 540 pixels wide that centers itself, so one full-width column is enough. Keep it on pages where people give: Donor Merchant only loads Stripe.js and the PayPal script on pages where the form renders.
How do I add a Donate button to the Impreza header?
Open your header in the Header Builder. Click the plus icon in a cell of the Main Area and add a Button element linking to your Donate page. The Header Builder also offers Custom HTML, Text and Menu elements if you prefer a plain link.
Impreza headers have four states: Desktops, Laptops, Tablets and Mobiles. Element positions are set per state, and the Hidden Elements area hides an element on a given device. After adding the button, switch to the Tablets and Mobiles states and make sure it has not landed in Hidden Elements.
Headers are assigned globally under Theme Options > Pages Layout and in each page's Page Layout settings. If your Donate page uses a different header, check it there.
Which Impreza speed settings affect the form?
Impreza's site loading guide sends you to Theme Options > Advanced > Website Performance and suggests turning on Optimize JS and CSS size, then clicking Auto Optimize. Its docs add one rule: click Auto Optimize again every time you add a new element to your content. If you built the site before adding the donation page, run Auto Optimize once more after publishing it.
Impreza's FAQ names three options to turn off when theme features stop working: Move jQuery scripts to the footer, Disable jQuery migrate script and Dynamically load theme JS components. The donation form's own script does not use jQuery, so these should not affect it, but they are the first things Impreza support asks about.
Impreza suggests WP Super Cache, WP Fastest Cache or WP Rocket for page caching. The donation form page is safe to cache because it uses no nonce. The donor portal and receipt links send no-cache headers automatically.
If your cache plugin delays or combines JavaScript and the card fields or PayPal buttons do not show, exclude these from that setting, or turn it off for the donation page:
js.stripe.comwww.paypal.com/sdk/jswp-content/plugins/donor-merchant/assets/js/donor-merchant.js
More detail is in page caching and donation forms.
Does Impreza's cookie notice block the payment form?
No. Impreza's built-in Cookie Notice only shows a message and sets a cookie when the visitor clicks the button. The GDPR Compliance switch in Theme Options > General only holds back the Map and Video elements until consent is given. Neither one blocks Stripe or PayPal scripts. If you use a separate consent plugin, check that it does not block js.stripe.com or the PayPal script on the donation page.
How do I match the form to my Impreza colors?
Impreza's site colors live at Theme Options > Colors. The Primary Color is used for highlights across many elements, and you may also have Custom Global Colors. Copy the hex value of the color your main buttons use. Then go to Donor Merchant > Settings > Forms > Form style, choose Custom, paste it and check the live preview. Pick Pill, Rounded or Sharp to match the corners of your buttons under Theme Options > Button Styles.
If you use Impreza's Dark Theme option or the Color Scheme Switch, the form stays a white card in both modes. Its optional heading takes no color of its own, so check it in dark mode; if it turns light, add .dm-form .dm-form__title { color: #1e2430; } as custom CSS. The card fields are drawn by Stripe inside a secure frame that theme CSS does not reach. See form settings for the rest.
Before you launch
- Make a small real donation and confirm it appears under Donor Merchant > Donations.
- If you offer recurring gifts, set up webhooks so renewals are recorded.
- Check the header button in all four header states.
- Run Auto Optimize after adding the donation page, then clear your page cache.