DMAD

Banner Ad Rotator Plugins for WordPress

Over the past week or so I’ve been testing out a bunch of plugins for rotating banner ads in WordPress and since it proved to be a task much more difficult than expected I thought I would share my experience and save you a bunch of time next time you’re looking to implement an ad rotator on your own WordPress site.

It was surprisingly difficult to find a good solution for what I thought was a fairly simple problem – just a way to manage and rotate ads inside WordPress without having to use an external 3rd party ad serving network like Google Ad Manager or Cranky Ads.

I installed and tested out about a dozen plugins but was fairly unimpressed with either how they worked or how they looked. Two of them stood out, however:

1. Ad King Pro (free)

ad-king-pro

2. Adsanity ($29)


adsanity

For my project I ended up going with Ad King Pro since it had the best UX, usability, and features of all the plugins I tested. WP Adcenter also looked pretty decent but I didn’t want to pay another $50 and not have it work the way I want it to.

One extra consideration is that if you’re hosted with WP Engine, a lot of ad rotators won’t work because they end up using the Order By Rand function, which is automatically disabled on WP Engine. Thankfully WP Engine has a way to enable that function in the WP Engine dashboard – just go to /wp-admin/admin.php?page=wpengine-common and you’ll see a way to turn it on.

WP Engine Order by Rand

I understand why WP Engine turns certain features off – for security reasons and to make sure everything runs as fast as possible. They disable a lot of inefficient plugins and they’ve even turned off (automated) automatic updates in WordPress 3.7 – a somewhat controversial move, but I understand their reasoning – and they still end up updating to the latest version of WP but on their own schedule and after they make sure it won’t break your site.

Removing the Extra Menu Item in Ad King Pro


ad-king-pro-menuOne quibble I have with Ad King Pro is that it inserts an extraneous menu item in your WordPress Admin interface. Thanks to this article by WP Beginner I was able to add the following to my functions.php file to get rid of it:

add_action( 'admin_menu', 'my_remove_menu_pages' );
function my_remove_menu_pages() {
	remove_menu_page('kpp_menu');	
}
If you’ve used and liked a a different WordPress ad rotating plugin please feel free to leave a comment below.

ADDED: One issue I had with Ad King Pro is that it tracked every impression in the database – so if you have a popular site, it will very quickly bloat your database. Within days I couldn’t even load the dashboard & the database had 1.8 million rows in it – so I modified the plugin not to track impressions (only clicks), which solved the issue.

Posted 10 years ago on 24 October 2013


About Parker

Parker Benjamin is the owner of DMAD and has been writing for the web for over 10 years. He is passionate about design, Wordpress, travel, language learning, fine dining, and online marketing. Note: Some links on this site are monetized by affiliate programs - see disclosure for more details.


5 thoughts on “Banner Ad Rotator Plugins for WordPress

  1. Austin Gunter (@austingunter) says:

    Hey Max, thanks for the mention here :-)

    It’s not quite accurate to say that we’re turning off automatic updates. Rather, we’re continuing to manage all WordPress updates for our customers. And, in case you missed our announcement last night, we’re actually automatically testing and QA’ing all updates on customer sites. We test for code errors automatically, and don’t update if there are issues.

    More details here: http://wpengine.com/2013/10/25/announcing-automated-upgrade-protection-wordpress-3-7/#comment-12597

    Thanks for everything you do!

    -Austin

    • I’m not sure. I’m using an older version of it that’s modified to not track clicks (had it custom reprogrammed). You can ask the developer on the plugin page if there’s a way to disable it in the updated versions.

Leave a Reply

Your email address will not be published. Required fields are marked *

css.php