AdRotate Banner Manager - Version 5.8.26

Version Description

Enjoy this update with the latest tweaks and improvements for AdRotate for WordPress!

Download this release

Release Info

Developer adegans
Plugin Icon 128x128 AdRotate Banner Manager
Version 5.8.26
Comparing to
See all releases

Code changes from version 5.8.25 to 5.8.26

adrotate-manage-publisher.php CHANGED
@@ -127,6 +127,7 @@ function adrotate_insert_input() {
127
 
128
  if(current_user_can('adrotate_ad_manage')) {
129
  if(strlen($title) < 1) $title = 'Advert '.$id;
 
130
 
131
  // Clean up bannercode
132
  if(preg_match("/%ID%/", $bannercode)) $bannercode = str_replace('%ID%', '%id%', $bannercode);
@@ -282,6 +283,7 @@ function adrotate_insert_group() {
282
 
283
  if(current_user_can('adrotate_group_manage')) {
284
  if(strlen($name) < 1) $name = 'Group '.$id;
 
285
 
286
  if($modus < 0 OR $modus > 2) $modus = 0;
287
  if($adspeed < 0 OR $adspeed > 99999) $adspeed = 6000;
127
 
128
  if(current_user_can('adrotate_ad_manage')) {
129
  if(strlen($title) < 1) $title = 'Advert '.$id;
130
+ $title = str_replace('"', "", $title);
131
 
132
  // Clean up bannercode
133
  if(preg_match("/%ID%/", $bannercode)) $bannercode = str_replace('%ID%', '%id%', $bannercode);
283
 
284
  if(current_user_can('adrotate_group_manage')) {
285
  if(strlen($name) < 1) $name = 'Group '.$id;
286
+ $name = str_replace('"', "", $name);
287
 
288
  if($modus < 0 OR $modus > 2) $modus = 0;
289
  if($adspeed < 0 OR $adspeed > 99999) $adspeed = 6000;
adrotate-output.php CHANGED
@@ -740,18 +740,20 @@ function adrotate_notifications_dashboard() {
740
  }
741
  }
742
 
743
- // Finish update
744
- // Keep for manual updates
745
- $adrotate_db_version = get_option("adrotate_db_version");
746
- $adrotate_version = get_option("adrotate_version");
747
- if($adrotate_db_version['current'] < ADROTATE_DB_VERSION OR $adrotate_version['current'] < ADROTATE_VERSION) {
748
- echo '<div class="ajdg-notification notice" style="">';
749
- echo ' <div class="ajdg-notification-logo" style="background-image: url(\''.plugins_url('/images/notification.png', __FILE__).'\');"><span></span></div>';
750
- echo ' <div class="ajdg-notification-message">Thanks for updating <strong>'.$displayname.'</strong>! You have almost completed updating <strong>AdRotate</strong> to version <strong>'.ADROTATE_DISPLAY.'</strong>!<br />To complete the update <strong>click the button on the right</strong>. This may take a few seconds to complete!<br />For an overview of what has changed take a look at the <a href="https://ajdg.solutions/support/adrotate-development/?pk_campaign=adrotatefree&pk_keyword=finish_update_notification" target="_blank">development page</a> and usually there is an article on <a href="https://ajdg.solutions/blog/" target="_blank">the blog</a> with more information as well.</div>';
751
- echo ' <div class="ajdg-notification-cta">';
752
- echo ' <a href="'.admin_url('admin.php?page=adrotate-settings').'&tab=maintenance&action=update-db" class="ajdg-notification-act button-primary update-button">Finish update</a>';
753
- echo ' </div>';
754
- echo '</div>';
 
 
755
  }
756
  }
757
 
740
  }
741
  }
742
 
743
+ if(current_user_can('update_plugins')) {
744
+ // Finish update
745
+ // Keep for manual updates
746
+ $adrotate_db_version = get_option("adrotate_db_version");
747
+ $adrotate_version = get_option("adrotate_version");
748
+ if($adrotate_db_version['current'] < ADROTATE_DB_VERSION OR $adrotate_version['current'] < ADROTATE_VERSION) {
749
+ echo '<div class="ajdg-notification notice" style="">';
750
+ echo ' <div class="ajdg-notification-logo" style="background-image: url(\''.plugins_url('/images/notification.png', __FILE__).'\');"><span></span></div>';
751
+ echo ' <div class="ajdg-notification-message">Thanks for updating <strong>'.$displayname.'</strong>! You have almost completed updating <strong>AdRotate</strong> to version <strong>'.ADROTATE_DISPLAY.'</strong>!<br />To complete the update <strong>click the button on the right</strong>. This may take a few seconds to complete!<br />For an overview of what has changed take a look at the <a href="https://ajdg.solutions/support/adrotate-development/?pk_campaign=adrotatefree&pk_keyword=finish_update_notification" target="_blank">development page</a> and usually there is an article on <a href="https://ajdg.solutions/blog/" target="_blank">the blog</a> with more information as well.</div>';
752
+ echo ' <div class="ajdg-notification-cta">';
753
+ echo ' <a href="'.admin_url('admin.php?page=adrotate-settings').'&tab=maintenance&action=update-db" class="ajdg-notification-act button-primary update-button">Finish update</a>';
754
+ echo ' </div>';
755
+ echo '</div>';
756
+ }
757
  }
758
  }
759
 
adrotate.php CHANGED
@@ -6,7 +6,7 @@ Author: Arnan de Gans
6
  Author URI: https://www.arnan.me/?pk_campaign=adrotatefree&pk_keyword=plugin_info
7
  Description: Monetize your website with adverts while keeping things simple. Start making money today!
8
  Text Domain: adrotate
9
- Version: 5.8.25
10
  License: GPLv3
11
  */
12
 
@@ -21,7 +21,7 @@ License: GPLv3
21
  ------------------------------------------------------------------------------------ */
22
 
23
  /*--- AdRotate values ---------------------------------------*/
24
- define("ADROTATE_DISPLAY", '5.8.25');
25
  define("ADROTATE_VERSION", 399);
26
  define("ADROTATE_DB_VERSION", 68);
27
  $plugin_folder = plugin_dir_path(__FILE__);
@@ -485,13 +485,14 @@ function adrotate_options() {
485
 
486
  $active_tab = (isset($_GET['tab'])) ? sanitize_key($_GET['tab']) : 'general';
487
  $status = (isset($_GET['status'])) ? sanitize_key($_GET['status']) : '';
 
488
 
489
  if(!is_numeric($status)) $status = 0;
490
 
491
  $action = (isset($_GET['action'])) ? sanitize_key($_GET['action']) : '';
492
- if($action == 'update-db') adrotate_check_upgrade();
493
- if($action == 'reset-tasks') adrotate_check_schedules();
494
- if($action == 'disable-3rdparty') adrotate_disable_thirdparty();
495
  ?>
496
 
497
  <div class="wrap">
6
  Author URI: https://www.arnan.me/?pk_campaign=adrotatefree&pk_keyword=plugin_info
7
  Description: Monetize your website with adverts while keeping things simple. Start making money today!
8
  Text Domain: adrotate
9
+ Version: 5.8.26
10
  License: GPLv3
11
  */
12
 
21
  ------------------------------------------------------------------------------------ */
22
 
23
  /*--- AdRotate values ---------------------------------------*/
24
+ define("ADROTATE_DISPLAY", '5.8.26');
25
  define("ADROTATE_VERSION", 399);
26
  define("ADROTATE_DB_VERSION", 68);
27
  $plugin_folder = plugin_dir_path(__FILE__);
485
 
486
  $active_tab = (isset($_GET['tab'])) ? sanitize_key($_GET['tab']) : 'general';
487
  $status = (isset($_GET['status'])) ? sanitize_key($_GET['status']) : '';
488
+ $noncense = (isset($_GET['_wpnonce'])) ? sanitize_key($_GET['_wpnonce']) : false;
489
 
490
  if(!is_numeric($status)) $status = 0;
491
 
492
  $action = (isset($_GET['action'])) ? sanitize_key($_GET['action']) : '';
493
+ if($action == 'update-db' AND $noncense !== false) adrotate_check_upgrade();
494
+ if($action == 'reset-tasks' AND $noncense !== false) adrotate_check_schedules();
495
+ if($action == 'disable-3rdparty' AND $noncense !== false) adrotate_disable_thirdparty();
496
  ?>
497
 
498
  <div class="wrap">
dashboard/publisher/adverts-generator.php CHANGED
@@ -49,7 +49,7 @@ if($edit_banner) {
49
  <select tabindex="1" id="adrotate_fullsize_dropdown" name="adrotate_fullsize_dropdown" style="min-width: 300px;">
50
  <option value=""><?php _e('Select advert image', 'adrotate'); ?></option>
51
  <?php
52
- foreach(adrotate_dropdown_folder_contents(WP_CONTENT_DIR."/".$adrotate_config['banner_folder'], array('jpg', 'jpeg', 'gif', 'png'), 0) as $key => $option) {
53
  echo "<option value=\"$option\">$option</option>";
54
  }
55
  ?>
49
  <select tabindex="1" id="adrotate_fullsize_dropdown" name="adrotate_fullsize_dropdown" style="min-width: 300px;">
50
  <option value=""><?php _e('Select advert image', 'adrotate'); ?></option>
51
  <?php
52
+ foreach(adrotate_dropdown_folder_contents(WP_CONTENT_DIR."/".$adrotate_config['banner_folder'], array('jpg', 'jpeg', 'gif', 'png')) as $key => $option) {
53
  echo "<option value=\"$option\">$option</option>";
54
  }
55
  ?>
dashboard/settings/maintenance.php CHANGED
@@ -71,13 +71,13 @@
71
  <tr>
72
  <th valign="top"><?php _e('Background tasks', 'adrotate'); ?></th>
73
  <td colspan="3">
74
- <a class="button" href="admin.php?page=adrotate-settings&tab=maintenance&action=reset-tasks"><?php _e('Reset background tasks', 'adrotate'); ?></a>
75
  </td>
76
  </tr>
77
  <tr>
78
  <th valign="top"><?php _e('Unsupported plugins', 'adrotate'); ?></th>
79
  <td colspan="3">
80
- <a class="button" href="admin.php?page=adrotate-settings&tab=maintenance&action=disable-3rdparty"><?php _e('Disable 3rd party plugins', 'adrotate'); ?></a><br />
81
  <?php if(is_plugin_active('adrotate-extra-settings/adrotate-extra-settings.php') OR is_plugin_active('adrotate-email-add-on/adrotate-email-add-on.php') OR is_plugin_active('ad-builder-for-adrotate/ad-builder-for-adrotate.php') OR is_plugin_active('extended-adrotate-ad-placements/index.php')) { ?>
82
  <span style="color:#CC2900;"><?php _e('One or more unsupported 3rd party plugins detected.', 'adrotate'); ?></span><br />
83
  <?php } ?>
@@ -98,7 +98,7 @@
98
  <tr>
99
  <th valign="top"><?php _e('Manual upgrade', 'adrotate'); ?></th>
100
  <td colspan="3">
101
- <a class="button" href="admin.php?page=adrotate-settings&tab=maintenance&action=update-db" onclick="return confirm('<?php _e('YOU ARE ABOUT TO DO A MANUAL UPDATE FOR ADROTATE.', 'adrotate'); ?>\n<?php _e('Make sure you have a database backup!', 'adrotate'); ?>\n\n<?php _e('This might take a while and may slow down your site during this action!', 'adrotate'); ?>\n\n<?php _e('OK to continue, CANCEL to stop.', 'adrotate'); ?>')"><?php _e('Run updater', 'adrotate'); ?></a>
102
  </td>
103
  </tr>
104
  </table>
71
  <tr>
72
  <th valign="top"><?php _e('Background tasks', 'adrotate'); ?></th>
73
  <td colspan="3">
74
+ <a class="button" href="<?php echo wp_nonce_url('admin.php?page=adrotate-settings&tab=maintenance&action=reset-tasks', 'adrotate_maintenance'); ?>"><?php _e('Reset background tasks', 'adrotate'); ?></a>
75
  </td>
76
  </tr>
77
  <tr>
78
  <th valign="top"><?php _e('Unsupported plugins', 'adrotate'); ?></th>
79
  <td colspan="3">
80
+ <a class="button" href="<?php echo wp_nonce_url('admin.php?page=adrotate-settings&tab=maintenance&action=disable-3rdparty', 'adrotate_maintenance'); ?>"><?php _e('Disable 3rd party plugins', 'adrotate'); ?></a><br />
81
  <?php if(is_plugin_active('adrotate-extra-settings/adrotate-extra-settings.php') OR is_plugin_active('adrotate-email-add-on/adrotate-email-add-on.php') OR is_plugin_active('ad-builder-for-adrotate/ad-builder-for-adrotate.php') OR is_plugin_active('extended-adrotate-ad-placements/index.php')) { ?>
82
  <span style="color:#CC2900;"><?php _e('One or more unsupported 3rd party plugins detected.', 'adrotate'); ?></span><br />
83
  <?php } ?>
98
  <tr>
99
  <th valign="top"><?php _e('Manual upgrade', 'adrotate'); ?></th>
100
  <td colspan="3">
101
+ <a class="button" href="<?php echo wp_nonce_url('admin.php?page=adrotate-settings&tab=maintenance&action=update-db', 'adrotate_maintenance'); ?>" onclick="return confirm('<?php _e('YOU ARE ABOUT TO DO A MANUAL UPDATE FOR ADROTATE.', 'adrotate'); ?>\n<?php _e('Make sure you have a database backup!', 'adrotate'); ?>\n\n<?php _e('This might take a while and may slow down your site during this action!', 'adrotate'); ?>\n\n<?php _e('OK to continue, CANCEL to stop.', 'adrotate'); ?>')"><?php _e('Run updater', 'adrotate'); ?></a>
102
  </td>
103
  </tr>
104
  </table>
language/adrotate-nl_NL.mo CHANGED
Binary file
language/adrotate-nl_NL.po CHANGED
@@ -3,7 +3,7 @@ msgstr ""
3
  "Project-Id-Version: AdRotate\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2022-04-07 16:24-0600\n"
6
- "PO-Revision-Date: 2022-04-07 16:26-0600\n"
7
  "Last-Translator: Arnan de Gans <support@ajdg.solutions>\n"
8
  "Language-Team: Arnan de Gans\n"
9
  "Language: nl\n"
@@ -828,7 +828,7 @@ msgstr ""
828
 
829
  #: dashboard/publisher/adverts-disabled.php:15
830
  msgid "Disabled Adverts"
831
- msgstr "Advertenties voor uitgeschakelden"
832
 
833
  #: dashboard/publisher/adverts-disabled.php:20
834
  #: dashboard/publisher/adverts-error.php:19
3
  "Project-Id-Version: AdRotate\n"
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: 2022-04-07 16:24-0600\n"
6
+ "PO-Revision-Date: 2022-06-02 12:51-0600\n"
7
  "Last-Translator: Arnan de Gans <support@ajdg.solutions>\n"
8
  "Language-Team: Arnan de Gans\n"
9
  "Language: nl\n"
828
 
829
  #: dashboard/publisher/adverts-disabled.php:15
830
  msgid "Disabled Adverts"
831
+ msgstr "Uitgeschakelde Advertenties"
832
 
833
  #: dashboard/publisher/adverts-disabled.php:20
834
  #: dashboard/publisher/adverts-error.php:19
readme.txt CHANGED
@@ -1,50 +1,73 @@
1
  === AdRotate - Ad manager & AdSense Ads ===
2
  Contributors: adegans
3
- Donate link: https://ajdg.solutions/go/donate/adrotatefree
4
- Tags: adverts, ads, banners, advert manager, ad manager, banner manager, monetize, revenue, place banners, google, adsense, dfp, doubleclick, amazon, affiliate, referral, ClassicPress
5
  Requires at least: 4.9
6
  Requires PHP: 5.6
7
- Tested up to: 6.0
8
- Stable tag: 5.8.25
9
  License: GPLv3
10
 
11
- Manage all your advertising campaigns and affiliate banners/links with ease. Use any advert banner or link and place them anywhere on your site. Use many powerful features to run successful campaigns and increase your revenue.
12
 
13
  == Description ==
14
 
15
- AdRotate is the only advert manager you'll ever need if you are looking for an easy to use dashboard to manage all your ads and affiliate campaigns. AdRotate is easy to set up, easy to use and is built for your website and theme.
16
- AdRotate is designed to be simple to use, yet offers a set of powerful features for newcomers and experienced users alike. Manage your ads and banners like a professional.
17
-
18
- With AdRotate it's easy to set up your own ads and campaigns with standard HTML and/or Javascript code or use ads from your favorite Ad Server such as Media.net, Blind Ferret, Yahoo! ads, DFP, Google AdSense, Google Ad Manager, Bing Ads, Amazon Affiliates, Chitika, Doubleclick, JuiceAds and many more similar ad servers and affiliate programs.
19
-
20
- **Some of the AdRotate Features**
21
-
22
- * Works with any advert
23
- * Place your advert campaigns anywhere on your site
24
- * Easily manage ads
25
- * Easily manage Groups for ads
26
- * Easily manage Assets and media
27
- * Track clicks, impressions and calculate the Click-Through-Rate (CTR)
28
- * Disguise ads from ad blockers so they're less likely to be blocked
29
- * Automagically disable Ads after they expire
30
- * Use shortcodes anywhere they are supported in WordPress
31
- * Place widgets for single ads or groups of ads
32
- * Insert PHP snippets in your theme files to put ads anywhere on your site
33
- * Dashboard and Email notifications when ads are about to expire or need attention
34
- * Easily set up groups of ads in a grid, column or row
35
- * Preview ads when editing
36
- * Advert statistics
37
- * Automatically delete short running ads and stats after they expire
38
- * Advertisers can add/edit/manage their own ads
39
- * Geo Targeting for every country and city
40
- * Mobile ads
41
- * Portable ads
42
- * Export statistics to CSV files
43
- * Compatible with ClassicPress
44
-
45
- AdRotate and AdRotate Professional share many features. But some features are exclusively available in AdRotate Professional. Learn more about [AdRotate Professional](https://ajdg.solutions/product-category/adrotate-pro/?pk_campaign=adrotatefree&pk_keyword=readme) on my website.
46
-
47
- **Translations**
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
49
  * English (default)
50
  * German
@@ -56,8 +79,9 @@ AdRotate and AdRotate Professional share many features. But some features are ex
56
 
57
  == Installation ==
58
 
59
- Installing AdRotate is as easy as searching for "AdRotate Arnan" or simply "AdRotate" in your plugin dashboard and clicking the "Install Now" button in your dashboards plugin page. Just like every other plugin.
60
- Once activated, a new menu called "AdRotate" appears in the WordPress navigation from which you'll handle everything in AdRotate.
 
61
 
62
  For more detailed instructions check out the [installation steps](https://ajdg.solutions/support/adrotate-manuals/installing-adrotate-on-your-website/?pk_campaign=adrotatefree&pk_keyword=readme) on the AdRotate website.
63
 
@@ -65,6 +89,12 @@ For more detailed instructions check out the [installation steps](https://ajdg.s
65
 
66
  For the full changelog check out the [development page](https://ajdg.solutions/support/adrotate-development/?pk_campaign=adrotatefree&pk_keyword=readme).
67
 
 
 
 
 
 
 
68
  = AdRotate 5.8.25 =
69
  * [update] Tested with WordPress 6
70
  * [fix] Schedules not always saving when editing adverts
1
  === AdRotate - Ad manager & AdSense Ads ===
2
  Contributors: adegans
3
+ Donate link: https://ajdg.solutions/product/adrotate-pro-single/
4
+ Tags: ads, advertising, banners, ad rotator, ad manager, adsense, ads.txt, ad rotations, affiliate, amazon, banner, google ad manager
5
  Requires at least: 4.9
6
  Requires PHP: 5.6
7
+ Tested up to: 6.0.1
8
+ Stable tag: 5.8.26
9
  License: GPLv3
10
 
11
+ Advertising is easy with AdRotate. manage, schedule, rotate and track your ads you make yourself or get from Amazon, Adsense, affliates and many more
12
 
13
  == Description ==
14
 
15
+ Are you looking for an easy to use ad manager for WordPress?
16
+ Here is what **AdRotate Banner Manager** can do for you:
17
+
18
+ * Works with every advert including; Amazon ads, affiliate networks, Google AdSense, Google Ad Manager, DoubleClick, DFP or media.net ads
19
+ * No limit on how many ads you make
20
+ * Blocks for the WordPress block editor
21
+ * Advanced error checking for adverts you create yourself
22
+ * Track clicks and impressions
23
+ * Advert previews when editing them
24
+ * Get quick and personal support through my support forums
25
+ * In constant development since 2008
26
+
27
+ = Ad management with AdRotate =
28
+
29
+ * Create and display unlimited ad units
30
+ * Automatic ad rotation per pageload of every few seconds
31
+ * Plan ahead and schedule your ads
32
+ * Place adverts on your website with blocks, widgets, shortcodes or PHP snippets
33
+ * Inject ads into posts and pages without coding in a few clicks
34
+ * Create your own adverts with basic HTML with the advert generator
35
+ * Place banners and ads from many ad and affiliate networks such as Google AdSense, Google Ad Manager, Amazon, BuySellAds, DoubleClick, DFP, media.net and many more
36
+ * Place affliate banners from websites like Amazon affiliates, Booking.com, Agoda, Getyourguide, Tradedoubler and many more
37
+ * Create Groups of adverts to show one or many ads in one location
38
+ * Configure Groups of adverts to show in a grid
39
+ * Upload banner images through the WordPress media manager or AdRotates asset manager
40
+ * And more...
41
+
42
+ = Showing your adverts anywhere on your WordPress website =
43
+
44
+ * Use shortcodes to place ads manually in post and page content, widgets, blocks, page builders (such as Elementor and WP Bakery) and anywhere shortcodes are supported
45
+ * Auto-inject ads into Posta and Pages via Post Injection
46
+ * Widgets and blocks for ads and groups
47
+ * Use PHP snippets to place ads directly in your theme files
48
+
49
+ = In AdRotate Pro =
50
+
51
+ **AdRotate Professional** is the premium version of **AdRotate Banner Manager** offering even more features and functionality:
52
+
53
+ * Set up filters to show or hide ads on device types like tablets and phones
54
+ * Optionally hide hide banners for logged-in visitors
55
+ * Live previews for adverts
56
+ * Geo Targeting for every advert using my FREE geo targeting service or select paid services such as MacMind GeoIP and Cloudflare
57
+ * Add multiple schedules to adverts for even more control
58
+ * Enable advanced filters for showing adverts based on how busy your website is with a schedule
59
+ * Decide what days of the week and between which hours adverts should show up with schedules
60
+ * Keep using the plugin after the license expires - Or get a new license at a big discount
61
+ * Manage your ads.txt file
62
+ * Hide your adverts from adblockers
63
+ * Manage your header code snippets from networks such as Google Ad Manager and Google Auto adverts
64
+ * Upload HTML5 adverts as a zipfile for easy setup
65
+ * Option to either track clicks or impressions, or both
66
+ * Ticket support right from your dashboard
67
+
68
+ Learn all about [AdRotate Banner Manager](https://ajdg.solutions/product/adrotate-banner-manager/) and [AdRotate Pro](https://ajdg.solutions/product/adrotate-pro-single/) on my website!
69
+
70
+ = Translations =
71
 
72
  * English (default)
73
  * German
79
 
80
  == Installation ==
81
 
82
+ Installing AdRotate is as easy as searching for "AdRotate" or "AdRotate Arnan" in your plugin dashboard and clicking the "Install Now" button.
83
+ Once activated, a new menu called "AdRotate" appears in the WordPress navigation.
84
+ From this menu you'll handle everything in **AdRotate Banner Manager**.
85
 
86
  For more detailed instructions check out the [installation steps](https://ajdg.solutions/support/adrotate-manuals/installing-adrotate-on-your-website/?pk_campaign=adrotatefree&pk_keyword=readme) on the AdRotate website.
87
 
89
 
90
  For the full changelog check out the [development page](https://ajdg.solutions/support/adrotate-development/?pk_campaign=adrotatefree&pk_keyword=readme).
91
 
92
+ = AdRotate 5.8.26 =
93
+ * [fix] Advert generator dropdown now looks in subfolders for images
94
+ * [change] Double quotation marks no longer allowed in names
95
+ * [change] Added nonces to maintenance features
96
+ * [i18n] Fixed several Dutch phrases
97
+
98
  = AdRotate 5.8.25 =
99
  * [update] Tested with WordPress 6
100
  * [fix] Schedules not always saving when editing adverts