Placements are pre-defined places in your theme and posts that you can use in order to deliver ads.

You can use them to change ads and ad groups in the same place without the need to change your templates.

Placement Types

Advanced Ads comes with 7 placements. Add-ons provide even more of them.

manual placement
Manual Placement


The Manual Placement is not visible automatically in your content but must be added using a shortcode or function. It is best used when placing ads in specific positions in your template files and allow to change the content of the placement easily later.

Header Code


Use the Header Code placement in order to place any kind of code before the closing </head>  tag of your theme. This placement is not for visible ads. Common use cases are header tags from ad networks (e.g. Google DoubleClick for Publishers) or custom styles and scripts.

Footer Code


The Footer Code placement injects the ad into the footer – before the closing </body> tag. It would be visible, but more often, this placement is used in order to run scripts or add styles.

ad before content
Before Content


Injects the ad before the content of the post or page.

ad placement after content
After Content


Injects the ad after the content of the post or page.

ad placement within the content


Injects the ad into the content of posts and other public pages. You can also select the index of the paragraph or headline after or before which the ad should be displayed. Learn more about post content injection.

widget for ads
Sidebar Widget


Injects the ad into widgets to display it in the sidebar or in the footer Learn more about the sidebar widget.

place ad on random position
Random Paragraph


Injects the ad after a random paragraph in the main content. It is meant to fight ad blindness. Included in Advanced Ads Pro.

ad above main headline
Above Headline


Injects the ad before the main headline (h1) on singular pages. Included in Advanced Ads Pro.

ad in the middle of post
Content Middle


Injects the ad in the middle of the content – based on the paragraphs. Included in Advanced Ads Pro.

custom ad position placement
Custom Position


Attach the ad to any element in the frontend. This placement includes a frontend picker which helps you to select the element in the frontend without any coding. Included in Advanced Ads Pro, Video.

archive post list ad placement
Post Lists


Display the ad between posts on post lists, e.g. home, categories, archives, search. Included in Advanced Ads Pro, Video.

Placement for background ads
Background Ads


Display the ad in the page background (skin ad). Included in Advanced Ads Pro, Manual.

Placement for ad server
Ad Server

Display ads on other websites that don’t use Advanced Ads or even WordPress. Included in Advanced Ads Pro, See also Ad Server for WordPress
sticky header bar
Header Bar


The Header Bar placement is fixed at the top of your page and not moving away when users scroll down. It is not only interesting for ads but for navigations, internal promotions or any kind of content you want to have fixed on top. Included in Sticky Ads.

footer bar
Footer Bar


The Footer Bar placement is practically the same as the Header Bar. It is a very common use case for the Sticky Ads add-on and can perform very well. Included in Sticky Ads.

left sticky sidebar placement
Left Sidebar


The Left Sidebar allows you to attach an ad to your content box. You can also define whether this ad should stay put while users are scrolling down or not and to adjust the main content element just in case it is not recognized by the plugin automatically. Included in Sticky Ads.

Right Sidebar Placement
Right Sidebar


The Right Sidebar works exactly like the Left Sidebar allowing you to inject an ad on the right side of your main container. Included in Sticky Ads.

Left Bar Placement
Left Bar


The Left Bar is similar to the Sidebar Ads. The difference is that they are not attached to the main content box, but the browser window. You can also select whether to fix the ad to the screen or let it be scrolled away. Included in Sticky Ads.

Right Bar Placement
Right Bar


The Right Bar is similar to the Left Bar attached to the browser window. You can also select whether to fix the ad to the screen or let it be scrolled away. Included in Sticky Ads.

layer placement icon
PopUp and Layer ads


Create a PopUp or Layer with an ad or any other type of content. This placement comes with different effects like showing up after scrolling or when a user wants to leave. You can also activate a close button and a timeout. Included in PopUp and Layer Ads.

AdSense In-feed position
AdSense In-feed


This placement is dedicated to the AdSense In-feed ads, placed between posts on homepages, category, and archive pages.
Included in AdSense In-feed

Genesis logo
Genesis Ads


If you are using a theme based on Genesis then you definitely want to try this placement out. It offers access to very unique placements for ads.
Included in Genesis Ads

BuddyBoss adsBuddyBoss 

Injects the ad into the BuddyBoss activity streams. Included in Advanced Ads Pro.
BuddyPress Placement Icon
BuddyPress Content


Injects the ad into BuddyPress pages depending on the selected hook. Included in Advanced Ads Pro.

bbPress static content
bbPress Static Content


The bbPress static content placement provides hooks to inject ads into multiple positions on the /forums, /forums/name or /forums/topic/name pages generated by bbPress. Included in Advanced Ads Pro.

BuddyPress reply
bbPress Reply Content


The bbPress reply content placement provides hooks to inject your ads at the nth reply on /forums/topic/name pages. Included in Advanced Ads Pro.

More details about each placement

Manual Placement

This placement type if for manually added placements. You can display it using a shortcode or function (see below).

To display the content of the manual placement with the ID header-left in your template file uses the following function.

<?php if(function_exists('the_ad_placement')) the_ad_placement('header-left'); ?>
Code language: HTML, XML (xml)

To display the content of the placement with the ID header-left in your post content use the following shortcode.

Code language: JSON / JSON with Comments (json)

You can use the same placement multiple times. This might be handy in case you want to use the position in the middle of each post. Simply include the placements shortcode with the same ID in each of the posts.

Header Code

The ad injection into the header happens technically before the closing </head> tag. This position is normally not meant for output even though browsers will normally display an ad here.

This position might be used to enter a tracking code or load some external scripts. Some ad networks need those.

To work, your theme needs the wp_head() function. This can normally be found in the file header.php  and is a quasi-standard for WordPress themes. Anyway, without it, there is no auto-injection into the header possible.

Footer Code

The ad injection into the footer relies on the wp_footer()  function that can normally be found in your footer.php  file or your theme.

Before and After Content

Injection an ad to a post or page will only work on single pages, e.g. not on category pages or your front page (in case you display the latest posts there).

If you use other plugins that add content before or after post contents (e.g. list of related posts) it is not possible to say whether the ad is posted before or after that additional content. Developers might want to play with the hook priority here.

Post Content Injection

Information about the Content ad injection.

Post Lists

The Post Lists placement makes use of the the_post()  function that is used in most themes to list posts. However, if your theme does not run this function, you can only use a manual placement to put ads between posts. Check out this tutorial for more information.

Creating a placement

Visit Ads > Placements to add and manage placements from your dashboard.

If you already have placements then click on the Create a new placement button below the placement table.

1. Choose a placement type

First of all, you need to decide which type of placement you are going to create. Refer to the list of placements above to choose the right one.

2. Choose a Name

Enter a readable name for a placement. The name of the placement is only visible to you. Tip: choose a descriptive one, e.g. Below Post Headline.

3. Choose Ad or Ad Group

Select the ad or ad group that should be delivered through the placement. It can be empty if you haven’t yet created the ad.

4. Save New Placement

Click the Save New Placement button. The placement should now appear on the placement list.

5. Choose Options and select an item

Now check the placement table.

In the Options column, you will find options that depend on the placement type you chose.

6. Save the options

If you changed options then click the Save Placements button below the table to save your placements.

General Settings

Change the order of injected elements

By default, Advanced Ads tries to inject ads to the post content as late as possible. However, this might not always be your intention. To change the priority of the injection, use the following option in Advanced Ads > Settings > General.

content injection priority option

Tip: Most injections have a priority between 1 and 20, so when trying to find the right value, start with 10 or 20.

Unlimited ad injection

Some plugins and themes trigger ad injection where it shouldn’t happen. Therefore, Advanced Ads ignores injected placements on non-singular pages and outside the loop. However, this can cause problems with some themes. You can enable this option if you don’t see ads or want to enable ad injections on archive pages at your own risk.

You find this setting in Advanced Ads > Settings > General.

unlimited ad injection option

Set this option to -1 in order to enable unlimited ad injection at your own risk, set it to 0 to keep it disabled or choose a positive number to enable the injection only in the first x posts on your archive pages. In the example above, ads are injected into the first 5 posts.

Adding display and visitor conditions to Placements

Since Advanced Ads Pro 2.7 you can add the display and visitor conditions not only to ads but also directly to your placements. A typical use case could be the delivery of anchor sticky ads only on mobile devices.

Advanced Ads Pro provides the option to add conditions to placements.
Advanced Ads Pro provides the option to assign display and visitor conditions directly to your placements.

Advanced Ads checks the conditions at placement level before those that you assign to specific ad units. The conditions at the ad level do not overwrite those at the placement level. If you assign conditions to both the placement and ad unit, they need to match for the respective ad to appear. You can only refine them.


If you add the device Visitor Condition “Is mobile” to a placement, but the ad assigned there has the Visitor Condition “Is Desktop”, this ad will not appear because these two conditions can never match at the same time.

Placement Tests

With Advanced Ads Pro you can rotate placements. This means one or different ads appear on random placements and allows you to test which placements perform better or to fight ad blindness.

You can learn all about this feature in this tutorial.

What else you need to know

Container id

The placements class is based on the placement name and the prefix. The prefix is derived from the ID Prefix option set under Advanced Ads > Settings > General. e.g. prefix-post-content. You can use this information to style the ads using CSS or target them with JavaScript.

Is your placement not showing up? Please take a look at Ads not showing up.