House Ads in the official Ad Plugin

(Neil Lalonde) #1

I’ve been working on adding support for house ads in the ad plugin and would like some feedback about how you’d use it. Here’s a video to demonstrate how I have it working now:

You define a set of ads using html and the usual theme support, and then add them to the ad placements that are currently available. If the ads or placement settings are changed, clients pick up the changes immediately. Placements with more than one ad will cycle through them evenly in order, starting with a random one.

Right now, house ads will always show instead of other configured ad networks. I’m not sure what the rules here should be.

It would be useful to mix house ads with another ad network like AdSense in the same ad slot. Maybe a setting like “show a house ad after X other ads have been shown”. Setting to 1 means half ads shown will be house ads, 3 means house ads 25% of the time, etc.

@ked @omarfilip @Rafa Any thoughts?

Also, this feature may make the Amazon part of the plugin obsolete. It sounds like the Amazon ad settings aren’t meeting people’s needs, so it would be nice to remove the Amazon code from the plugin in favour of house ads.

Using DFP to show house ads
I want adverts, but only local adverts from local businesses
Using DFP to show house ads

The immediate benefit that comes to mind is (potential) avoidance of ad blockers and general privacy issues associated with network ads.

At the moment Google Ad Manager serves the purpose to show my house and directly sold ads and it fills in remaining inventory with AdSense ads.

Allotting a percentage for house ads in a mixed ad setup could complicate reporting in Google Ad Manager, I think.

(Neil Lalonde) #3

Yes DFP can definitely do it all, but as you say this feature shouldn’t be detectable by ad blockers. And I’ve already been trying to recommend DFP as the solution for serving house ads, but the answer is usually that DFP is too hard to understand.


Yes, this can definitely be the preferred method for anyone looking for a simpler ad serving solution.

(Pad Pors) #5

just curious, is this the output of house ads?

it’s an interesting action from meta, your choices are inspiring and human-based :clap:. I hope the business goes forward strongly as always.

(Rafael dos Santos Silva) #6

Yes, we are testing the new feature here on Meta for now so we can check for bugs.

(Sat) #7

This will be a great plugin! thanks for making it. Here are my thoughts…

  • It will be good if there is ad rotation for the same spot, in house ads. This will also help to promote sites important posts.
  • Time based ads is also a good idea, 50% in house ads and 50% other type of ads.
  • Provide option for text link, html ads and also banner ads? May be admin can upload banner and provide related link. This ads can run on posts only.
1 Like
(Stephen) #8

If you’ve been browsing Meta you should see that the adverts at the bottom of the page are rotating.

(Justin DiRose) #9

I haven’t played around with the ad plugin yet, but is it possible to run house ads alongside network ads? I may have a use case for that in the community I run.

(Neil Lalonde) #10

This is all currently possible because you can make text links and show images with simple html. Upload your assets in a staff-only topic or in the theme component where your house ads’ css is defined.

That’s the idea. Something like this is what I’m thinking of going with:

How would you want to serve them alongside another ad network?

(Mustachian Post) #11

Amazing work, very timely as it avoided me going through the full setup of Google Ad Manager :slight_smile: Thanks a lot for your work!

(Jeremie Leroy) #12

@neil, Great plugin,

1- I was wondering, how to make the image responsive, it is not good on the mobile version. I use the below code

I added it here ->

<a href="#" class="h-creative h-donate"> <div> <img src=""> </div> </a>

2- is there a way to track the number of views on the image and number of clicks ?

Many thanks

1 Like
(David Kingham) #13

You can make it responsive by adding this to your css

.house-creative > p > img {
    max-width: 100%;
    height: auto;

.widget-connector {
    max-width: 800px;

@media only screen and (max-width: 800px) {
    .widget-connector {
        max-width: 100%;
        height: auto;

EDIT 2: Had to add an @media for the inline ads as well because they were spilling outside the container.

EDIT: I also had to add this to center the inline ads on mobile, be sure to add it your mobile only css {
    margin: 0px 10px 0px 10px;

I would recommend using UTM links or using bitly would be very simple.

@neil I love this plugin, the only improvement I would like to see is to have the ability to show different ads to anon vs logged in users on top of the existing ability of having them hidden altogether for specific groups.

(Michael - #14

It would be better to make it a percentage otherwise you cannot go above 50% house ads. And it will be more intuitive.

(Rafael dos Santos Silva) #15

You can put both versions inside each ad, and hide the appropriate when .anon is on the body using CSS.

(Neil Lalonde) split this topic #16

4 posts were split to a new topic: AdPlugin: hide for groups not working

(Neil Lalonde) #17

Hmm I can’t reproduce it. I changed meta so that people in the “Team” group don’t see ads (we already wear Discourse shirts and socks every day). Anon can still see ads and I can’t. Seems to be working.

Sure, percentages work too.


There are other reasons not to use Google for managing your house ads besides complexity, but that’s reason enough. I’m really looking forward to using this, and we would only be using it for house ads 100% of the time.

1 Like
(Pradeep Kumar) #19

Implemented this on our DeviceBAR Forum, it’s so cool. I totally love it. I just have to figure out the mobile responsiveness part now. Looking forward to seeing more updates related to this plugin.

(Jeremie Leroy) #23

@pradeepkumar Nice one, Below is ours with the code, please let us know when you find out about the responsiveness on mobile ;).


<a href="">
       <img src="">