Brand Assets

Thanks for your interest in affiliating with Popup Maker

Below are a few guidelines for using Popup Maker’s brand resources, please take a moment to familiarize yourself with them. You can download individual assets in each section, or you can download everything all at once below.

Download All Assets

Our Name is Popup Maker

Popup Maker is two words. Always capitalize the P and the M.

Brand Name

PopupMaker

Not like this.

popup maker

Not like this.

POPUP MAKER

Not like this.

popupmaker

Not like this.

Popup Maker Colors

These are Popup Maker’s brand colors – copy the color codes below.

Brand Colors

Primary

#1dbe61

Light

#21db6f

Base

#1dbe61

Popup Maker Logo

These are Popup Maker’s marks & logos – copy or download in PNG/SVG format.

Logos & Marks

Not yet an affiliate?

Become an Affiliate
Earn commission when you recommend Popup Maker to your friends, fans & clients.
Sign Up

Popup Maker Historical Branding

These are Popup Maker’s past marks, logos & colors. Here for fun and archives.

Historical Marks, Logos & Colors
Popup Maker Logo - Archived
Popup Maker Logo - Archived
Popup Maker - Mark - Archived
Popup Maker - Mark - Archived

Primary

#9ab927

Light

#a8cb29

Base

#2d2d2d

Gray 1

#626262

Gray 2

#cacaca

Gray 3

#dfdfdf
View Categories

A/B Test or Randomly Display Popups

Given a list of popups, you can randomly display one for a given browser session. This guide gives you custom code to let you do that.

The JavaScript code below saves a cookie so that only the chosen option can be viewed by the same visitor for a browser session. That means you can run basic split tests with Popup Maker popups.

Make sure you track your popup open stats with the Popup Analytics Extension or another analytics tool.

If you’re new to using JavaScript with Popup Maker, check out our Getting Started with Custom JavaScript Doc.

Remember to customize the code variables as shown in the code sample below.

jQuery(document).ready(function($) {

// Define the configuration variables for the A/B split test.
const popups = [388, 407], // Comma-separated popup IDs. Change to your popup IDs.
cookieName = 'pum-atc-split-test', // Cookie name for this specific test. Change the name to what you want.
cookieTime = '1 month'; // Duration for the cookie to be stored. You can change this too.

// This variable will hold the ID of the chosen popup. It is initialized to false.
let chosenPopup = false;

/**
* Selects and returns a random popup ID from the `popups` array.
*
* This runs when there's no split test cookie set yet.
*/
function randomPopup() {
return popups[Math.floor(Math.random() * popups.length)];
} // Closes randomPopup()

/**
* Retrieves the chosen popup ID.
*
* - It first checks if a cookie with the chosen popup already exists.
* - If a valid cookie is found, it returns that popup ID.
* - Otherwise, it calls randomPopup() to get a new one and sets the cookie.
*/
function getChosenPopup() {
let popup;
let cookie;

// Return 0 if the cookie function is not available.
if ($.pm_cookie === undefined) {
return 0;
} // Closes if ($.pm_cookie === undefined)

// Attempt to retrieve and parse the cookie value.
cookie = parseInt($.pm_cookie(cookieName)) || false;

// If the cookie contains a valid popup ID from our array, use it.
if (cookie > 0 && popups.indexOf(cookie) !== -1) {
popup = cookie;
// If no cookie exists, choose a random popup and set the cookie.
} else if (!cookie) {
popup = randomPopup();
$.pm_cookie(cookieName, popup, cookieTime, '/');
} // Closes if/else if

return popup;
} // Closes getChosenPopup()

/**
* Event listener that fires before any popup opens.
*
* It checks if the popup is part of our split test and prevents it
* from opening if it was not the one chosen for the session.
*/
$(document).on('pumInit', '.pum', function() {
const $this = $(this);
const popupId = $this.popmake('getSettings').id;

// If the chosen popup hasn't been determined yet, get it.
if (!chosenPopup) {
chosenPopup = getChosenPopup();
} // Closes if (!chosenPopup)

// Check if the opening popup is in our test group but is NOT the chosen one.
if (popups.indexOf(popupId) >= 0 && popupId !== chosenPopup) {
// If it's not the chosen one, add a class to prevent it from opening.
$this.addClass('preventOpen');
} else {
// Otherwise, ensure the 'preventOpen' class is not present.
$this.removeClass('preventOpen');
} // Closes if/else
}); // Closes $(document).on()

}); // Closes jQuery(document).ready()

Leave the first comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.