How to make custom native banderole ads
In online advertising, banderole ads are large banner ads that stay on the page as the viewer scrolls. They are usually placed near the bottom of the page, and can be as wide as the page itself. The ad can be collapsed into a bar on the edge of the viewable area after a preset period or if the viewer clicks on the ad. Clicking on the bar reverts the ad to its default form.
You can use native templates to create banderole ad items that are tailored to your needs.
If you'd rather sanitize the template and have only HTML inside it, you should make your banderole using a styled native ad template instead. For more information on the differences between custom native ads and styled native ads, read About native ad templates.
You will learn:
- How to create a template for a custom banderole ad. You can customize the sample code to fit your needs.
- How to create a custom banderole ad item once you have a custom banderole template.
How to create a custom banderole ad template
This template will require the user to provide the URL to where the image creative is hosted when creating the banderole ad item.
- Click Native Ad Templates in the left navigation menu to go to the Templates section.
- Click Add Native Ad Template in the Native Ad Templates table. The New Native Template window will appear.
- Click Custom Rendering/API. The New Native Ad Template page will appear.
- Name the template then add an image URL variable for the image that will be in the ad. In our sample code, we called this variable ImageURL.
- Enter the code in the HTML Template (Custom Rendering) field, then click Save Changes.
Here's the code we used in our example:
<!DOCTYPE html>
<html lang="en">
<head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
<style>
.banderole-container {
position: fixed;
bottom: 0;
right: 0;
width: 100%;
background-color: rgba(0, 0, 0, 0.25);
transition: right 2s ease-in-out;
}
.banderole-image-container {
position: relative;
width: 728px;
height: 90px;
margin: 0 auto;
}
.banderole-image {
position: absolute;
top: 0;
left: 0;
width: 728px;
height: 90px;
}
.banderole-expand-button {
opacity: 0;
transition: opacity 1s;
position: absolute;
top: calc(50% - 25px);
left: -75px;
width: 50px;
height: 50px;
background: grey;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
.banderole-expand-button-icon {
font-size: 28px;
color: #ffffff;
}
.banderole-close-button-container {
position: absolute;
top: 3px;
right: 3px;
cursor: pointer;
}
.banderole-close-button {
width: 21px;
text-align: center;
display: inline-block;
color: #ffffff;
font-size: 18px;
background: #000000;
border-radius: 21px;
user-select: none;
}
</style>
</head>
<body>
<div class="banderole-container">
<div class="banderole-image-container">
<a target="_blank" href="[TRACKING_LINK]" class="banderole-image">
<img src="[%ImageURL%]">
</a>
<div class="banderole-close-button-container">
<span class="banderole-close-button" onclick="collapseBanner()">×</span>
</div>
</div>
<div class="banderole-expand-button" onclick="expandBanner()">
<i class="banderole-expand-button-icon fa fa-arrow-left"></i>
</div>
</div>
<script>
var bannerPreviouslyCollapsed = false;
function collapseBanner() {
bannerPreviouslyCollapsed = true;
document.querySelector('.banderole-container').style.right = '-100%';
setTimeout(
() => {
document.querySelector('.banderole-expand-button').style.visibility = 'visible';
document.querySelector('.banderole-expand-button').style.opacity = '1';
},
// timeout is matches the transition time on the banderole, so the
// expand button appears once banderole is completely off-screen
2000
);
}
function expandBanner() {
document.querySelector('.banderole-container').style.right = '0';
// hide button immediately instead of transitioning the opacity
document.querySelector('.banderole-expand-button').style.visibility = 'hidden';
document.querySelector('.banderole-expand-button').style.opacity = '0';
}
setTimeout(() => {
if (!bannerPreviouslyCollapsed) {
collapseBanner()
}
}, 10000);
</script>
</body>
</html>
You can now use this template to create a custom banderole ad item.
How to create a custom banderole ad item
- Go to the section of the relevant zone (Your AdButler > Publishers > Your Publisher > Your Zone) or campaign (Your AdButler > Advertisers > Your Advertiser > Your Campaign).
- Click Native (Custom Rendering/API). The New Ad Item page will appear.
- Set the ad item's size to Dynamic.
- Select your banderole custom native ad template in the Template dropdown menu.
- Fill in the rest of the fields as needed, including the image URL. If you entered a destination URL, you can test it by clicking Open Destination URL to the right of the field.
- Click Save Ad Item.