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
  • post age
  • 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.


The best!

This plugin is the best, useful and flexible.

The support is perfect too.

Congratulations to the developers!

Amazing support

I started to have problems with my adsense ads in my WordPress site, i tried different plugins and nobody knows which kind of problem i was suffering, fortunately i installed Advanced Ads and Thomas helped me to found where were my problem (related with other plugin that was broken the Adsense code). The best form to be sure that a plugin is excellent is to know that people beside it are absolutely incredible. I have no doubt that Advanced Ads is the best plugin to manage the ads of your website, including the newest Adsense ads: inarticle, related post, in feeds,etc.

Love It

I love the ease of adding my own ads on my site. Ads for my own products instead of just importing ads for others.

Read all 338 reviews

Contributors & Developers

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


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

Translate “Advanced Ads” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • hotfix for PHP below 5.4
  • fixed HTTPS warning showing up for links


  • optimizaed Wizard – fewer steps and less clutter
  • added more options to the placement box after a new ad is saved
  • load dashboard widget using AJAX
  • show a warning in Ad Health if an ad contains HTTPS, but the site is using HTTP
  • fixed problem when multiple add-ons were updated at once


  • added “Taxonomy” Display Condition
  • display arrow if an Ad Health message is a link
  • removed “jQuery not in Header” warning after we fixed all known issues
  • renamed and updated add-on updater class to use SSL only
  • updated pt_BR translation
  • added Japanese translation
  • replaced “Cheatin’ uh?” message with something useful if user role does not have required permissions
  • prevent output of Adsense ads on AMP pages if they are not converted to AMP-format with Responsive add-on


  • introduced advads_is_amp function to fix ad injections on AMP pages


  • fixed Content Age condition
  • fixed group options not changing correctly when switching types


  • added support for new AdSense InFeed and InArticle ad codes
  • create a new ad group on group page
  • add group wrapper even if the group was not edited on the group edit page
  • add the ‘advanced-ads-output-wrapper-after-content-group’ filter
  • removed unused MarketPress license code
  • removed debug page
  • removed license expires notice
  • updated composer
  • updated translation files
  • fixed issue with inheriting settings of ad group ad type
  • removed PHP notice in Import feature


This release is even larger under the hood than the following list. Please make sure to also update all your add-ons and let us know directly about any issues here.

  • new Content Age display condition added – display ads based on post age
  • allow to enable/disable ad label for each placement
  • complete rework of group and placement options
  • added Dummy ad type
  • show AdSense code form inline instead of in a popup
  • optimized workflow in wizard to show only relevant information
  • select draft, pending and future posts in the Specific Pages condition, too
  • warn if QuickStart ads from AdSense are loaded
  • show ads on AMP pages for all bots
  • properly escaped output of image ad title and alt attribute
  • removed description field from groups since we have never seen this being used, let us know when you need it though
  • updated all translation files
  • fixed wrong month names in translated versions of the ad overview list
  • fixed with small image ads not appearing on AMP pages
  • fixed missing and wrong textdomains
  • fixed search for single digit IDs in Specific Pages condition not working


  • added explicit “link ads” AdSense type with normal and responsive format
  • included link to AdSense types manual
  • optimized bot check
  • removed TinyMCE security features from links added to the rich media ad type to not break affiliate links
  • fixed error appearing when image of an image ad does not exist anymore
  • fixed wizard not going to ad parameters box automatically after selecting ad type


  • 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
  • add ad/group wrapper, if needed


  • 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