Advanced Ads


Advanced Ads is a simple ad manager made by a publisher for publishers. Based on my experience delivering millions of ads per month I built this advertising plugin as a powerful, but light weight solution to not only manage and insert banners in WordPress, but to test and optimize them as well.

Full Feature List.

create and manage ads

  • create a banner is as easy as creating a post
  • group ads to create ad rotations
  • create drafts of advertisements only visible to logged in users
  • set a date for when to publish the ad
  • sell ads on your website with the Selling Ads add-on
  • import / export ads and settings
  • wizard to quickly create and place simple ads

ad types

choose between different ad types that enable you to:

  • insert code for ad and affiliate networks (e.g., AdSense, Chitika, Amazon, BuySellAds, DoubleClick)
  • dedicated support for all types of Google AdSense banners
  • display images and image banners
  • use shortcodes within ads (to also deliver advertisements from other ad plugins like AdRotate or Simple Ads Manager)
  • create content rich ads with the tinymc editor
  • use flash file advertisements including a fallback – included in Pro
  • ad group to allow ads from the same group to share conditions and settings

display ads

  • auto inject banner (see ad injection below)
  • display advertising in template files (with functions)
  • display advertising in post content (with shortcodes)
  • ad widget for sidebars and widget areas
  • display ad groups based on customizable ad weight
  • use placements in your theme to insert ads and ad groups in template files without coding
  • disable all ads on individual single pages
  • set start time and expiry date for advertising
  • display multiple ads from a banner group (ad blocks)
  • define the order of ads from an ad group and allow default ads
  • display a label, e.g. “Advertisements” above each ad
  • compatible with site builders: SiteOrigin

display conditions

show ads based on conditions like

  • individual posts, pages and other post type
  • post type
  • posts by category, tags, taxonomies
  • author
  • archive pages by category, tags, taxonomies
  • special page types like 404, attachment and front page
  • hide ads on secondary queries (e.g. posts in sidebars)
  • display or hide banners within the post feed

global conditions:

  • disable all ads in the frontend (e.g. when your ad network breaks down)
  • disable all ads on 404 pages (e.g. recommended for AdSense)
  • disable all ads on non-singular pages
  • disable all ads in secondary queries
  • disable all ads in the feed
  • hide ads from bots and web crawlers

visitor conditions

display ads by conditions based on the visitor. List of all visitor conditions

  • display or hide a banner by device: mobile and tablet or desktop
  • display or hide a banner for logged in visitors
  • hide advertising from logged in users based on their role
  • advanced visitor conditions: previous visited url (referrer), user capability, browser language, browser and device, url parameters included in Pro
  • display ads by geo location with the Geo Targeting add-on
  • display ads by browser width with the Responsive add-on

ad injection | placements

Placements to insert ads in pre-defined positions in your theme and content. List of all placements

  • ads after any given paragraph or headline in the post content
  • ads at the top of the post content
  • ads at the bottom of the post content
  • ads before closing </head> tag
  • ads page footer
  • test placements against each other with Pro
  • many more ad inserters with add-ons

ad networks

The Advanced Ads ad manager is compatible with all ad networks and banners from affiliate programs like Google AdSense, Chitika, Clickbank, Amazon, and also Google DoubleClick (DFP).
You can also use it to insert additional ad network tags into header or footer of your site without additional coding.

best support for mobile devices

  • display ads for mobile and tablets or desktop only
  • display responsive image ads (WordPress 4.4 and later)
  • ads for specific browser sizes only using Responsive Ads
  • insert ads on AMP pages with Responsive Ads

Google AdSense

  • supports all ad units, including display ads, link units, and matched content
  • switch sizes of an ad
  • switch between normal and responsive ads
  • optional limit to 3 AdSense banners according to AdSense terms of service
  • hide AdSense advertisements on 404 pages by default (to comply with AdSense terms)
  • insert Page-Level ads code globally
  • assistant for exact sizes of responsive ads with the Responsive add-on

ad blocker

  • basic features to prevent ad blocks from being removed by AdBlock and co
  • prevent ad blockers from breaking sites where plugin scripts are running

based on WordPress standards

  • integrated into WordPress using standards like custom post types, taxonomies and hooks
  • easily customizable by any WordPress plugin developer

Learn more on the plugin homepage.

Localizations: English, German, French, Spanish, Dutch, Italian, Portuguese, Vietnamese


  • Advanced Ads Pro – powerful tools for ad optimizations: cache-busting, more placements, etc.
  • Selling Ads – allows you to sell ads on your website fully automated, including payments and advertiser profiles.
  • Geo Targeting – display ads based on geo location of the visitor
  • Tracking – ad tracking and statistics
  • Responsive Ads – create mobile ads or ads for specific browser sizes
  • Sticky Ads – increase click rates with fixed, sticky, and anchor ads
  • PopUp and Layer Ads – display ads and other content in layers and popups
  • Slider – create a simple slider from your ads

If you have problems with Advanced Ads, please reach out to our support.

Displaying Ads

You can use functions and shortcodes to display ads and ad groups.

The integers in this example are the IDs of the elements.

Use these shortcode to insert an ad or ad group into your post/page.

[the_ad id="24"]
[the_ad_group id="5"]

Use these functions to insert an ad or ad group into your template file.

<?php the_ad(24); ?>
<?php the_ad_group(5); ?>

In addition to directly displaying ads and groups you can define ad placements and assign either an ad or group to them.

[the_ad_placement id="header-left"]
<?php the_ad_placement('header-left'); ?>


  • Placements that let you inject ads anywhere into your site without coding (7 in Advanced Ads + 14 through add-ons).
  • Support for all kinds of ad types, including dedicated AdSense type. AMP is included in the Responsive add-on.
  • Flexible ad input with the Plain Text ad type.
  • Align your ads within the content.
  • Choose from various conditions where and to whom to display your ads.


How to install the plugin and get it working?

Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘advanced ads’
  3. Click ‘Install Now’
  4. Activate Advanced Ads on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select from your computer
  4. Click ‘Install Now’
  5. Activate Advanced Ads in the Plugin dashboard

Using FTP

  1. Download
  2. Extract the advanced-ads directory to your computer
  3. Upload the advanced-ads directory to the /wp-content/plugins/ directory
  4. Activate Advanced Ads in the Plugin dashboard


Installation Instructions

How to install the plugin and get it working?

Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘advanced ads’
  3. Click ‘Install Now’
  4. Activate Advanced Ads on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select from your computer
  4. Click ‘Install Now’
  5. Activate Advanced Ads in the Plugin dashboard

Using FTP

  1. Download
  2. Extract the advanced-ads directory to your computer
  3. Upload the advanced-ads directory to the /wp-content/plugins/ directory
  4. Activate Advanced Ads in the Plugin dashboard
Is there a revenue share?

There is no revenue share. Advanced Ads doesn’t alter your ad codes in a way that you earn less than you would directly including the ad code in your template.


Best plugin serving ads

Best plugin ever to serve ads. Easy to use and to serve Adsense is easier than the original plugin. Even give warnings – and how to’s – if your ads doesn’t serve properly.

6 STARS from me!!!!

And I have the free version!

[ Link redacted, please do not post links in reviews ]

Great plugin! Awesome support

I’ve tried other plugins before and I really appreciate this plugin and the awesome support provided by his creator and his team. It really helps.
Plus, this plugin actually works – compared to other plugins that looked like quick and dirty fixes to try to make Adsense work in strange conditions.
No, this plugin has been well thought. Thanks Thomas!

A Huge Help & Great Plugin

The app itself is awesome, especially with geo targeting and responsive ad units. It’s allowed me to customize my advertising exactly how I wanted it with sidebar ads, in-content ads/links, etc. Couldn’t be happier with the functionality.

Thomas also solved a bug with my server that was causing some issues unrelated to Advanced Ads. He was a huge help! Support is amazing.

Highly recommended; the plugin will pay for itself in no time if used properly.

The best ads plugin out there!

There is no cleaner, reliable and mature plugin for ads withing the WordPress ecosystem. Give it a shot. Also the price for premium features (and there are plenty!) is great.


Just a happy user.

Read all 275 reviews

Contributors & Developers

“Advanced Ads” is open source software. The following people have contributed to this plugin.


“Advanced Ads” has been translated into German. Thank you to the translators for their contributions.

Translate “Advanced Ads” into your language.

Interested in development?

Browse the code or subscribe to the development log by RSS.



  • fixed issue with shortcode button that caused some page builders and scripts to break
  • fixed saving settings on multisite sub-blogs
  • applied fix to updater class
  • fixed basic fix function needed for Sticky ads


  • fix a warning that appears when wp admin bar is missing.


  • added option to also consider elements in containers for ad content injection
  • show warning in Ad Health bar when not all ads could be injected
  • added logic to display ad specific warnings and possible conflicts
  • added warning to disable shortcode button or ad blocker in order to use the visual editor for posts
  • reapplied user capabilities to create or edit ads to make sure they are never wrong
  • added warning about left and right position not working with responsive AdSense units
  • edited feedback form


  • fixed jumping “more terms” button in taxonomy conditions
  • fixed advanced JavaScript for frontend picker in Pro


  • updated local storage script
  • fixed issue causing passive-cache busting and layer not to work together


  • check if local storage is supported by the browser, if needed
  • use flexbox layout for longer input fields in conditions
  • use advanced-ads-admin-max-terms filter also for limit in author condition
  • updated EDD Updater Class for add-on updates
  • fixed error message when all placements were removed
  • fixed adblock disguise folder not working correctly on https pages


  • use the same ad block disguise settings for all sites in a multisite
  • update to advanced.js to allow injection into hidden elements
  • fixed group options being overridden, when filtered groups are being saved
  • fixed missing attribute for responsive Matched Content ads
  • fixed issue with MarketPress license check


  • add ADVANCED_ADS_DISABLE_SHORTCODE_BUTTON constant to wp-config.php in order to remove the shortcode button from the TinyMCE interface
  • don’t move ads into hidden elements
  • set license key fields to readonly after updated
  • show “reserve ad space” only for ad types where it makes sense
  • using WordPress Filesystem to create ad block disguise folder
  • disable page level ads on pages where all ads are disabled
  • hide double compatibility warning with cache-busting in Advanced Ads Pro
  • hide warning about unexcaped & in urls


  • added helpful links when download of an add-on failed
  • set active license key fields to readonly
  • bundles add-on related functions into one class
  • updated Spanish translation
  • added Vietnamese translation


  • allow Unlimited Ad Injection setting to specify the number of posts in the loop to show ads
  • allow to override specific options in functions and shortcodes
  • added feedback form on deactivation
  • fixed Visitor Conditions connector being saved wrongly first
  • fixed ads not appearing on AMP pages


  • added ADVANCED_ADS_ENABLE_REVISIONS constant to allow revisions for ads
  • fixed wrong output after using quick edit in the ads list
  • fixed custom position logic to not leave critical errors when localStorage is disabled
  • fixed update checks on every admin page impression due to W3TC object cache breaking transients


  • fix for class name sensitive systems and Tracking autoloader


  • better highlighting of AND and OR connectors in display and visitor conditions
  • removed general conditions as default from display conditions
  • highlighted video and manual links for conditions
  • show is_home and is_front_page as the same item in ad debug mode
  • show warning if plain ad code contains HTTP, but the website is using HTTPS
  • added notice if add-on licenses expired to plugin page
  • changed “mobile device” into “device” condition with better option descriptions (mobile + tablet | desktop)
  • changed “Post Content” placement label into “Content” since it is used for all post types
  • hide manage ads link in dashboard widget from users who can not edit ads
  • fixed dependency issue with Tracking add-on
  • fixed dependency issue with AJAX cache-busting
  • fixed missing scripts for ad block disguise


  • added filter to change General display conditions set
  • set ADVANCED_ADS_AD_DEBUG_FOR_ADMIN_ONLY in order to allow only admins to see ad debug mode
  • introduced advanced-ads-output-final filter
  • only check once per day for add-on updates
  • fixed one support link
  • fixed multiple add-on update checks
  • fixed error message when ad group is empty


  • highlight ads in the frontend through the “Ad Health” options
  • check if PHP DOM module is enabled and warn in “Ad Health” if not
  • added DFP debug link to “Ad Health”
  • added button to check Add-On license keys for changes
  • extended ad debug mode with more information
  • restructured support page to reach helper more quickly
  • fixed header ad bug

Changelog Archive