Advanced Ads - Version 1.32.0-rc.1

Version Description

Download this release

Release Info

Developer advancedads
Plugin Icon 128x128 Advanced Ads
Version 1.32.0-rc.1
Comparing to
See all releases

Code changes from version 1.31.1 to 1.32.0-rc.1

Files changed (58) hide show
  1. admin/assets/css/admin.css +1 -0
  2. admin/assets/js/admin-global.js +38 -0
  3. admin/assets/js/admin.js +14 -6
  4. admin/assets/js/conditions.js +1 -3
  5. admin/includes/ad-health-notices.php +7 -7
  6. admin/includes/class-ad-groups-list.php +1 -1
  7. admin/includes/class-admin-upgrades.php +9 -8
  8. admin/includes/class-licenses.php +2 -2
  9. admin/includes/class-meta-box.php +7 -7
  10. admin/includes/class-overview-widgets.php +23 -23
  11. admin/includes/notices.php +2 -2
  12. admin/views/ad-group.php +1 -1
  13. admin/views/ad-info.php +1 -1
  14. admin/views/ad-output-metabox.php +1 -1
  15. admin/views/conditions/ad-display-metabox.php +1 -1
  16. admin/views/conditions/ad-visitor-metabox.php +1 -1
  17. admin/views/conditions/condition-author.php +1 -1
  18. admin/views/conditions/conditions-form.php +0 -1
  19. admin/views/conditions/display-conditions-list.php +6 -1
  20. admin/views/conditions/visitor-conditions-form-top.php +1 -1
  21. admin/views/notices/welcome-panel.php +3 -3
  22. admin/views/placement-form.php +1 -1
  23. admin/views/placement-injection-top.php +6 -6
  24. admin/views/placements.php +2 -2
  25. admin/views/post-ad-settings-metabox.php +1 -1
  26. admin/views/setting-license.php +1 -1
  27. admin/views/settings/general/advanced-js.php +1 -1
  28. admin/views/settings/general/block-bots.php +1 -1
  29. admin/views/settings/general/custom-label.php +1 -1
  30. admin/views/settings/general/disable-notices.php +1 -1
  31. admin/views/settings/general/editors-manage-ads.php +1 -1
  32. admin/views/settings/license/section.php +2 -2
  33. admin/views/support-callout.php +1 -1
  34. admin/views/support.php +7 -7
  35. admin/views/upgrades/all-access.php +1 -1
  36. admin/views/upgrades/pro-tab.php +1 -1
  37. admin/views/upgrades/tracking.php +1 -1
  38. advanced-ads.php +2 -2
  39. classes/ad-expiration.php +1 -0
  40. classes/ad-health-notices.php +1 -1
  41. classes/ad_group.php +1 -1
  42. classes/ad_type_plain.php +87 -27
  43. classes/display-conditions.php +9 -6
  44. classes/frontend_checks.php +2 -2
  45. classes/plugin.php +1 -1
  46. classes/visitor-conditions.php +2 -2
  47. languages/advanced-ads.pot +71 -49
  48. modules/ad-blocker/admin/views/setting-use-adblocker.php +1 -1
  49. modules/ads-txt/admin/views/setting-create.php +4 -2
  50. modules/gadsense/admin/admin.php +1 -1
  51. modules/gadsense/admin/views/adsense-account.php +5 -4
  52. modules/gadsense/admin/views/adsense-ad-parameters.php +1 -1
  53. modules/gadsense/includes/class-mapi.php +1 -1
  54. modules/gadsense/includes/class-network-adsense.php +2 -2
  55. modules/gutenberg/includes/class-gutenberg.php +4 -1
  56. modules/privacy/admin/admin.php +3 -3
  57. public/views/ad-debug.php +1 -1
  58. readme.txt +12 -0
admin/assets/css/admin.css CHANGED
@@ -128,6 +128,7 @@ h2.hndle .advads-hndlelinks a + a, #advads_overview_adsense_stats .advads-hndlel
128
  .advads-conditions-table .advads-button { font-size: inherit; }
129
  #advads-visitor-conditions-new select,
130
  .advads-conditions-new select:first-letter { text-transform: uppercase; }
 
131
  .advads-display-conditions-remove + h5 { display: inline-block; margin-top: 0; margin-left: 1em; }
132
  select + .advads-conditions-single { display: inline-block; }
133
  .advads-conditions-table { border-collapse: collapse; width: 100%; max-width: 850px; }
128
  .advads-conditions-table .advads-button { font-size: inherit; }
129
  #advads-visitor-conditions-new select,
130
  .advads-conditions-new select:first-letter { text-transform: uppercase; }
131
+ .advads-conditions-new select + .advads-loader { display: inline-block; vertical-align: middle; }
132
  .advads-display-conditions-remove + h5 { display: inline-block; margin-top: 0; margin-left: 1em; }
133
  select + .advads-conditions-single { display: inline-block; }
134
  .advads-conditions-table { border-collapse: collapse; width: 100%; max-width: 850px; }
admin/assets/js/admin-global.js CHANGED
@@ -204,6 +204,44 @@ jQuery( document ).ready(function () {
204
  jQuery('#advanced-ads-feedback-overlay-close-button').on('click', function () {
205
  jQuery( '#advanced-ads-feedback-overlay' ).hide();
206
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
207
  });
208
 
209
  // remove duplicate close buttons
204
  jQuery('#advanced-ads-feedback-overlay-close-button').on('click', function () {
205
  jQuery( '#advanced-ads-feedback-overlay' ).hide();
206
  });
207
+
208
+ jQuery( '.advads-help' ).on( 'mouseenter', function ( event ) {
209
+ const tooltip = jQuery( event.target ).children( '.advads-tooltip' )[0];
210
+ if ( typeof tooltip === 'undefined' ) {
211
+ return;
212
+ }
213
+
214
+ // reset inline styles before getting bounding client rect.
215
+ tooltip.style.position = '';
216
+ tooltip.style.left = '';
217
+ tooltip.style.top = '';
218
+
219
+ const topParentRect = document.getElementById( 'wpbody' ).getBoundingClientRect(),
220
+ helpRect = event.target.getBoundingClientRect(),
221
+ offsets = {
222
+ left: Math.ceil( helpRect.left ) + 20,
223
+ top: Math.ceil( helpRect.top ) + 20
224
+ };
225
+ let tooltipRect = tooltip.getBoundingClientRect();
226
+
227
+ tooltip.style.position = 'fixed';
228
+ tooltip.style.left = offsets.left + 'px';
229
+ tooltip.style.top = offsets.top + 'px';
230
+
231
+ // check element is not overflowing to the right.
232
+ while ( tooltipRect.right > ( topParentRect.right - 20 ) ) {
233
+ offsets.left -= 10;
234
+ tooltip.style.left = offsets.left + 'px';
235
+ tooltipRect = tooltip.getBoundingClientRect();
236
+ }
237
+
238
+ // check element is not overflowing bottom of parent and is within viewport.
239
+ while ( tooltipRect.bottom > ( Math.min( topParentRect.bottom, jQuery( window ).height() ) - 20 ) ) {
240
+ offsets.top -= 10;
241
+ tooltip.style.top = offsets.top + 'px';
242
+ tooltipRect = tooltip.getBoundingClientRect();
243
+ }
244
+ } );
245
  });
246
 
247
  // remove duplicate close buttons
admin/assets/js/admin.js CHANGED
@@ -1057,14 +1057,22 @@ window.Advanced_Ads_Admin = window.Advanced_Ads_Admin || {
1057
  },
1058
  check_ad_source: function () {
1059
  var text = Advanced_Ads_Admin.get_ad_source_editor_text()
1060
- var enabled_php = jQuery( '#advads-parameters-php' ).prop( 'checked' )
1061
- var enabled_sc = jQuery( '#advads-parameters-shortcodes' ).prop( 'checked' )
1062
- if ( enabled_php && ! /\<\?php/.test( text ) ) {
1063
- jQuery( '#advads-parameters-php-warning' ).show()
 
 
 
 
 
 
1064
  } else {
1065
- jQuery( '#advads-parameters-php-warning' ).hide()
 
1066
  }
1067
- if ( enabled_sc && ! /\[[^\]]+\]/.test( text ) ) {
 
1068
  jQuery( '#advads-parameters-shortcodes-warning' ).show()
1069
  } else {
1070
  jQuery( '#advads-parameters-shortcodes-warning' ).hide()
1057
  },
1058
  check_ad_source: function () {
1059
  var text = Advanced_Ads_Admin.get_ad_source_editor_text()
1060
+ // allow php is enabled.
1061
+ if ( jQuery( '#advads-parameters-php' ).prop( 'checked' ) ) {
1062
+ // ad content has opening php tag.
1063
+ if ( ! /<\?php/.test( text ) ) {
1064
+ jQuery( '#advads-parameters-php-warning' ).show();
1065
+ jQuery( '#advads-allow-php-warning' ).hide();
1066
+ } else {
1067
+ jQuery( '#advads-parameters-php-warning' ).hide();
1068
+ jQuery( '#advads-allow-php-warning' ).show();
1069
+ }
1070
  } else {
1071
+ jQuery( '#advads-parameters-php-warning' ).hide();
1072
+ jQuery( '#advads-allow-php-warning' ).hide();
1073
  }
1074
+ // execute shortcodes is enabled.
1075
+ if ( jQuery( '#advads-parameters-shortcodes' ).prop( 'checked' ) && ! /\[[^\]]+\]/.test( text ) ) {
1076
  jQuery( '#advads-parameters-shortcodes-warning' ).show()
1077
  } else {
1078
  jQuery( '#advads-parameters-shortcodes-warning' ).hide()
admin/assets/js/conditions.js CHANGED
@@ -7,7 +7,7 @@ jQuery( document ).ready(
7
  /**
8
  * Pressing the button to add a new condition to the list of conditions
9
  */
10
- $( '.advads-conditions-new button' ).on( 'click', function () {
11
  // get the form fieldset and values.
12
  var condition_form_container = $( this ).parents( 'fieldset' )
13
  var condition_type = condition_form_container.find( '.advads-conditions-new select' ).val()
@@ -22,7 +22,6 @@ jQuery( document ).ready(
22
  return
23
  }
24
  condition_form_container.find( '.advads-loader' ).show() // show loader.
25
- condition_form_container.find( 'button' ).hide() // hide add button.
26
  $.ajax(
27
  {
28
  type: 'POST',
@@ -62,7 +61,6 @@ jQuery( document ).ready(
62
  },
63
  complete: function ( MLHttpRequest, textStatus ) {
64
  condition_form_container.find( '.advads-conditions-new .advads-loader' ).hide() // hide loader.
65
- condition_form_container.find( '.advads-conditions-new button' ).show() // display add button.
66
  }
67
  }
68
  )
7
  /**
8
  * Pressing the button to add a new condition to the list of conditions
9
  */
10
+ $( '.advads-conditions-new select' ).on( 'change', function () {
11
  // get the form fieldset and values.
12
  var condition_form_container = $( this ).parents( 'fieldset' )
13
  var condition_type = condition_form_container.find( '.advads-conditions-new select' ).val()
22
  return
23
  }
24
  condition_form_container.find( '.advads-loader' ).show() // show loader.
 
25
  $.ajax(
26
  {
27
  type: 'POST',
61
  },
62
  complete: function ( MLHttpRequest, textStatus ) {
63
  condition_form_container.find( '.advads-conditions-new .advads-loader' ).hide() // hide loader.
 
64
  }
65
  }
66
  )
admin/includes/ad-health-notices.php CHANGED
@@ -42,7 +42,7 @@ $advanced_ads_ad_health_notices = apply_filters(
42
  // translators: %1$s is a list of plugin names; %2$s a target URL.
43
  __( 'Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. <a href="%2$s" target="_blank">Learn more</a>.', 'advanced-ads' ),
44
  implode( ', ', Advanced_Ads_Checks::conflicting_plugins() ),
45
- ADVADS_URL . 'manual/known-plugin-conflicts/#utm_source=advanced-ads&utm_medium=link&utm_campaign=error-plugin-conflicts'
46
  ),
47
  'type' => 'problem',
48
  ),
@@ -202,7 +202,7 @@ $advanced_ads_ad_health_notices = apply_filters(
202
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
203
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
204
  '<strong>BuddyPress & BuddyBoss</strong>',
205
- '<a href="' . ADVADS_URL . 'ads-on-buddypress-pages/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-buddypress" target="_blank">',
206
  '</a>'
207
  ),
208
  'type' => 'notice',
@@ -213,7 +213,7 @@ $advanced_ads_ad_health_notices = apply_filters(
213
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
214
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
215
  '<strong>bbPress</strong>',
216
- '<a href="' . ADVADS_URL . 'ads-in-bbpress/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-bbpress" target="_blank">',
217
  '</a>'
218
  ),
219
  'type' => 'notice',
@@ -224,7 +224,7 @@ $advanced_ads_ad_health_notices = apply_filters(
224
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
225
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
226
  '<strong>WPML</strong>',
227
- '<a href="' . ADVADS_URL . 'translating-ads-wpml/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-WPML" target="_blank">',
228
  '</a>'
229
  ),
230
  'type' => 'notice',
@@ -237,7 +237,7 @@ $advanced_ads_ad_health_notices = apply_filters(
237
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
238
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
239
  '<strong>AMP</strong>',
240
- '<a href="' . ADVADS_URL . 'manual/ads-on-amp-pages/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-amp" target="_blank">',
241
  '</a>'
242
  ),
243
  'type' => 'notice',
@@ -250,7 +250,7 @@ $advanced_ads_ad_health_notices = apply_filters(
250
  'text' => sprintf(
251
  // translators: %s is a service or plugin name.
252
  '<strong>' . __( '%s detected.', 'advanced-ads' ) . '</strong>'
253
- . ' <a href="' . ADVADS_URL . 'wp-engine-and-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-wpengine">' . __( 'Learn how this might impact your ad setup.', 'advanced-ads' ) . '</a>',
254
  'WP Engine'
255
  ),
256
  'type' => 'notice',
@@ -276,7 +276,7 @@ $advanced_ads_ad_health_notices = apply_filters(
276
  sprintf( __( 'You might be able to <strong>remove %1$s</strong>.', 'advanced-ads' ),
277
  implode( ', ', Advanced_Ads_Checks::header_footer_plugins() )
278
  ) . '&nbsp;' .
279
- '<a href="' . ADVADS_URL . 'add-header-and-footer-code-wordpress/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-header-footer' . '" target="_blank">' . __( 'Learn how.', 'advanced-ads' ) . '</a>',
280
  'type' => 'notice',
281
  'hide' => false,
282
  'timeout' => YEAR_IN_SECONDS,
42
  // translators: %1$s is a list of plugin names; %2$s a target URL.
43
  __( 'Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. <a href="%2$s" target="_blank">Learn more</a>.', 'advanced-ads' ),
44
  implode( ', ', Advanced_Ads_Checks::conflicting_plugins() ),
45
+ ADVADS_URL . 'manual/known-plugin-conflicts/?utm_source=advanced-ads&utm_medium=link&utm_campaign=error-plugin-conflicts'
46
  ),
47
  'type' => 'problem',
48
  ),
202
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
203
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
204
  '<strong>BuddyPress & BuddyBoss</strong>',
205
+ '<a href="' . ADVADS_URL . 'ads-on-buddypress-pages/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-buddypress" target="_blank">',
206
  '</a>'
207
  ),
208
  'type' => 'notice',
213
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
214
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
215
  '<strong>bbPress</strong>',
216
+ '<a href="' . ADVADS_URL . 'ads-in-bbpress/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-bbpress" target="_blank">',
217
  '</a>'
218
  ),
219
  'type' => 'notice',
224
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
225
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
226
  '<strong>WPML</strong>',
227
+ '<a href="' . ADVADS_URL . 'translating-ads-wpml/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-WPML" target="_blank">',
228
  '</a>'
229
  ),
230
  'type' => 'notice',
237
  // translators: %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
238
  __( 'Learn how to integrate %1$s with Advanced Ads %2$shere%3$s.', 'advanced-ads' ),
239
  '<strong>AMP</strong>',
240
+ '<a href="' . ADVADS_URL . 'manual/ads-on-amp-pages/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-amp" target="_blank">',
241
  '</a>'
242
  ),
243
  'type' => 'notice',
250
  'text' => sprintf(
251
  // translators: %s is a service or plugin name.
252
  '<strong>' . __( '%s detected.', 'advanced-ads' ) . '</strong>'
253
+ . ' <a href="' . ADVADS_URL . 'wp-engine-and-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-wpengine">' . __( 'Learn how this might impact your ad setup.', 'advanced-ads' ) . '</a>',
254
  'WP Engine'
255
  ),
256
  'type' => 'notice',
276
  sprintf( __( 'You might be able to <strong>remove %1$s</strong>.', 'advanced-ads' ),
277
  implode( ', ', Advanced_Ads_Checks::header_footer_plugins() )
278
  ) . '&nbsp;' .
279
+ '<a href="' . ADVADS_URL . 'add-header-and-footer-code-wordpress/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-header-footer" target="_blank">' . __( 'Learn how.', 'advanced-ads' ) . '</a>',
280
  'type' => 'notice',
281
  'hide' => false,
282
  'timeout' => YEAR_IN_SECONDS,
admin/includes/class-ad-groups-list.php CHANGED
@@ -166,7 +166,7 @@ class Advanced_Ads_Groups_List {
166
  echo ( 'default' === $group->type && $weight_sum ) ? '<ul>' : '<ol>';
167
  while ( $ads->have_posts() ) {
168
  $ads->the_post();
169
- $line_output = '<li><a href="' . get_edit_post_link( get_the_ID() ) . '">' . get_the_title() . '</a>';
170
 
171
  if ( 'default' === $group->type && $weight_sum ) {
172
  $_weight = ( isset( $weights[ get_the_ID() ] ) ) ? $weights[ get_the_ID() ] : Advanced_Ads_Group::MAX_AD_GROUP_DEFAULT_WEIGHT;
166
  echo ( 'default' === $group->type && $weight_sum ) ? '<ul>' : '<ol>';
167
  while ( $ads->have_posts() ) {
168
  $ads->the_post();
169
+ $line_output = '<li><a href="' . get_edit_post_link( get_the_ID() ) . '">' . esc_html( get_the_title() ) . '</a>';
170
 
171
  if ( 'default' === $group->type && $weight_sum ) {
172
  $_weight = ( isset( $weights[ get_the_ID() ] ) ) ? $weights[ get_the_ID() ] : Advanced_Ads_Group::MAX_AD_GROUP_DEFAULT_WEIGHT;
admin/includes/class-admin-upgrades.php CHANGED
@@ -59,14 +59,15 @@ class Advanced_Ads_Admin_Upgrades {
59
  * @param string $url target URL.
60
  * @param string $utm_campaign utm_campaign value to attach to the URL.
61
  */
62
- public static function upgrade_link( $title = '', $url = '', $utm_campaign = '' ) {
63
- $title = ! empty( $title ) ? $title : __( 'Upgrade', 'advanced-ads' );
64
- $url = ! empty( $url ) ? $url : ADVADS_URL . 'add-ons/';
65
- $utm_parameter_base = '#utm_source=advanced-ads&utm_medium=link&utm_campaign=';
66
- $utm_parameter = ( $utm_campaign ) ? $utm_parameter_base . $utm_campaign : $utm_parameter_base . 'upgrade';
67
 
68
- // Add parameter to URL.
69
- $url = $url . $utm_parameter;
 
 
 
70
 
71
  include ADVADS_BASE_PATH . 'admin/views/upgrades/upgrade-link.php';
72
  }
@@ -102,7 +103,7 @@ class Advanced_Ads_Admin_Upgrades {
102
  'text' => sprintf(
103
  // Translators: %1$s opening a tag, %2$s closing a tag.
104
  esc_html__( 'This looks like a Google Ad Manager ad. Use the %1$sGAM Integration%2$s.', 'advanced' ),
105
- '<a href="' . ADVADS_URL . 'add-ons/google-ad-manager/#utm_source=advanced-ads&utm_medium=link&utm_campaign=upgrade-ad-parameters-gam" target="_blank">',
106
  '</a>'
107
  ) . ' ' . __( 'A quick and error-free way of implementing ad units from your Google Ad Manager account.', 'advanced-ads' ),
108
  );
59
  * @param string $url target URL.
60
  * @param string $utm_campaign utm_campaign value to attach to the URL.
61
  */
62
+ public static function upgrade_link( $title = '', $url = '', $utm_campaign = 'upgrade' ) {
63
+ $title = ! empty( $title ) ? $title : __( 'Upgrade', 'advanced-ads' );
64
+ $url = ! empty( $url ) ? $url : ADVADS_URL . 'add-ons/';
 
 
65
 
66
+ $url = add_query_arg( array(
67
+ 'utm_source' => 'advanced-ads',
68
+ 'utm_medium' => 'link',
69
+ 'utm_campaign' => $utm_campaign,
70
+ ), $url );
71
 
72
  include ADVADS_BASE_PATH . 'admin/views/upgrades/upgrade-link.php';
73
  }
103
  'text' => sprintf(
104
  // Translators: %1$s opening a tag, %2$s closing a tag.
105
  esc_html__( 'This looks like a Google Ad Manager ad. Use the %1$sGAM Integration%2$s.', 'advanced' ),
106
+ '<a href="' . ADVADS_URL . 'add-ons/google-ad-manager/?utm_source=advanced-ads&utm_medium=link&utm_campaign=upgrade-ad-parameters-gam" target="_blank">',
107
  '</a>'
108
  ) . ' ' . __( 'A quick and error-free way of implementing ad units from your Google Ad Manager account.', 'advanced-ads' ),
109
  );
admin/includes/class-licenses.php CHANGED
@@ -209,13 +209,13 @@ class Advanced_Ads_Admin_Licenses {
209
  . sprintf(
210
  /* translators: %1$s is a starting link tag, %2$s is the closing one. */
211
  __( 'You can manage activations in %1$syour account%2$s.', 'advanced-ads' ),
212
- '<a href="' . ADVADS_URL . 'account/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-activations-left" target="_blank">',
213
  '</a>'
214
  ) . '&nbsp;'
215
  . sprintf(
216
  /* translators: %1$s is a starting link tag, %2$s is the closing one. */
217
  __( '%1$sUpgrade%2$s for more activations.', 'advanced-ads' ),
218
- '<a href="' . ADVADS_URL . 'account/upgrades/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-activations-left" target="_blank">',
219
  '</a>'
220
  ),
221
  );
209
  . sprintf(
210
  /* translators: %1$s is a starting link tag, %2$s is the closing one. */
211
  __( 'You can manage activations in %1$syour account%2$s.', 'advanced-ads' ),
212
+ '<a href="' . ADVADS_URL . 'account/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-activations-left" target="_blank">',
213
  '</a>'
214
  ) . '&nbsp;'
215
  . sprintf(
216
  /* translators: %1$s is a starting link tag, %2$s is the closing one. */
217
  __( '%1$sUpgrade%2$s for more activations.', 'advanced-ads' ),
218
+ '<a href="' . ADVADS_URL . 'account/upgrades/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-activations-left" target="_blank">',
219
  '</a>'
220
  ),
221
  );
admin/includes/class-meta-box.php CHANGED
@@ -198,7 +198,7 @@ class Advanced_Ads_Admin_Meta_Boxes {
198
  switch ( $box['id'] ) {
199
  case 'ad-main-box':
200
  $view = 'ad-main-metabox.php';
201
- $hndlelinks = '<a href="' . ADVADS_URL . 'manual/ad-types#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-ad-type" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
202
  break;
203
  case 'ad-parameters-box':
204
  $view = 'ad-parameters-metabox.php';
@@ -217,20 +217,20 @@ class Advanced_Ads_Admin_Meta_Boxes {
217
  case 'ad-display-box':
218
  $view = 'conditions/ad-display-metabox.php';
219
  $hndlelinks = '<a href="#" class="advads-video-link">' . __( 'Video', 'advanced-ads' ) . '</a>';
220
- $hndlelinks .= '<a href="' . ADVADS_URL . 'manual/display-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-display" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
221
  $videomarkup = '<iframe width="420" height="315" src="https://www.youtube-nocookie.com/embed/VjfrRl5Qn4I?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe>';
222
  break;
223
  case 'ad-visitor-box':
224
  $view = 'conditions/ad-visitor-metabox.php';
225
- $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
226
  break;
227
  case 'advads-pro-pitch':
228
  $view = 'upgrades/all-access.php';
229
- // $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __('Manual', 'advanced-ads') . '</a>';
230
  break;
231
  case 'advads-tracking-pitch':
232
  $view = 'upgrades/tracking.php';
233
- // $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __('Manual', 'advanced-ads') . '</a>';
234
  break;
235
  case 'advads-gadsense-box':
236
  $unit_code = null;
@@ -556,13 +556,13 @@ class Advanced_Ads_Admin_Meta_Boxes {
556
  self::dashboard_cached_rss_widget();
557
 
558
  ?>
559
- <p><a href="<?php echo esc_url( ADVADS_URL . 'category/tutorials/#utm_source=advanced-ads&utm_medium=link&utm_campaign=dashboard' ); ?>" target="_blank"><?php esc_html_e( 'Visit our blog for more articles about ad optimization', 'advanced-ads' ); ?></a></p>
560
  <?php
561
 
562
  // add markup for utm variables.
563
  // todo: move to js file.
564
  ?>
565
- <script>jQuery('#advads_dashboard_widget .rss-widget a').each(function(){ this.href = this.href + '#utm_source=advanced-ads&utm_medium=rss-link&utm_campaign=dashboard'; })</script>
566
  <?php
567
  }
568
 
198
  switch ( $box['id'] ) {
199
  case 'ad-main-box':
200
  $view = 'ad-main-metabox.php';
201
+ $hndlelinks = '<a href="' . ADVADS_URL . 'manual/ad-types?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-ad-type" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
202
  break;
203
  case 'ad-parameters-box':
204
  $view = 'ad-parameters-metabox.php';
217
  case 'ad-display-box':
218
  $view = 'conditions/ad-display-metabox.php';
219
  $hndlelinks = '<a href="#" class="advads-video-link">' . __( 'Video', 'advanced-ads' ) . '</a>';
220
+ $hndlelinks .= '<a href="' . ADVADS_URL . 'manual/display-conditions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-display" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
221
  $videomarkup = '<iframe width="420" height="315" src="https://www.youtube-nocookie.com/embed/VjfrRl5Qn4I?rel=0&amp;showinfo=0" frameborder="0" allowfullscreen></iframe>';
222
  break;
223
  case 'ad-visitor-box':
224
  $view = 'conditions/ad-visitor-metabox.php';
225
+ $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __( 'Manual', 'advanced-ads' ) . '</a>';
226
  break;
227
  case 'advads-pro-pitch':
228
  $view = 'upgrades/all-access.php';
229
+ // $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __('Manual', 'advanced-ads') . '</a>';
230
  break;
231
  case 'advads-tracking-pitch':
232
  $view = 'upgrades/tracking.php';
233
+ // $hndlelinks = '<a href="' . ADVADS_URL . 'manual/visitor-conditions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor" target="_blank">' . __('Manual', 'advanced-ads') . '</a>';
234
  break;
235
  case 'advads-gadsense-box':
236
  $unit_code = null;
556
  self::dashboard_cached_rss_widget();
557
 
558
  ?>
559
+ <p><a href="<?php echo esc_url( ADVADS_URL . 'category/tutorials/?utm_source=advanced-ads&utm_medium=link&utm_campaign=dashboard' ); ?>" target="_blank"><?php esc_html_e( 'Visit our blog for more articles about ad optimization', 'advanced-ads' ); ?></a></p>
560
  <?php
561
 
562
  // add markup for utm variables.
563
  // todo: move to js file.
564
  ?>
565
+ <script>jQuery('#advads_dashboard_widget .rss-widget a').each(function(){ this.href = this.href + '?utm_source=advanced-ads&utm_medium=rss-link&utm_campaign=dashboard'; })</script>
566
  <?php
567
  }
568
 
admin/includes/class-overview-widgets.php CHANGED
@@ -164,7 +164,7 @@ class Advanced_Ads_Overview_Widgets_Callbacks {
164
  $all_access = Advanced_Ads_Admin_Licenses::get_instance()->get_probably_all_access();
165
  if ( $is_subscribed && ! $all_access ) {
166
  ?>
167
- <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/all-access/#utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-bundle" target="_blank"><?php esc_html_e( 'Get the All Access pass', 'advanced-ads' ); ?></a>
168
  <?php
169
  }
170
  }
@@ -175,11 +175,11 @@ class Advanced_Ads_Overview_Widgets_Callbacks {
175
  public static function render_support() {
176
  ?>
177
  <ul>
178
- <li><a href="<?php echo esc_url( ADVADS_URL . 'manual/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-manual' ); ?>" target="_blank">
179
  <?php esc_html_e( 'Manual', 'advanced-ads' ); ?>
180
  </a>
181
  </li>
182
- <li><a href="<?php echo esc_url( ADVADS_URL . 'support/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-support' ); ?>" target="_blank">
183
  <?php esc_html_e( 'FAQ and Support', 'advanced-ads' ); ?>
184
  </a>
185
  </li>
@@ -439,56 +439,56 @@ endif;
439
  'pro' => array(
440
  'title' => 'Advanced Ads Pro',
441
  'desc' => $pro_content,
442
- 'link' => ADVADS_URL . 'add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
443
  'order' => 4,
444
  'class' => 'recommended',
445
  ),
446
  'tracking' => array(
447
  'title' => 'Tracking',
448
  'desc' => __( 'Analyze clicks and impressions of your ads locally or in Google Analytics, share reports, and limit ads to a specific number of impressions or clicks.', 'advanced-ads' ),
449
- 'link' => ADVADS_URL . 'add-ons/tracking/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
450
  'order' => 4,
451
  ),
452
  'responsive' => array(
453
  'title' => 'Responsive, AMP and Mobile ads',
454
  'desc' => __( 'Display ads based on the device or the size of your visitor’s browser, and control ads on AMP pages.', 'advanced-ads' ),
455
- 'link' => ADVADS_URL . 'add-ons/responsive-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
456
  'order' => 4,
457
  ),
458
  'gam' => array(
459
  'title' => 'Google Ad Manager Integration',
460
  'desc' => __( 'A quick and error-free way of implementing ad units from your Google Ad Manager account.', 'advanced-ads' ),
461
- 'link' => ADVADS_URL . 'add-ons/google-ad-manager/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
462
  'order' => 5,
463
  ),
464
  'sticky' => array(
465
  'title' => 'Sticky ads',
466
  'desc' => __( 'Increase click rates on your ads by placing them in sticky positions above, next or below your site.', 'advanced-ads' ),
467
- 'link' => ADVADS_URL . 'add-ons/sticky-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
468
  'order' => 5,
469
  ),
470
  'layer' => array(
471
  'title' => 'PopUps and Layers',
472
  'desc' => __( 'Users will never miss an ad or other information in a PopUp. Choose when it shows up and for how long a user can close it.', 'advanced-ads' ),
473
- 'link' => ADVADS_URL . 'add-ons/popup-and-layer-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
474
  'order' => 5,
475
  ),
476
  'geo' => array(
477
  'title' => 'Geo Targeting',
478
  'desc' => __( 'Target visitors with ads that match their geo location and make more money with regional campaigns.', 'advanced-ads' ),
479
- 'link' => ADVADS_URL . 'add-ons/geo-targeting/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
480
  'order' => 5,
481
  ),
482
  'selling' => array(
483
  'title' => 'Selling Ads',
484
  'desc' => __( 'Earn more money and let advertisers pay for ad space directly on the frontend of your site.', 'advanced-ads' ),
485
- 'link' => ADVADS_URL . 'add-ons/selling-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
486
  'order' => 6,
487
  ),
488
  'slider' => array(
489
  'title' => 'Ad Slider',
490
  'desc' => __( 'Create a beautiful and simple slider from your ads to show more information on less space.', 'advanced-ads' ),
491
- 'link' => ADVADS_URL . 'add-ons/slider/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
492
  'order' => 6,
493
  ),
494
  'adsense-in-feed' => array(
@@ -517,7 +517,7 @@ endif;
517
  $add_ons['pro']['link_title'] = __( 'Activate now', 'advanced-ads' );
518
  $installed_pro_plugins++;
519
  } elseif ( class_exists( 'Advanced_Ads_Pro' ) ) {
520
- $add_ons['pro']['link'] = ADVADS_URL . 'manual/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
521
  $add_ons['pro']['desc'] = '';
522
  $add_ons['pro']['installed'] = true;
523
  $add_ons['pro']['order'] = 20;
@@ -536,7 +536,7 @@ endif;
536
  $installed_pro_plugins++;
537
  } elseif ( class_exists( 'Advanced_Ads_Tracking_Plugin', false ) &&
538
  method_exists( Advanced_Ads_Tracking_Plugin::get_instance(), 'get_tracking_method' ) ) {
539
- $add_ons['tracking']['link'] = ADVADS_URL . 'manual/tracking-documentation/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
540
  if ( 'ga' !== Advanced_Ads_Tracking_Plugin::get_instance()->get_tracking_method() ) {
541
 
542
  // don’t show Tracking link if Analytics method is enabled.
@@ -560,7 +560,7 @@ endif;
560
  $add_ons['responsive']['link_title'] = __( 'Activate now', 'advanced-ads' );
561
  $installed_pro_plugins++;
562
  } elseif ( class_exists( 'Advanced_Ads_Responsive_Plugin' ) ) {
563
- $add_ons['responsive']['link'] = ADVADS_URL . 'manual/responsive-ads-documentation/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
564
  $add_ons['responsive']['desc'] = '<a href="' . admin_url( 'admin.php?page=responsive-ads-list' ) . '">' . __( 'List of responsive ads by browser width', 'advanced-ads-responsive' ) . '</a>';
565
  $add_ons['responsive']['installed'] = true;
566
  $add_ons['responsive']['order'] = 20;
@@ -578,7 +578,7 @@ endif;
578
  $add_ons['gam']['link_title'] = __( 'Activate now', 'advanced-ads' );
579
  $installed_pro_plugins++;
580
  } elseif ( class_exists( 'Advanced_Ads_Network_Gam' ) ) {
581
- $add_ons['gam']['link'] = ADVADS_URL . 'manual/google-ad-manager-integration-manual/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
582
  $add_ons['gam']['desc'] = '';
583
  $add_ons['gam']['installed'] = true;
584
  $add_ons['gam']['order'] = 20;
@@ -596,7 +596,7 @@ endif;
596
  $add_ons['sticky']['link_title'] = __( 'Activate now', 'advanced-ads' );
597
  $installed_pro_plugins++;
598
  } elseif ( class_exists( 'Advanced_Ads_Sticky_Plugin' ) ) {
599
- $add_ons['sticky']['link'] = ADVADS_URL . 'manual/sticky-ads-documentation/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
600
  $add_ons['sticky']['desc'] = '';
601
  $add_ons['sticky']['installed'] = true;
602
  $add_ons['sticky']['order'] = 20;
@@ -614,7 +614,7 @@ endif;
614
  $add_ons['layer']['link_title'] = __( 'Activate now', 'advanced-ads' );
615
  $installed_pro_plugins++;
616
  } elseif ( class_exists( 'Advanced_Ads_Layer_Plugin' ) ) {
617
- $add_ons['layer']['link'] = ADVADS_URL . 'manual/popup-and-layer-ads-documentation/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
618
  $add_ons['layer']['desc'] = '';
619
  $add_ons['layer']['installed'] = true;
620
  $add_ons['layer']['order'] = 20;
@@ -632,7 +632,7 @@ endif;
632
  $add_ons['selling']['link_title'] = __( 'Activate now', 'advanced-ads' );
633
  $installed_pro_plugins++;
634
  } elseif ( class_exists( 'Advanced_Ads_Selling_Plugin' ) ) {
635
- $add_ons['selling']['link'] = ADVADS_URL . 'manual/getting-started-selling-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
636
  $add_ons['selling']['desc'] = '';
637
  $add_ons['selling']['installed'] = true;
638
  $add_ons['selling']['order'] = 20;
@@ -650,7 +650,7 @@ endif;
650
  $add_ons['geo']['link_title'] = __( 'Activate now', 'advanced-ads' );
651
  $installed_pro_plugins++;
652
  } elseif ( class_exists( 'Advanced_Ads_Geo_Plugin' ) ) {
653
- $add_ons['geo']['link'] = ADVADS_URL . 'manual/geo-targeting-condition/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
654
  $add_ons['geo']['desc'] = '';
655
  $add_ons['geo']['installed'] = true;
656
  $add_ons['geo']['order'] = 20;
@@ -667,7 +667,7 @@ endif;
667
  $add_ons['slider']['link'] = wp_nonce_url( 'plugins.php?action=activate&amp;plugin=advanced-ads-slider/slider.php&amp', 'activate-plugin_advanced-ads-slider/slider.php' );
668
  $add_ons['slider']['link_title'] = __( 'Activate now', 'advanced-ads' );
669
  } elseif ( class_exists( 'Advanced_Ads_Slider_Plugin' ) ) {
670
- $add_ons['slider']['link'] = ADVADS_URL . 'add-ons/slider/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
671
  $add_ons['slider']['desc'] = '';
672
  $add_ons['slider']['installed'] = true;
673
  $add_ons['slider']['order'] = 20;
@@ -715,7 +715,7 @@ endif;
715
  $add_ons['bundle'] = array(
716
  'title' => 'All Access',
717
  'desc' => __( 'Our best deal with all add-ons included.', 'advanced-ads' ),
718
- 'link' => ADVADS_URL . 'add-ons/all-access/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
719
  'link_title' => __( 'Get full access', 'advanced-ads' ),
720
  'link_primary' => true,
721
  'order' => 0,
@@ -731,7 +731,7 @@ endif;
731
  $add_ons['long_term'] = array(
732
  'title' => 'All Access long-term',
733
  'desc' => __( 'A one-time payment for four years of support and updates. The package saves you up to 70% compared to individually purchasing our add-ons.', 'advanced-ads' ),
734
- 'link' => ADVADS_URL . 'add-ons/all-access-long-term/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
735
  'link_title' => __( 'Get full access', 'advanced-ads' ),
736
  'link_primary' => true,
737
  'order' => 1,
164
  $all_access = Advanced_Ads_Admin_Licenses::get_instance()->get_probably_all_access();
165
  if ( $is_subscribed && ! $all_access ) {
166
  ?>
167
+ <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/all-access/?utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-bundle" target="_blank"><?php esc_html_e( 'Get the All Access pass', 'advanced-ads' ); ?></a>
168
  <?php
169
  }
170
  }
175
  public static function render_support() {
176
  ?>
177
  <ul>
178
+ <li><a href="<?php echo esc_url( ADVADS_URL . 'manual/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-manual' ); ?>" target="_blank">
179
  <?php esc_html_e( 'Manual', 'advanced-ads' ); ?>
180
  </a>
181
  </li>
182
+ <li><a href="<?php echo esc_url( ADVADS_URL . 'support/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-support' ); ?>" target="_blank">
183
  <?php esc_html_e( 'FAQ and Support', 'advanced-ads' ); ?>
184
  </a>
185
  </li>
439
  'pro' => array(
440
  'title' => 'Advanced Ads Pro',
441
  'desc' => $pro_content,
442
+ 'link' => ADVADS_URL . 'add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
443
  'order' => 4,
444
  'class' => 'recommended',
445
  ),
446
  'tracking' => array(
447
  'title' => 'Tracking',
448
  'desc' => __( 'Analyze clicks and impressions of your ads locally or in Google Analytics, share reports, and limit ads to a specific number of impressions or clicks.', 'advanced-ads' ),
449
+ 'link' => ADVADS_URL . 'add-ons/tracking/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
450
  'order' => 4,
451
  ),
452
  'responsive' => array(
453
  'title' => 'Responsive, AMP and Mobile ads',
454
  'desc' => __( 'Display ads based on the device or the size of your visitor’s browser, and control ads on AMP pages.', 'advanced-ads' ),
455
+ 'link' => ADVADS_URL . 'add-ons/responsive-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
456
  'order' => 4,
457
  ),
458
  'gam' => array(
459
  'title' => 'Google Ad Manager Integration',
460
  'desc' => __( 'A quick and error-free way of implementing ad units from your Google Ad Manager account.', 'advanced-ads' ),
461
+ 'link' => ADVADS_URL . 'add-ons/google-ad-manager/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
462
  'order' => 5,
463
  ),
464
  'sticky' => array(
465
  'title' => 'Sticky ads',
466
  'desc' => __( 'Increase click rates on your ads by placing them in sticky positions above, next or below your site.', 'advanced-ads' ),
467
+ 'link' => ADVADS_URL . 'add-ons/sticky-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
468
  'order' => 5,
469
  ),
470
  'layer' => array(
471
  'title' => 'PopUps and Layers',
472
  'desc' => __( 'Users will never miss an ad or other information in a PopUp. Choose when it shows up and for how long a user can close it.', 'advanced-ads' ),
473
+ 'link' => ADVADS_URL . 'add-ons/popup-and-layer-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
474
  'order' => 5,
475
  ),
476
  'geo' => array(
477
  'title' => 'Geo Targeting',
478
  'desc' => __( 'Target visitors with ads that match their geo location and make more money with regional campaigns.', 'advanced-ads' ),
479
+ 'link' => ADVADS_URL . 'add-ons/geo-targeting/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
480
  'order' => 5,
481
  ),
482
  'selling' => array(
483
  'title' => 'Selling Ads',
484
  'desc' => __( 'Earn more money and let advertisers pay for ad space directly on the frontend of your site.', 'advanced-ads' ),
485
+ 'link' => ADVADS_URL . 'add-ons/selling-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
486
  'order' => 6,
487
  ),
488
  'slider' => array(
489
  'title' => 'Ad Slider',
490
  'desc' => __( 'Create a beautiful and simple slider from your ads to show more information on less space.', 'advanced-ads' ),
491
+ 'link' => ADVADS_URL . 'add-ons/slider/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
492
  'order' => 6,
493
  ),
494
  'adsense-in-feed' => array(
517
  $add_ons['pro']['link_title'] = __( 'Activate now', 'advanced-ads' );
518
  $installed_pro_plugins++;
519
  } elseif ( class_exists( 'Advanced_Ads_Pro' ) ) {
520
+ $add_ons['pro']['link'] = ADVADS_URL . 'manual/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
521
  $add_ons['pro']['desc'] = '';
522
  $add_ons['pro']['installed'] = true;
523
  $add_ons['pro']['order'] = 20;
536
  $installed_pro_plugins++;
537
  } elseif ( class_exists( 'Advanced_Ads_Tracking_Plugin', false ) &&
538
  method_exists( Advanced_Ads_Tracking_Plugin::get_instance(), 'get_tracking_method' ) ) {
539
+ $add_ons['tracking']['link'] = ADVADS_URL . 'manual/tracking-documentation/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
540
  if ( 'ga' !== Advanced_Ads_Tracking_Plugin::get_instance()->get_tracking_method() ) {
541
 
542
  // don’t show Tracking link if Analytics method is enabled.
560
  $add_ons['responsive']['link_title'] = __( 'Activate now', 'advanced-ads' );
561
  $installed_pro_plugins++;
562
  } elseif ( class_exists( 'Advanced_Ads_Responsive_Plugin' ) ) {
563
+ $add_ons['responsive']['link'] = ADVADS_URL . 'manual/responsive-ads-documentation/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
564
  $add_ons['responsive']['desc'] = '<a href="' . admin_url( 'admin.php?page=responsive-ads-list' ) . '">' . __( 'List of responsive ads by browser width', 'advanced-ads-responsive' ) . '</a>';
565
  $add_ons['responsive']['installed'] = true;
566
  $add_ons['responsive']['order'] = 20;
578
  $add_ons['gam']['link_title'] = __( 'Activate now', 'advanced-ads' );
579
  $installed_pro_plugins++;
580
  } elseif ( class_exists( 'Advanced_Ads_Network_Gam' ) ) {
581
+ $add_ons['gam']['link'] = ADVADS_URL . 'manual/google-ad-manager-integration-manual/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
582
  $add_ons['gam']['desc'] = '';
583
  $add_ons['gam']['installed'] = true;
584
  $add_ons['gam']['order'] = 20;
596
  $add_ons['sticky']['link_title'] = __( 'Activate now', 'advanced-ads' );
597
  $installed_pro_plugins++;
598
  } elseif ( class_exists( 'Advanced_Ads_Sticky_Plugin' ) ) {
599
+ $add_ons['sticky']['link'] = ADVADS_URL . 'manual/sticky-ads-documentation/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
600
  $add_ons['sticky']['desc'] = '';
601
  $add_ons['sticky']['installed'] = true;
602
  $add_ons['sticky']['order'] = 20;
614
  $add_ons['layer']['link_title'] = __( 'Activate now', 'advanced-ads' );
615
  $installed_pro_plugins++;
616
  } elseif ( class_exists( 'Advanced_Ads_Layer_Plugin' ) ) {
617
+ $add_ons['layer']['link'] = ADVADS_URL . 'manual/popup-and-layer-ads-documentation/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
618
  $add_ons['layer']['desc'] = '';
619
  $add_ons['layer']['installed'] = true;
620
  $add_ons['layer']['order'] = 20;
632
  $add_ons['selling']['link_title'] = __( 'Activate now', 'advanced-ads' );
633
  $installed_pro_plugins++;
634
  } elseif ( class_exists( 'Advanced_Ads_Selling_Plugin' ) ) {
635
+ $add_ons['selling']['link'] = ADVADS_URL . 'manual/getting-started-selling-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
636
  $add_ons['selling']['desc'] = '';
637
  $add_ons['selling']['installed'] = true;
638
  $add_ons['selling']['order'] = 20;
650
  $add_ons['geo']['link_title'] = __( 'Activate now', 'advanced-ads' );
651
  $installed_pro_plugins++;
652
  } elseif ( class_exists( 'Advanced_Ads_Geo_Plugin' ) ) {
653
+ $add_ons['geo']['link'] = ADVADS_URL . 'manual/geo-targeting-condition/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
654
  $add_ons['geo']['desc'] = '';
655
  $add_ons['geo']['installed'] = true;
656
  $add_ons['geo']['order'] = 20;
667
  $add_ons['slider']['link'] = wp_nonce_url( 'plugins.php?action=activate&amp;plugin=advanced-ads-slider/slider.php&amp', 'activate-plugin_advanced-ads-slider/slider.php' );
668
  $add_ons['slider']['link_title'] = __( 'Activate now', 'advanced-ads' );
669
  } elseif ( class_exists( 'Advanced_Ads_Slider_Plugin' ) ) {
670
+ $add_ons['slider']['link'] = ADVADS_URL . 'add-ons/slider/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons-manual';
671
  $add_ons['slider']['desc'] = '';
672
  $add_ons['slider']['installed'] = true;
673
  $add_ons['slider']['order'] = 20;
715
  $add_ons['bundle'] = array(
716
  'title' => 'All Access',
717
  'desc' => __( 'Our best deal with all add-ons included.', 'advanced-ads' ),
718
+ 'link' => ADVADS_URL . 'add-ons/all-access/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
719
  'link_title' => __( 'Get full access', 'advanced-ads' ),
720
  'link_primary' => true,
721
  'order' => 0,
731
  $add_ons['long_term'] = array(
732
  'title' => 'All Access long-term',
733
  'desc' => __( 'A one-time payment for four years of support and updates. The package saves you up to 70% compared to individually purchasing our add-ons.', 'advanced-ads' ),
734
+ 'link' => ADVADS_URL . 'add-ons/all-access-long-term/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-add-ons',
735
  'link_title' => __( 'Get full access', 'advanced-ads' ),
736
  'link_primary' => true,
737
  'order' => 1,
admin/includes/notices.php CHANGED
@@ -52,7 +52,7 @@ $advanced_ads_admin_notices = apply_filters(
52
  __( 'When you give 5-stars, an actual person does a little happy dance!', 'advanced-ads' ) . '</p>'
53
  . '<p>'
54
  . '<span class="dashicons dashicons-external"></span>&nbsp;<strong><a href="https://wordpress.org/support/plugin/advanced-ads/reviews/?rate=5#new-post" target=_"blank">' . __( 'Sure, I appreciate your work', 'advanced-ads' ) . '</a></strong>'
55
- . ' &nbsp;&nbsp;<span class="dashicons dashicons-sos"></span>&nbsp;<a href="' . ADVADS_URL . 'support/#utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-review" target=_"blank">' . __( 'Yes, but help me first to solve a problem, please', 'advanced-ads' ) . '</a>'
56
  . '</p></div>',
57
  'global' => false,
58
  ),
@@ -62,7 +62,7 @@ $advanced_ads_admin_notices = apply_filters(
62
  'text' => sprintf(
63
  // translators: %s is a link. `30%%` is correct, please use exactly that value so that it shows "30%".
64
  __( 'Our Black Friday / Cyber Monday Offer: <span style="font-weight: bold; font-size: 1.4em; color: green;">-30%%</span> on all add-ons and All Access.<a class="button button-primary" target="_blank" href="%s">Get All Access</a>', 'advanced-ads' ),
65
- ADVADS_URL . 'checkout/?edd_action=add_to_cart&download_id=95170&edd_options[price_id]=1&discount=BFCM2021#utm_source=advanced-ads&utm_medium=link&utm_campaign=bfcm-2021'
66
  ),
67
  'global' => true,
68
  ),
52
  __( 'When you give 5-stars, an actual person does a little happy dance!', 'advanced-ads' ) . '</p>'
53
  . '<p>'
54
  . '<span class="dashicons dashicons-external"></span>&nbsp;<strong><a href="https://wordpress.org/support/plugin/advanced-ads/reviews/?rate=5#new-post" target=_"blank">' . __( 'Sure, I appreciate your work', 'advanced-ads' ) . '</a></strong>'
55
+ . ' &nbsp;&nbsp;<span class="dashicons dashicons-sos"></span>&nbsp;<a href="' . ADVADS_URL . 'support/?utm_source=advanced-ads&utm_medium=link&utm_campaign=notice-review" target=_"blank">' . __( 'Yes, but help me first to solve a problem, please', 'advanced-ads' ) . '</a>'
56
  . '</p></div>',
57
  'global' => false,
58
  ),
62
  'text' => sprintf(
63
  // translators: %s is a link. `30%%` is correct, please use exactly that value so that it shows "30%".
64
  __( 'Our Black Friday / Cyber Monday Offer: <span style="font-weight: bold; font-size: 1.4em; color: green;">-30%%</span> on all add-ons and All Access.<a class="button button-primary" target="_blank" href="%s">Get All Access</a>', 'advanced-ads' ),
65
+ ADVADS_URL . 'checkout/?edd_action=add_to_cart&download_id=95170&edd_options[price_id]=1&discount=BFCM2021/?utm_source=advanced-ads&utm_medium=link&utm_campaign=bfcm-2021'
66
  ),
67
  'global' => true,
68
  ),
admin/views/ad-group.php CHANGED
@@ -86,7 +86,7 @@ if ( isset( $_REQUEST['advads-last-edited-group'] ) ) {
86
  ),
87
  )
88
  ),
89
- esc_url( ADVADS_URL ) . 'manual/ad-groups/#utm_source=advanced-ads&utm_medium=link&utm_campaign=groups'
90
  );
91
  ?>
92
  </p>
86
  ),
87
  )
88
  ),
89
+ esc_url( ADVADS_URL ) . 'manual/ad-groups/?utm_source=advanced-ads&utm_medium=link&utm_campaign=groups'
90
  );
91
  ?>
92
  </p>
admin/views/ad-info.php CHANGED
@@ -21,7 +21,7 @@
21
  ),
22
  )
23
  ),
24
- esc_url( ADVADS_URL ) . 'manual/display-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit'
25
  );
26
  ?>
27
  </span>
21
  ),
22
  )
23
  ),
24
+ esc_url( ADVADS_URL ) . 'manual/display-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit'
25
  );
26
  ?>
27
  </span>
admin/views/ad-output-metabox.php CHANGED
@@ -62,7 +62,7 @@
62
  <label for="advads-output-debugmode" class="label advads-hide-in-wizard"><?php esc_html_e( 'Enable debug mode', 'advanced-ads' ); ?></label>
63
  <div class="advads-hide-in-wizard">
64
  <input id="advads-output-debugmode" type="checkbox" name="advanced_ad[output][debugmode]" value="1" <?php checked( $debug_mode_enabled, true ); ?>/>
65
- <a href="<?php echo esc_url( ADVADS_URL ); ?>manual/ad-debug-mode/#utm_source=advanced-ads&utm_medium=link&utm_campaign=ad-debug-mode" target="_blank"><?php esc_html_e( 'Manual', 'advanced-ads' ); ?></a>
66
  </div>
67
 
68
  <?php if ( ! defined( 'AAP_VERSION' ) ) : ?>
62
  <label for="advads-output-debugmode" class="label advads-hide-in-wizard"><?php esc_html_e( 'Enable debug mode', 'advanced-ads' ); ?></label>
63
  <div class="advads-hide-in-wizard">
64
  <input id="advads-output-debugmode" type="checkbox" name="advanced_ad[output][debugmode]" value="1" <?php checked( $debug_mode_enabled, true ); ?>/>
65
+ <a href="<?php echo esc_url( ADVADS_URL ); ?>manual/ad-debug-mode/?utm_source=advanced-ads&utm_medium=link&utm_campaign=ad-debug-mode" target="_blank"><?php esc_html_e( 'Manual', 'advanced-ads' ); ?></a>
66
  </div>
67
 
68
  <?php if ( ! defined( 'AAP_VERSION' ) ) : ?>
admin/views/conditions/ad-display-metabox.php CHANGED
@@ -32,7 +32,7 @@ if ( $empty_options ) :
32
  <button type="button" class="advads-video-link-inline button button-primary">
33
  <?php esc_attr_e( 'Watch video', 'advanced-ads' ); ?>
34
  </button>&nbsp;<a class="button button-secondary"
35
- href="<?php echo esc_url( ADVADS_URL ); ?>manual/display-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-display"
36
  target="_blank">
37
  <?php esc_attr_e( 'Visit the manual', 'advanced-ads' ); ?>
38
  </a></p>
32
  <button type="button" class="advads-video-link-inline button button-primary">
33
  <?php esc_attr_e( 'Watch video', 'advanced-ads' ); ?>
34
  </button>&nbsp;<a class="button button-secondary"
35
+ href="<?php echo esc_url( ADVADS_URL ); ?>manual/display-conditions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-display"
36
  target="_blank">
37
  <?php esc_attr_e( 'Visit the manual', 'advanced-ads' ); ?>
38
  </a></p>
admin/views/conditions/ad-visitor-metabox.php CHANGED
@@ -32,7 +32,7 @@ endif;
32
  $set_conditions = array();
33
  ?>
34
  <p><a class="button button-primary"
35
- href="<?php echo ADVADS_URL; ?>manual/visitor-conditions#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor"
36
  target="_blank">
37
  <?php _e( 'Visit the manual', 'advanced-ads' ); ?>
38
  </a></p><?php endif;
32
  $set_conditions = array();
33
  ?>
34
  <p><a class="button button-primary"
35
+ href="<?php echo esc_url( ADVADS_URL ); ?>manual/visitor-conditions?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor"
36
  target="_blank">
37
  <?php _e( 'Visit the manual', 'advanced-ads' ); ?>
38
  </a></p><?php endif;
admin/views/conditions/condition-author.php CHANGED
@@ -48,7 +48,7 @@ if ( count( $authors ) >= $max_authors ) :
48
  )
49
  ),
50
  absint( $max_authors ),
51
- esc_url( ADVADS_URL . 'codex/filter-hooks/#utm_source=advanced-ads&utm_medium=link&utm_campaign=author-term-limit' )
52
  );
53
  ?>
54
  </p>
48
  )
49
  ),
50
  absint( $max_authors ),
51
+ esc_url( ADVADS_URL . 'codex/filter-hooks/?utm_source=advanced-ads&utm_medium=link&utm_campaign=author-term-limit' )
52
  );
53
  ?>
54
  </p>
admin/views/conditions/conditions-form.php CHANGED
@@ -34,7 +34,6 @@
34
  endif;
35
  ?>
36
  </select>
37
- <button type="button" class="button"><?php esc_attr_e( 'add', 'advanced-ads' ); ?></button>
38
  <span class="advads-loader" style="display: none;"></span>
39
  </div>
40
  </fieldset>
34
  endif;
35
  ?>
36
  </select>
 
37
  <span class="advads-loader" style="display: none;"></span>
38
  </div>
39
  </fieldset>
admin/views/conditions/display-conditions-list.php CHANGED
@@ -34,7 +34,12 @@
34
  $show_or_force_warning = true;
35
  }
36
 
37
- if ( 'is_not' === $operator && 'or' === $connector && 'is_not' === $set_conditions[ $last_index ]['operator'] ) {
 
 
 
 
 
38
  $show_is_not_or_warning = true;
39
  }
40
 
34
  $show_or_force_warning = true;
35
  }
36
 
37
+ if (
38
+ $operator === 'is_not'
39
+ && $connector === 'or'
40
+ && isset( $set_conditions[ $last_index ]['operator'] )
41
+ && $set_conditions[ $last_index ]['operator'] === 'is_not'
42
+ ) {
43
  $show_is_not_or_warning = true;
44
  }
45
 
admin/views/conditions/visitor-conditions-form-top.php CHANGED
@@ -19,7 +19,7 @@ elseif ( Advanced_Ads_Checks::cache() && ! defined( 'AAP_VERSION' ) ) :
19
  ),
20
  )
21
  ),
22
- esc_url( ADVADS_URL ) . 'add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor'
23
  );
24
  ?>
25
  </p>
19
  ),
20
  )
21
  ),
22
+ esc_url( ADVADS_URL ) . 'add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor'
23
  );
24
  ?>
25
  </p>
admin/views/notices/welcome-panel.php CHANGED
@@ -15,7 +15,7 @@ try {
15
  class="button button-primary"><?php esc_attr_e( 'Create your first ad', 'advanced-ads' ); ?></a>
16
  <ul>
17
  <li>
18
- <a href="<?php echo esc_url( ADVADS_URL ); ?>manual/first-ad/#utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-first-ad"
19
  target="_blank"><?php esc_attr_e( 'First ad tutorial', 'advanced-ads' ); ?></a></li>
20
  </ul>
21
  </div>
@@ -36,10 +36,10 @@ try {
36
  class="button button-primary"><?php esc_attr_e( 'Import ads from AdSense', 'advanced-ads' ); ?></a>
37
  <ul>
38
  <li>
39
- <a href="<?php echo esc_url( ADVADS_URL ); ?>adsense-auto-ads-wordpress/#utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-auto-ads"
40
  target="_blank"><?php esc_attr_e( 'Setting up Auto ads', 'advanced-ads' ); ?></a></li>
41
  <li>
42
- <a href="<?php echo esc_url( ADVADS_URL ); ?>place-adsense-ad-unit-manually/#utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-adsense"
43
  target="_blank"><?php esc_attr_e( 'Setting up AdSense ads manually', 'advanced-ads' ); ?></a>
44
  </li>
45
  </ul>
15
  class="button button-primary"><?php esc_attr_e( 'Create your first ad', 'advanced-ads' ); ?></a>
16
  <ul>
17
  <li>
18
+ <a href="<?php echo esc_url( ADVADS_URL ); ?>manual/first-ad/?utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-first-ad"
19
  target="_blank"><?php esc_attr_e( 'First ad tutorial', 'advanced-ads' ); ?></a></li>
20
  </ul>
21
  </div>
36
  class="button button-primary"><?php esc_attr_e( 'Import ads from AdSense', 'advanced-ads' ); ?></a>
37
  <ul>
38
  <li>
39
+ <a href="<?php echo esc_url( ADVADS_URL ); ?>adsense-auto-ads-wordpress/?utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-auto-ads"
40
  target="_blank"><?php esc_attr_e( 'Setting up Auto ads', 'advanced-ads' ); ?></a></li>
41
  <li>
42
+ <a href="<?php echo esc_url( ADVADS_URL ); ?>place-adsense-ad-unit-manually/?utm_source=advanced-ads&utm_medium=link&utm_campaign=welcome-adsense"
43
  target="_blank"><?php esc_attr_e( 'Setting up AdSense ads manually', 'advanced-ads' ); ?></a>
44
  </li>
45
  </ul>
admin/views/placement-form.php CHANGED
@@ -25,7 +25,7 @@
25
  ),
26
  )
27
  ),
28
- esc_url( ADVADS_URL ) . 'manual/placements/#utm_source=advanced-ads&utm_medium=link&utm_campaign=placements'
29
  );
30
  ?>
31
  </p>
25
  ),
26
  )
27
  ),
28
+ esc_url( ADVADS_URL ) . 'manual/placements/?utm_source=advanced-ads&utm_medium=link&utm_campaign=placements'
29
  );
30
  ?>
31
  </p>
admin/views/placement-injection-top.php CHANGED
@@ -26,7 +26,7 @@ $is_page_level_ad_in_code_field = ( isset( $ad->type ) && 'plain' === $ad->type
26
  ),
27
  )
28
  ),
29
- esc_url( ADVADS_URL ) . 'manual/ads-not-showing-up/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-ad-not-visible'
30
  );
31
  ?>
32
  </p>
@@ -81,11 +81,11 @@ $is_page_level_ad_in_code_field = ( isset( $ad->type ) && 'plain' === $ad->type
81
  <div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" data-placement-type="post_bottom" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/content-after.png'; ?>)"><?php esc_html_e( 'After Content', 'advanced-ads' ); ?></button></div>
82
  <a href="<?php echo esc_url( admin_url( 'widgets.php' ) ); ?>"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/widget.png'; ?>)"><?php esc_html_e( 'Manage Sidebar', 'advanced-ads' ); ?></button></div></a>
83
  <div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" data-placement-type="default" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/manual.png'; ?>)"><?php esc_html_e( 'PHP or Shortcode', 'advanced-ads' ); ?></button></div>
84
- <a href="<?php echo esc_url( ADVADS_URL ) . 'place-ads-in-website-header/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-placements'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/ads-in-header.png'; ?>)"><?php esc_html_e( 'Header (Manual)', 'advanced-ads' ); ?></button></div></a>
85
  <?php
86
  if ( ! defined( 'AAP_VERSION' ) ) :
87
  ?>
88
- <a href="<?php echo esc_url( ADVADS_URL ) . 'manual/custom-position-placement/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-placements'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/custom-position.png'; ?>)"><?php esc_html_e( 'Custom Position', 'advanced-ads' ); ?></button></div></a><a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-pro'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/content-random.png'; ?>)"><?php esc_html_e( 'Show Pro Places', 'advanced-ads' ); ?></button></div></a>
89
  <?php
90
  else :
91
  ?>
@@ -100,13 +100,13 @@ $is_page_level_ad_in_code_field = ( isset( $ad->type ) && 'plain' === $ad->type
100
 
101
  if ( ! defined( 'AASADS_VERSION' ) ) :
102
  ?>
103
- <a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/sticky-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-sticky'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/sticky-sidebar-left.png'; ?>)"><?php esc_html_e( 'Show Sticky Places', 'advanced-ads' ); ?></button></div></a>
104
  <?php
105
  endif;
106
 
107
  if ( ! defined( 'AAPLDS_VERSION' ) ) :
108
  ?>
109
- <a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/popup-and-layer-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-layer'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/layer.png'; ?>)"><?php esc_html_e( 'Show PopUp', 'advanced-ads' ); ?></button></div></a>
110
  <?php
111
  else :
112
  ?>
@@ -174,7 +174,7 @@ $is_page_level_ad_in_code_field = ( isset( $ad->type ) && 'plain' === $ad->type
174
  // translators: %s is a URL.
175
  // phpcs:ignore
176
  __( 'Learn more about your choices to display an ad in the <a href="%s" target="_blank">manual</a>.', 'advanced-ads' ),
177
- esc_url( ADVADS_URL ) . 'manual/display-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created'
178
  );
179
  ?>
180
  </p>
26
  ),
27
  )
28
  ),
29
+ esc_url( ADVADS_URL ) . 'manual/ads-not-showing-up/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-ad-not-visible'
30
  );
31
  ?>
32
  </p>
81
  <div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" data-placement-type="post_bottom" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/content-after.png'; ?>)"><?php esc_html_e( 'After Content', 'advanced-ads' ); ?></button></div>
82
  <a href="<?php echo esc_url( admin_url( 'widgets.php' ) ); ?>"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/widget.png'; ?>)"><?php esc_html_e( 'Manage Sidebar', 'advanced-ads' ); ?></button></div></a>
83
  <div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" data-placement-type="default" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/manual.png'; ?>)"><?php esc_html_e( 'PHP or Shortcode', 'advanced-ads' ); ?></button></div>
84
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'place-ads-in-website-header/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-placements'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/ads-in-header.png'; ?>)"><?php esc_html_e( 'Header (Manual)', 'advanced-ads' ); ?></button></div></a>
85
  <?php
86
  if ( ! defined( 'AAP_VERSION' ) ) :
87
  ?>
88
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'manual/custom-position-placement/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-placements'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/custom-position.png'; ?>)"><?php esc_html_e( 'Custom Position', 'advanced-ads' ); ?></button></div></a><a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-pro'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/content-random.png'; ?>)"><?php esc_html_e( 'Show Pro Places', 'advanced-ads' ); ?></button></div></a>
89
  <?php
90
  else :
91
  ?>
100
 
101
  if ( ! defined( 'AASADS_VERSION' ) ) :
102
  ?>
103
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/sticky-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-sticky'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/sticky-sidebar-left.png'; ?>)"><?php esc_html_e( 'Show Sticky Places', 'advanced-ads' ); ?></button></div></a>
104
  <?php
105
  endif;
106
 
107
  if ( ! defined( 'AAPLDS_VERSION' ) ) :
108
  ?>
109
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'add-ons/popup-and-layer-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created-injection-layer'; ?>" target="_blank"><div class="advads-ad-injection-box-button-wrap"><button type="button" class="advads-ad-injection-button button-primary advads-pro-link" style="background-image: url(<?php echo esc_url( ADVADS_BASE_URL ) . 'admin/assets/img/placements/layer.png'; ?>)"><?php esc_html_e( 'Show PopUp', 'advanced-ads' ); ?></button></div></a>
110
  <?php
111
  else :
112
  ?>
174
  // translators: %s is a URL.
175
  // phpcs:ignore
176
  __( 'Learn more about your choices to display an ad in the <a href="%s" target="_blank">manual</a>.', 'advanced-ads' ),
177
+ esc_url( ADVADS_URL ) . 'manual/display-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-created'
178
  );
179
  ?>
180
  </p>
admin/views/placements.php CHANGED
@@ -41,7 +41,7 @@ $quick_actions['delete'] = '<a style="cursor: pointer;" class="advads-delete-tag
41
  ),
42
  )
43
  ),
44
- esc_url( ADVADS_URL ) . 'manual/placements/#utm_source=advanced-ads&utm_medium=link&utm_campaign=placements'
45
  );
46
  ?>
47
  </p>
@@ -413,7 +413,7 @@ $quick_actions['delete'] = '<a style="cursor: pointer;" class="advads-delete-tag
413
  ),
414
  )
415
  ),
416
- esc_url( ADVADS_URL ) . 'place-ads-in-website-header/#utm_source=advanced-ads&utm_medium=link&utm_campaign=header-ad-tutorial'
417
  );
418
  ?>
419
  </p>
41
  ),
42
  )
43
  ),
44
+ esc_url( ADVADS_URL ) . 'manual/placements/?utm_source=advanced-ads&utm_medium=link&utm_campaign=placements'
45
  );
46
  ?>
47
  </p>
413
  ),
414
  )
415
  ),
416
+ esc_url( ADVADS_URL ) . 'place-ads-in-website-header/?utm_source=advanced-ads&utm_medium=link&utm_campaign=header-ad-tutorial'
417
  );
418
  ?>
419
  </p>
admin/views/post-ad-settings-metabox.php CHANGED
@@ -1,4 +1,4 @@
1
- <p><a href="<?php echo esc_url( ADVADS_URL ); ?>how-to-block-ads-on-a-specific-page/#utm_source=advanced-ads&utm_medium=link&utm_campaign=disable-ads-on-specific-pages" target="_blank"><?php esc_html_e( 'How to disable ads on specific pages', 'advanced-ads' ); ?></a></p>
2
  <label><input type="checkbox" name="advanced_ads[disable_ads]" value="1"
3
  <?php
4
  if ( isset( $values['disable_ads'] ) ) {
1
+ <p><a href="<?php echo esc_url( ADVADS_URL ); ?>how-to-block-ads-on-a-specific-page/?utm_source=advanced-ads&utm_medium=link&utm_campaign=disable-ads-on-specific-pages" target="_blank"><?php esc_html_e( 'How to disable ads on specific pages', 'advanced-ads' ); ?></a></p>
2
  <label><input type="checkbox" name="advanced_ads[disable_ads]" value="1"
3
  <?php
4
  if ( isset( $values['disable_ads'] ) ) {
admin/views/setting-license.php CHANGED
@@ -30,7 +30,7 @@ $expired_error .= $expired_renew_link = ' ' . sprintf(
30
  // $translators: %1$s is a URL, %2$s is HTML of a button.
31
  // phpcs:ignore
32
  __( 'Click on %2$s if you renewed it or have a subscription or <a href="%1$s" class="advads-renewal-link" target="_blank">renew your license</a>.', 'advanced-ads' ),
33
- esc_url( ADVADS_URL ) . 'checkout/?edd_license_key=' . esc_attr( $license_key_for_expired_link ) . '#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses',
34
  $update_button
35
  );
36
  if ( 'lifetime' !== $expires ) {
30
  // $translators: %1$s is a URL, %2$s is HTML of a button.
31
  // phpcs:ignore
32
  __( 'Click on %2$s if you renewed it or have a subscription or <a href="%1$s" class="advads-renewal-link" target="_blank">renew your license</a>.', 'advanced-ads' ),
33
+ esc_url( ADVADS_URL ) . 'checkout/?edd_license_key=' . esc_attr( $license_key_for_expired_link ) . '&utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses',
34
  $update_button
35
  );
36
  if ( 'lifetime' !== $expires ) {
admin/views/settings/general/advanced-js.php CHANGED
@@ -19,7 +19,7 @@ printf(
19
  ),
20
  )
21
  ),
22
- esc_url( ADVADS_URL . 'javascript-functions/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' )
23
  );
24
  ?>
25
  </p>
19
  ),
20
  )
21
  ),
22
+ esc_url( ADVADS_URL . 'javascript-functions/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' )
23
  );
24
  ?>
25
  </p>
admin/views/settings/general/block-bots.php CHANGED
@@ -6,5 +6,5 @@ if ( Advanced_Ads::get_instance()->is_bot() ) :
6
  <?php
7
  endif;
8
  ?>
9
- <span class="description"><a href="<?php echo esc_url( ADVADS_URL . 'hide-ads-from-bots/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' ); ?>" target="blank"><?php esc_html_e( 'Read this first', 'advanced-ads' ); ?></a></span>
10
  <p class="description"><?php esc_html_e( 'Hide ads from crawlers, bots and empty user agents.', 'advanced-ads' ); ?></p>
6
  <?php
7
  endif;
8
  ?>
9
+ <span class="description"><a href="<?php echo esc_url( ADVADS_URL . 'hide-ads-from-bots/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' ); ?>" target="blank"><?php esc_html_e( 'Read this first', 'advanced-ads' ); ?></a></span>
10
  <p class="description"><?php esc_html_e( 'Hide ads from crawlers, bots and empty user agents.', 'advanced-ads' ); ?></p>
admin/views/settings/general/custom-label.php CHANGED
@@ -5,7 +5,7 @@
5
  name="<?php echo esc_attr( ADVADS_SLUG ); ?>[custom-label][text]"/>
6
  </fieldset>
7
  <p class="description"><?php esc_html_e( 'Displayed above ads.', 'advanced-ads' ); ?>&nbsp;
8
- <a target="_blank" href="<?php echo esc_url( ADVADS_URL . 'manual/advertisement-label/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-advertisement-label' ); ?>">
9
  <?php
10
  esc_html_e( 'Manual', 'advanced-ads' );
11
  ?>
5
  name="<?php echo esc_attr( ADVADS_SLUG ); ?>[custom-label][text]"/>
6
  </fieldset>
7
  <p class="description"><?php esc_html_e( 'Displayed above ads.', 'advanced-ads' ); ?>&nbsp;
8
+ <a target="_blank" href="<?php echo esc_url( ADVADS_URL . 'manual/advertisement-label/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-advertisement-label' ); ?>">
9
  <?php
10
  esc_html_e( 'Manual', 'advanced-ads' );
11
  ?>
admin/views/settings/general/disable-notices.php CHANGED
@@ -4,7 +4,7 @@
4
  printf(
5
  // translators: %1$s is a starting <a> tag and %2$s a closing one.
6
  esc_html__( 'Disable %1$sAd Health%2$s in frontend and backend, warnings and internal notices like tips, tutorials, email newsletters and update notices.', 'advanced-ads' ),
7
- '<a href="' . esc_url( ADVADS_URL ) . 'manual/ad-health/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-ad-health" target="_blank">',
8
  '</a>'
9
  );
10
  ?>
4
  printf(
5
  // translators: %1$s is a starting <a> tag and %2$s a closing one.
6
  esc_html__( 'Disable %1$sAd Health%2$s in frontend and backend, warnings and internal notices like tips, tutorials, email newsletters and update notices.', 'advanced-ads' ),
7
+ '<a href="' . esc_url( ADVADS_URL ) . 'manual/ad-health/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-ad-health" target="_blank">',
8
  '</a>'
9
  );
10
  ?>
admin/views/settings/general/editors-manage-ads.php CHANGED
@@ -12,7 +12,7 @@ printf(
12
  ),
13
  )
14
  ),
15
- esc_url( ADVADS_URL . 'add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' )
16
  );
17
  ?>
18
  </p>
12
  ),
13
  )
14
  ),
15
+ esc_url( ADVADS_URL . 'add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings' )
16
  );
17
  ?>
18
  </p>
admin/views/settings/license/section.php CHANGED
@@ -1,5 +1,5 @@
1
  <p>
2
- <a href="<?php echo esc_url( ADVADS_URL ) . 'manual/how-to-install-an-add-on/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-install-add-ons'; ?>" target="_blank">
3
  <?php echo esc_attr__( 'How to install and activate an add-on.', 'advanced-ads' ); ?>
4
  </a>
5
  <?php
@@ -14,7 +14,7 @@ printf(
14
  ),
15
  )
16
  ),
17
- esc_url( ADVADS_URL . 'manual/purchase-licenses/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses' )
18
  );
19
  ?>
20
  </p>
1
  <p>
2
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'manual/how-to-install-an-add-on/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses-install-add-ons'; ?>" target="_blank">
3
  <?php echo esc_attr__( 'How to install and activate an add-on.', 'advanced-ads' ); ?>
4
  </a>
5
  <?php
14
  ),
15
  )
16
  ),
17
+ esc_url( ADVADS_URL . 'manual/purchase-licenses/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-licenses' )
18
  );
19
  ?>
20
  </p>
admin/views/support-callout.php CHANGED
@@ -1,6 +1,6 @@
1
  <div id="advads-support-callout">
2
  <p class="advads-notice-inline advads-idea">
3
- <a href="<?php echo esc_url( Advanced_Ads_Plugin::support_url( '#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-notices-support' ) ); ?>" target="_blank"><strong><?php esc_html_e( 'Problems or questions?', 'advanced-ads' ); ?></strong>
4
  <?php esc_html_e( 'Save time and get personal support.', 'advanced-ads' ); ?>&nbsp;<strong style="text-decoration: underline;"><?php esc_html_e( 'Ask your question!', 'advanced-ads' ); ?></strong>
5
  </a>
6
  </p>
1
  <div id="advads-support-callout">
2
  <p class="advads-notice-inline advads-idea">
3
+ <a href="<?php echo esc_url( Advanced_Ads_Plugin::support_url( '/?utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-notices-support' ) ); ?>" target="_blank"><strong><?php esc_html_e( 'Problems or questions?', 'advanced-ads' ); ?></strong>
4
  <?php esc_html_e( 'Save time and get personal support.', 'advanced-ads' ); ?>&nbsp;<strong style="text-decoration: underline;"><?php esc_html_e( 'Ask your question!', 'advanced-ads' ); ?></strong>
5
  </a>
6
  </p>
admin/views/support.php CHANGED
@@ -6,14 +6,14 @@
6
  <p><?php esc_html_e( 'Please fix the red highlighted issues on this page or try to understand their consequences before contacting support.', 'advanced-ads' ); ?></p>
7
  <h2><?php esc_html_e( 'Possible Issues', 'advanced-ads' ); ?></h2>
8
  <ul>
9
- <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/ads-not-showing-up/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Ads not showing up', 'advanced-ads' ); ?></a></li>
10
- <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/purchase-licenses/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Purchase & Licenses', 'advanced-ads' ); ?></a></li>
11
- <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/issues-after-updates/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Issues after updating', 'advanced-ads' ); ?></a></li>
12
- <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual-category/troubleshooting/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'General Issues', 'advanced-ads' ); ?></a></li>
13
- <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual-category/add-on-issues/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Issues with Add-Ons', 'advanced-ads' ); ?></a></li>
14
  </ul>
15
  <p><?php esc_html_e( 'Use the following form to search for solutions in the manual on wpadvancedads.com', 'advanced-ads' ); ?></p>
16
- <form action="https://wpadvancedads.com/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support-form" method="get" class="advads-support-form">
17
  <input type="search" name="s"/>
18
  <input type="submit" class="button button-primary" value="<?php esc_html_e( 'search', 'advanced-ads' ); ?>">
19
  </form>
@@ -31,7 +31,7 @@
31
  ),
32
  )
33
  ),
34
- esc_url( ADVADS_URL ) . 'support/#utm_source=advanced-ads&utm_medium=link&utm_campaign=support'
35
  );
36
  ?>
37
  </p>
6
  <p><?php esc_html_e( 'Please fix the red highlighted issues on this page or try to understand their consequences before contacting support.', 'advanced-ads' ); ?></p>
7
  <h2><?php esc_html_e( 'Possible Issues', 'advanced-ads' ); ?></h2>
8
  <ul>
9
+ <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/ads-not-showing-up/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Ads not showing up', 'advanced-ads' ); ?></a></li>
10
+ <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/purchase-licenses/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Purchase & Licenses', 'advanced-ads' ); ?></a></li>
11
+ <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual/issues-after-updates/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Issues after updating', 'advanced-ads' ); ?></a></li>
12
+ <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual-category/troubleshooting/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'General Issues', 'advanced-ads' ); ?></a></li>
13
+ <li><a href="<?php echo esc_url( ADVADS_URL ); ?>manual-category/add-on-issues/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support"><?php esc_html_e( 'Issues with Add-Ons', 'advanced-ads' ); ?></a></li>
14
  </ul>
15
  <p><?php esc_html_e( 'Use the following form to search for solutions in the manual on wpadvancedads.com', 'advanced-ads' ); ?></p>
16
+ <form action="https://wpadvancedads.com/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support-form" method="get" class="advads-support-form">
17
  <input type="search" name="s"/>
18
  <input type="submit" class="button button-primary" value="<?php esc_html_e( 'search', 'advanced-ads' ); ?>">
19
  </form>
31
  ),
32
  )
33
  ),
34
+ esc_url( ADVADS_URL ) . 'support/?utm_source=advanced-ads&utm_medium=link&utm_campaign=support'
35
  );
36
  ?>
37
  </p>
admin/views/upgrades/all-access.php CHANGED
@@ -11,4 +11,4 @@
11
  <li><span class="dashicons dashicons-yes"></span><?php echo 'Ad Slider'; ?></li>
12
  </ul>
13
  <p><?php esc_attr_e( 'Risk free with 30-day Money-Back guarantee', 'advanced-ads' ); ?></p>
14
- <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/all-access/#utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-bundle" target="_blank"><?php esc_attr_e( 'Get All Access', 'advanced-ads' ); ?></a>
11
  <li><span class="dashicons dashicons-yes"></span><?php echo 'Ad Slider'; ?></li>
12
  </ul>
13
  <p><?php esc_attr_e( 'Risk free with 30-day Money-Back guarantee', 'advanced-ads' ); ?></p>
14
+ <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/all-access/?utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-bundle" target="_blank"><?php esc_attr_e( 'Get All Access', 'advanced-ads' ); ?></a>
admin/views/upgrades/pro-tab.php CHANGED
@@ -10,7 +10,7 @@
10
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'placement tests for ad optimization', 'advanced-ads' ); ?></li>
11
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'ad grids and many more advanced features', 'advanced-ads' ); ?></li>
12
  </ul>
13
- <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-pro" target="_blank"><?php esc_html_e( 'See all features and pricing', 'advanced-ads' ); ?></a>
14
  </div>
15
  <div class="advads-pro-pitch postbox">
16
  <?php require ADVADS_BASE_PATH . 'admin/views/upgrades/all-access.php'; ?>
10
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'placement tests for ad optimization', 'advanced-ads' ); ?></li>
11
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'ad grids and many more advanced features', 'advanced-ads' ); ?></li>
12
  </ul>
13
+ <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-pro" target="_blank"><?php esc_html_e( 'See all features and pricing', 'advanced-ads' ); ?></a>
14
  </div>
15
  <div class="advads-pro-pitch postbox">
16
  <?php require ADVADS_BASE_PATH . 'admin/views/upgrades/all-access.php'; ?>
admin/views/upgrades/tracking.php CHANGED
@@ -7,6 +7,6 @@
7
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'limit ads views by overall number of impressions or clicks', 'advanced-ads' ); ?></li>
8
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'spread impressions or clicks equally over a given period', 'advanced-ads' ); ?></li>
9
  </ul>
10
- <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/tracking/#utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-tracking" target="_blank"><?php esc_html_e( 'See all features and pricing', 'advanced-ads' ); ?></a>
11
  </div>
12
  <div class="clear"></div>
7
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'limit ads views by overall number of impressions or clicks', 'advanced-ads' ); ?></li>
8
  <li><span class="dashicons dashicons-yes"></span><?php esc_html_e( 'spread impressions or clicks equally over a given period', 'advanced-ads' ); ?></li>
9
  </ul>
10
+ <a class="button button-primary" href="<?php echo esc_url( ADVADS_URL ); ?>add-ons/tracking/?utm_source=advanced-ads&utm_medium=link&utm_campaign=pitch-tracking" target="_blank"><?php esc_html_e( 'See all features and pricing', 'advanced-ads' ); ?></a>
11
  </div>
12
  <div class="clear"></div>
advanced-ads.php CHANGED
@@ -12,7 +12,7 @@
12
  * Plugin Name: Advanced Ads
13
  * Plugin URI: https://wpadvancedads.com
14
  * Description: Manage and optimize your ads in WordPress
15
- * Version: 1.31.1
16
  * Author: Thomas Maier, Advanced Ads GmbH
17
  * Author URI: https://wpadvancedads.com
18
  * Text Domain: advanced-ads
@@ -39,7 +39,7 @@ define( 'ADVADS_BASE_DIR', dirname( ADVADS_BASE ) ); // directory of the plugin
39
  // general and global slug, e.g. to store options in WP.
40
  define( 'ADVADS_SLUG', 'advanced-ads' );
41
  define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
42
- define( 'ADVADS_VERSION', '1.31.1' );
43
 
44
  // Autoloading, modules and functions.
45
 
12
  * Plugin Name: Advanced Ads
13
  * Plugin URI: https://wpadvancedads.com
14
  * Description: Manage and optimize your ads in WordPress
15
+ * Version: 1.32.0-rc.1
16
  * Author: Thomas Maier, Advanced Ads GmbH
17
  * Author URI: https://wpadvancedads.com
18
  * Text Domain: advanced-ads
39
  // general and global slug, e.g. to store options in WP.
40
  define( 'ADVADS_SLUG', 'advanced-ads' );
41
  define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
42
+ define( 'ADVADS_VERSION', '1.32.0-rc.1' );
43
 
44
  // Autoloading, modules and functions.
45
 
classes/ad-expiration.php CHANGED
@@ -53,6 +53,7 @@ class Advanced_Ads_Ad_Expiration {
53
  */
54
  public function save_expiration_date( $options, Advanced_Ads_Ad $ad ) {
55
  if ( empty( $options['expiry_date'] ) ) {
 
56
  return $options;
57
  }
58
  $datetime = ( new DateTimeImmutable() )->setTimestamp( (int) $options['expiry_date'] );
53
  */
54
  public function save_expiration_date( $options, Advanced_Ads_Ad $ad ) {
55
  if ( empty( $options['expiry_date'] ) ) {
56
+ delete_post_meta( $ad->id, self::POST_META );
57
  return $options;
58
  }
59
  $datetime = ( new DateTimeImmutable() )->setTimestamp( (int) $options['expiry_date'] );
classes/ad-health-notices.php CHANGED
@@ -863,7 +863,7 @@ class Advanced_Ads_Ad_Health_Notices {
863
  return sprintf(
864
  // translators: %1$s is an anchor (link) opening tag, %2$s is the closing tag.
865
  esc_attr__( 'Learn more about AdSense account issues %1$shere%2$s.', 'advanced-ads' ),
866
- '<a href="' . ADVADS_URL . 'adsense-errors/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-error' . $code . '" target="_blank">',
867
  '</a>'
868
  );
869
  }
863
  return sprintf(
864
  // translators: %1$s is an anchor (link) opening tag, %2$s is the closing tag.
865
  esc_attr__( 'Learn more about AdSense account issues %1$shere%2$s.', 'advanced-ads' ),
866
+ '<a href="' . ADVADS_URL . 'adsense-errors/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-error' . $code . '" target="_blank">',
867
  '</a>'
868
  );
869
  }
classes/ad_group.php CHANGED
@@ -540,7 +540,7 @@ class Advanced_Ads_Group {
540
  $this->label = Advanced_Ads::get_instance()->get_label( $placement_state );
541
 
542
  // Add placement class.
543
- if ( isset( $this->ad_args['output']['class'] ) && is_array( $this->ad_args['output']['class'] ) ) {
544
  $this->wrapper['class'] = $this->ad_args['output']['class'];
545
  }
546
 
540
  $this->label = Advanced_Ads::get_instance()->get_label( $placement_state );
541
 
542
  // Add placement class.
543
+ if ( ! empty( $this->ad_args['output']['class'] ) && is_array( $this->ad_args['output']['class'] ) ) {
544
  $this->wrapper['class'] = $this->ad_args['output']['class'];
545
  }
546
 
classes/ad_type_plain.php CHANGED
@@ -40,13 +40,14 @@ class Advanced_Ads_Ad_Type_Plain extends Advanced_Ads_Ad_Type_Abstract {
40
  * echo the output right away here
41
  * name parameters must be in the "advanced_ads" array
42
  *
43
- * @param object $ad Advanced_Ads_Ad.
44
  */
45
  public function render_parameters( $ad ) {
46
  // Load content.
47
  $content = ( isset( $ad->content ) ) ? $ad->content : '';
48
 
49
  ?><p class="description"><?php esc_html_e( 'Insert plain text or code into this field.', 'advanced-ads' ); ?></p>
 
50
  <textarea id="advads-ad-content-plain" cols="40" rows="10" name="advanced_ad[content]"
51
  onkeyup="Advanced_Ads_Admin.check_ad_source();"><?php echo esc_textarea( $content ); ?></textarea>
52
  <?php include ADVADS_BASE_PATH . 'admin/views/ad-info-after-textarea.php'; ?>
@@ -67,10 +68,6 @@ class Advanced_Ads_Ad_Type_Plain extends Advanced_Ads_Ad_Type_Abstract {
67
  * @param object $ad Advanced_Ads_Ad object.
68
  */
69
  public function render_php_allow( $ad ) {
70
- if ( defined( 'ADVANCED_ADS_DISALLOW_PHP' ) ) {
71
- return;
72
- }
73
-
74
  $content = ( isset( $ad->content ) ) ? $ad->content : '';
75
 
76
  // Check if php is allowed.
@@ -81,36 +78,45 @@ class Advanced_Ads_Ad_Type_Plain extends Advanced_Ads_Ad_Type_Abstract {
81
  * For compatibility for ads with PHP added prior to 1.3.18
82
  * check if there is php code in the content
83
  */
84
- if ( preg_match( '/\<\?php/', $content ) ) {
85
- $allow_php = 1;
86
- } else {
87
- $allow_php = 0;
88
- }
89
  }
90
  ?>
91
  <label class="label" for="advads-parameters-php"><?php esc_html_e( 'Allow PHP', 'advanced-ads' ); ?></label>
92
  <div>
93
- <input id="advads-parameters-php" type="checkbox" name="advanced_ad[output][allow_php]"
94
- value="1" <?php checked( 1, $allow_php ); ?>
95
- onChange="Advanced_Ads_Admin.check_ad_source();"/>
96
- <span class="advads-help">
97
- <span class="advads-tooltip">
 
 
 
 
 
 
 
 
 
 
98
  <?php
99
- echo wp_kses(
100
- __( 'Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)', 'advanced-ads' ),
101
- array(
102
- 'code' => array(),
103
- )
104
  );
105
  ?>
106
- </span>
107
- </span>
108
- <p class="advads-notice-inline advads-error" id="advads-parameters-php-warning"
109
- style="display:none;"><?php esc_html_e( 'No PHP tag detected in your code.', 'advanced-ads' ); ?> <?php esc_html_e( 'Uncheck this checkbox for improved performance.', 'advanced-ads' ); ?></p>
 
 
 
 
 
110
  </div>
111
  <hr/>
112
  <?php
113
-
114
  }
115
 
116
  /**
@@ -147,8 +153,9 @@ class Advanced_Ads_Ad_Type_Plain extends Advanced_Ads_Ad_Type_Abstract {
147
  */
148
  public function prepare_output( $ad ) {
149
  $content = $ad->content;
 
150
  // Evaluate the code as PHP if setting was never saved or is allowed.
151
- if ( ! defined( 'ADVANCED_ADS_DISALLOW_PHP' ) && ( ! isset( $ad->output['allow_php'] ) || $ad->output['allow_php'] ) ) {
152
  ob_start();
153
  // This code only runs if the "Allow PHP" option for plain text ads was enabled.
154
  // phpcs:ignore Squiz.PHP.Eval.Discouraged -- this is specifically eval'd so allow eval here.
@@ -190,7 +197,60 @@ class Advanced_Ads_Ad_Type_Plain extends Advanced_Ads_Ad_Type_Abstract {
190
  }
191
  }
192
 
193
- return $content;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  }
195
 
 
 
 
 
 
 
 
 
 
 
 
 
196
  }
40
  * echo the output right away here
41
  * name parameters must be in the "advanced_ads" array
42
  *
43
+ * @param Advanced_Ads_Ad $ad Advanced_Ads_Ad.
44
  */
45
  public function render_parameters( $ad ) {
46
  // Load content.
47
  $content = ( isset( $ad->content ) ) ? $ad->content : '';
48
 
49
  ?><p class="description"><?php esc_html_e( 'Insert plain text or code into this field.', 'advanced-ads' ); ?></p>
50
+ <?php $this->error_unfiltered_html( $ad ); ?>
51
  <textarea id="advads-ad-content-plain" cols="40" rows="10" name="advanced_ad[content]"
52
  onkeyup="Advanced_Ads_Admin.check_ad_source();"><?php echo esc_textarea( $content ); ?></textarea>
53
  <?php include ADVADS_BASE_PATH . 'admin/views/ad-info-after-textarea.php'; ?>
68
  * @param object $ad Advanced_Ads_Ad object.
69
  */
70
  public function render_php_allow( $ad ) {
 
 
 
 
71
  $content = ( isset( $ad->content ) ) ? $ad->content : '';
72
 
73
  // Check if php is allowed.
78
  * For compatibility for ads with PHP added prior to 1.3.18
79
  * check if there is php code in the content
80
  */
81
+ $allow_php = preg_match( '/<\?php/', $content );
 
 
 
 
82
  }
83
  ?>
84
  <label class="label" for="advads-parameters-php"><?php esc_html_e( 'Allow PHP', 'advanced-ads' ); ?></label>
85
  <div>
86
+ <input id="advads-parameters-php" type="checkbox" name="advanced_ad[output][allow_php]" value="1" <?php checked( 1, $allow_php ); ?> onChange="Advanced_Ads_Admin.check_ad_source();" <?php disabled( ! $this->is_php_globally_allowed() ); ?>/>
87
+ <span class="advads-help">
88
+ <span class="advads-tooltip">
89
+ <?php
90
+ echo wp_kses(
91
+ __( 'Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)', 'advanced-ads' ),
92
+ array(
93
+ 'code' => array(),
94
+ )
95
+ );
96
+ ?>
97
+ </span>
98
+ </span>
99
+ <?php if ( ! $this->is_php_globally_allowed() ) : ?>
100
+ <p class="advads-notice-inline advads-error">
101
  <?php
102
+ printf(
103
+ /* translators: The name of the constant preventing PHP execution */
104
+ esc_html__( 'Executing PHP code has been disallowed by %s', 'advanced-ads' ),
105
+ sprintf( '<code>%s</code>', defined( 'DISALLOW_FILE_EDIT' ) && DISALLOW_FILE_EDIT ? 'DISALLOW_FILE_EDIT' : 'ADVANCED_ADS_DISALLOW_PHP' )
 
106
  );
107
  ?>
108
+ </p>
109
+ <?php else : ?>
110
+ <p class="advads-notice-inline advads-error" id="advads-allow-php-warning" style="display:none;">
111
+ <?php esc_html_e( 'Using PHP code can be dangerous. Please make sure you know what you are doing.', 'advanced-ads' ); ?>
112
+ </p>
113
+ <?php endif; ?>
114
+ <p class="advads-notice-inline advads-error" id="advads-parameters-php-warning" style="display:none;">
115
+ <?php esc_html_e( 'No PHP tag detected in your code.', 'advanced-ads' ); ?> <?php esc_html_e( 'Uncheck this checkbox for improved performance.', 'advanced-ads' ); ?>
116
+ </p>
117
  </div>
118
  <hr/>
119
  <?php
 
120
  }
121
 
122
  /**
153
  */
154
  public function prepare_output( $ad ) {
155
  $content = $ad->content;
156
+
157
  // Evaluate the code as PHP if setting was never saved or is allowed.
158
+ if ( ( ! isset( $ad->output['allow_php'] ) || $ad->output['allow_php'] ) && $this->is_php_globally_allowed() ) {
159
  ob_start();
160
  // This code only runs if the "Allow PHP" option for plain text ads was enabled.
161
  // phpcs:ignore Squiz.PHP.Eval.Discouraged -- this is specifically eval'd so allow eval here.
197
  }
198
  }
199
 
200
+ return $this->kses_ad( $content );
201
+ }
202
+
203
+ /**
204
+ * Check if php execution is globally forbidden.
205
+ *
206
+ * @return bool
207
+ */
208
+ private function is_php_globally_allowed() {
209
+ return ! ( defined( 'ADVANCED_ADS_DISALLOW_PHP' ) && ADVANCED_ADS_DISALLOW_PHP )
210
+ && ! ( defined( 'DISALLOW_FILE_EDIT' ) && DISALLOW_FILE_EDIT );
211
+ }
212
+
213
+ /**
214
+ * Check if we're on an ad edit screen, if yes and the user does not have `unfiltered_html` permissions,
215
+ * show an admin notice.
216
+ *
217
+ * @param Advanced_Ads_Ad $ad the current ad object.
218
+ *
219
+ * @return void
220
+ */
221
+ protected function error_unfiltered_html( Advanced_Ads_Ad $ad ) {
222
+ $author_id = (int) get_post_field( 'post_author', $ad->id );
223
+
224
+ if ( ! ( defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML ) ) {
225
+ return;
226
+ }
227
+
228
+ ?>
229
+ <p class="advads-notice-inline advads-error">
230
+ <?php
231
+ if ( $author_id === get_current_user_id() ) {
232
+ esc_html_e( 'You do not have sufficient permissions to include all HTML tags.', 'advanced-ads' );
233
+ } else {
234
+ esc_html_e( 'The creator of the ad does not have sufficient permissions to include all HTML tags.', 'advanced-ads' );
235
+ }
236
+ ?>
237
+ <a href="<?php echo esc_url( ADVADS_URL ) . '/manual/ad-types/#Plain_Text_and_Code'; ?>" target="_blank" rel="noopener">
238
+ <?php esc_html_e( 'Manual', 'advanced-ads' ); ?>
239
+ </a>
240
+ </p>
241
+ <?php
242
  }
243
 
244
+ /**
245
+ * Check if the ad content needs filtering.
246
+ *
247
+ * @param string $content The parsed ad content.
248
+ *
249
+ * @return string
250
+ */
251
+ protected function kses_ad( $content ) {
252
+ return defined( 'DISALLOW_UNFILTERED_HTML' ) && DISALLOW_UNFILTERED_HTML
253
+ ? wp_kses( $content, wp_kses_allowed_html( 'post' ) )
254
+ : $content;
255
+ }
256
  }
classes/display-conditions.php CHANGED
@@ -455,13 +455,16 @@ class Advanced_Ads_Display_Conditions {
455
 
456
  // set defaults.
457
  $max_authors = absint( apply_filters( 'advanced-ads-admin-max-terms', 50 ) );
458
- $authors = get_users(
459
- array(
460
- 'who' => 'authors',
461
- 'orderby' => 'nicename',
462
- 'number' => $max_authors,
463
- )
464
  );
 
 
 
 
 
 
465
 
466
  include ADVADS_BASE_PATH . 'admin/views/conditions/condition-author.php';
467
  }
455
 
456
  // set defaults.
457
  $max_authors = absint( apply_filters( 'advanced-ads-admin-max-terms', 50 ) );
458
+ $args = array(
459
+ 'orderby' => 'nicename',
460
+ 'number' => $max_authors,
 
 
 
461
  );
462
+ if ( version_compare( get_bloginfo( 'version' ), '5.9' ) > -1 ) {
463
+ $args['capability'] = array( 'edit_posts' );
464
+ } else {
465
+ $args['who'] = 'authors';
466
+ }
467
+ $authors = get_users( $args );
468
 
469
  include ADVADS_BASE_PATH . 'admin/views/conditions/condition-author.php';
470
  }
classes/frontend_checks.php CHANGED
@@ -107,7 +107,7 @@ class Advanced_Ads_Frontend_Checks {
107
  'parent' => 'advanced_ads_ad_health',
108
  'id' => 'advanced_ads_autoads_displayed',
109
  'title' => __( 'Random AdSense ads', 'advanced-ads' ),
110
- 'href' => ADVADS_URL . 'adsense-in-random-positions-auto-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=frontend-autoads-ads',
111
  'meta' => array(
112
  'class' => 'hidden',
113
  'target' => '_blank'
@@ -501,7 +501,7 @@ class Advanced_Ads_Frontend_Checks {
501
  'parent' => 'advanced_ads_ad_health',
502
  'id' => 'advanced_ads_ad_health_support',
503
  'title' => __( 'Get help', 'advanced-ads' ),
504
- 'href' => Advanced_Ads_Plugin::support_url( '#utm_source=advanced-ads&utm_medium=link&utm_campaign=health-support' ),
505
  'meta' => array(
506
  'target' => '_blank',
507
  )
107
  'parent' => 'advanced_ads_ad_health',
108
  'id' => 'advanced_ads_autoads_displayed',
109
  'title' => __( 'Random AdSense ads', 'advanced-ads' ),
110
+ 'href' => ADVADS_URL . 'adsense-in-random-positions-auto-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=frontend-autoads-ads',
111
  'meta' => array(
112
  'class' => 'hidden',
113
  'target' => '_blank'
501
  'parent' => 'advanced_ads_ad_health',
502
  'id' => 'advanced_ads_ad_health_support',
503
  'title' => __( 'Get help', 'advanced-ads' ),
504
+ 'href' => Advanced_Ads_Plugin::support_url( '?utm_source=advanced-ads&utm_medium=link&utm_campaign=health-support' ),
505
  'meta' => array(
506
  'target' => '_blank',
507
  )
classes/plugin.php CHANGED
@@ -748,7 +748,7 @@ class Advanced_Ads_Plugin {
748
  */
749
  public static function support_url( $utm = '' ) {
750
 
751
- $utm = empty( $utm ) ? '#utm_source=advanced-ads&utm_medium=link&utm_campaign=support' : $utm;
752
  if ( self::any_activated_add_on() ) {
753
  $url = ADVADS_URL . 'support/' . $utm . '-with-addons';
754
  } else {
748
  */
749
  public static function support_url( $utm = '' ) {
750
 
751
+ $utm = empty( $utm ) ? '?utm_source=advanced-ads&utm_medium=link&utm_campaign=support' : $utm;
752
  if ( self::any_activated_add_on() ) {
753
  $url = ADVADS_URL . 'support/' . $utm . '-with-addons';
754
  } else {
classes/visitor-conditions.php CHANGED
@@ -41,7 +41,7 @@ class Advanced_Ads_Visitor_Conditions {
41
  'description' => __( 'Display ads only on mobile devices or hide them.', 'advanced-ads' ),
42
  'metabox' => array( 'Advanced_Ads_Visitor_Conditions', 'mobile_is_or_not' ), // callback to generate the metabox.
43
  'check' => array( 'Advanced_Ads_Visitor_Conditions', 'check_mobile' ), // callback for frontend check.
44
- 'helplink' => ADVADS_URL . 'manual/display-ads-either-on-mobile-or-desktop/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor-mobile', // link to help section.
45
  ),
46
  'loggedin' => array(
47
  'label' => __( 'logged-in visitor', 'advanced-ads' ),
@@ -124,7 +124,7 @@ class Advanced_Ads_Visitor_Conditions {
124
  ),
125
  )
126
  ),
127
- ADVADS_URL . 'add-ons/responsive-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor-responsive'
128
  );
129
  ?></p><?php
130
  }
41
  'description' => __( 'Display ads only on mobile devices or hide them.', 'advanced-ads' ),
42
  'metabox' => array( 'Advanced_Ads_Visitor_Conditions', 'mobile_is_or_not' ), // callback to generate the metabox.
43
  'check' => array( 'Advanced_Ads_Visitor_Conditions', 'check_mobile' ), // callback for frontend check.
44
+ 'helplink' => ADVADS_URL . 'manual/display-ads-either-on-mobile-or-desktop/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor-mobile', // link to help section.
45
  ),
46
  'loggedin' => array(
47
  'label' => __( 'logged-in visitor', 'advanced-ads' ),
124
  ),
125
  )
126
  ),
127
+ ADVADS_URL . 'add-ons/responsive-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-visitor-responsive'
128
  );
129
  ?></p><?php
130
  }
languages/advanced-ads.pot CHANGED
@@ -2,14 +2,14 @@
2
  # This file is distributed under the same license as the Advanced Ads plugin.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Advanced Ads 1.31.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/advanced-ads/\n"
7
  "Last-Translator: Thomas Maier <post@webzunft.de>\n"
8
  "Language-Team: webgilde <support@wpadvancedads.com>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "POT-Creation-Date: 2022-02-02T08:51:23-06:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.4.0\n"
15
  "X-Domain: advanced-ads\n"
@@ -228,6 +228,7 @@ msgstr ""
228
  msgid "%s detected."
229
  msgstr ""
230
 
 
231
  #: admin/includes/ad-health-notices.php:253
232
  msgid "Learn how this might impact your ad setup."
233
  msgstr ""
@@ -452,16 +453,16 @@ msgstr ""
452
  msgid "Upgrade"
453
  msgstr ""
454
 
455
- #: admin/includes/class-admin-upgrades.php:82
456
  msgid "Pro Feature"
457
  msgstr ""
458
 
459
- #: admin/includes/class-admin-upgrades.php:107
460
  #: admin/includes/class-overview-widgets.php:460
461
  msgid "A quick and error-free way of implementing ad units from your Google Ad Manager account."
462
  msgstr ""
463
 
464
- #: admin/includes/class-admin-upgrades.php:172
465
  msgid "Duplicate"
466
  msgstr ""
467
 
@@ -677,7 +678,8 @@ msgstr ""
677
  #: admin/views/ad-main-metabox.php:29
678
  #: admin/views/ad-output-metabox.php:65
679
  #: admin/views/settings/general/custom-label.php:10
680
- #: modules/ads-txt/admin/views/setting-create.php:11
 
681
  #: modules/privacy/admin/views/setting-general.php:34
682
  msgid "Manual"
683
  msgstr ""
@@ -1190,7 +1192,6 @@ msgid "weight"
1190
  msgstr ""
1191
 
1192
  #: admin/views/ad-group-list-ads.php:45
1193
- #: admin/views/conditions/conditions-form.php:37
1194
  msgid "add"
1195
  msgstr ""
1196
 
@@ -1615,17 +1616,17 @@ msgstr ""
1615
  msgid "If you want to display the ad everywhere, don't do anything here. "
1616
  msgstr ""
1617
 
1618
- #: admin/views/conditions/display-conditions-list.php:53
1619
  msgid "Forced to OR."
1620
  msgstr ""
1621
 
1622
- #: admin/views/conditions/display-conditions-list.php:54
1623
- #: admin/views/conditions/display-conditions-list.php:57
1624
  #: modules/gadsense/admin/views/adsense-ad-parameters.php:120
1625
  msgid "manual"
1626
  msgstr ""
1627
 
1628
- #: admin/views/conditions/display-conditions-list.php:56
1629
  msgid "The ad might always show due to OR and \"is not\". Better use AND."
1630
  msgstr ""
1631
 
@@ -1731,6 +1732,7 @@ msgstr ""
1731
  msgid "Close"
1732
  msgstr ""
1733
 
 
1734
  #: admin/views/modal.php:39
1735
  #: admin/views/placements.php:232
1736
  msgid "Close and save"
@@ -1850,6 +1852,7 @@ msgstr ""
1850
  msgid "Adjust the placement options"
1851
  msgstr ""
1852
 
 
1853
  #: admin/views/placement-injection-top.php:21
1854
  msgid "Ad not showing up? Take a look <a href=\"%s\" target=\"_blank\">here</a>"
1855
  msgstr ""
@@ -1943,10 +1946,12 @@ msgstr ""
1943
  msgid "Existing placement"
1944
  msgstr ""
1945
 
 
1946
  #: admin/views/placement-injection-top.php:168
1947
  msgid "Or use the shortcode %s to insert the ad into the content manually."
1948
  msgstr ""
1949
 
 
1950
  #: admin/views/placement-injection-top.php:176
1951
  msgid "Learn more about your choices to display an ad in the <a href=\"%s\" target=\"_blank\">manual</a>."
1952
  msgstr ""
@@ -2544,7 +2549,7 @@ msgstr ""
2544
  msgid "Placement"
2545
  msgstr ""
2546
 
2547
- #: classes/ad-expiration.php:84
2548
  msgid "Expired"
2549
  msgstr ""
2550
 
@@ -2746,31 +2751,48 @@ msgstr ""
2746
  msgid "Insert plain text or code into this field."
2747
  msgstr ""
2748
 
2749
- #: classes/ad_type_plain.php:91
2750
  msgid "Allow PHP"
2751
  msgstr ""
2752
 
2753
- #: classes/ad_type_plain.php:100
2754
  msgid "Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)"
2755
  msgstr ""
2756
 
2757
- #: classes/ad_type_plain.php:109
 
 
 
 
 
 
 
 
 
2758
  msgid "No PHP tag detected in your code."
2759
  msgstr ""
2760
 
2761
- #: classes/ad_type_plain.php:109
2762
- #: classes/ad_type_plain.php:134
2763
  msgid "Uncheck this checkbox for improved performance."
2764
  msgstr ""
2765
 
2766
- #: classes/ad_type_plain.php:125
2767
  msgid "Execute shortcodes"
2768
  msgstr ""
2769
 
2770
- #: classes/ad_type_plain.php:134
2771
  msgid "No shortcode detected in your code."
2772
  msgstr ""
2773
 
 
 
 
 
 
 
 
 
2774
  #: classes/display-conditions.php:89
2775
  msgid "post type"
2776
  msgstr ""
@@ -2838,114 +2860,114 @@ msgstr ""
2838
  msgid "accelerated mobile pages"
2839
  msgstr ""
2840
 
2841
- #: classes/display-conditions.php:621
2842
  msgctxt "display the terms search field on ad edit page"
2843
  msgid "add more terms"
2844
  msgstr ""
2845
 
2846
- #: classes/display-conditions.php:625
2847
  msgid "term name or id"
2848
  msgstr ""
2849
 
2850
- #: classes/display-conditions.php:701
2851
  msgid "title or id"
2852
  msgstr ""
2853
 
2854
- #: classes/display-conditions.php:755
2855
  #: includes/array_ad_conditions.php:63
2856
  msgid "Home Page"
2857
  msgstr ""
2858
 
2859
- #: classes/display-conditions.php:756
2860
  #: includes/array_ad_conditions.php:64
2861
  msgid "show on Home page"
2862
  msgstr ""
2863
 
2864
- #: classes/display-conditions.php:760
2865
  #: includes/array_ad_conditions.php:68
2866
  msgid "Singular Pages"
2867
  msgstr ""
2868
 
2869
- #: classes/display-conditions.php:761
2870
  #: includes/array_ad_conditions.php:69
2871
  msgid "show on singular pages/posts"
2872
  msgstr ""
2873
 
2874
- #: classes/display-conditions.php:765
2875
  #: includes/array_ad_conditions.php:73
2876
  msgid "Archive Pages"
2877
  msgstr ""
2878
 
2879
- #: classes/display-conditions.php:766
2880
  #: includes/array_ad_conditions.php:74
2881
  msgid "show on any type of archive page (category, tag, author and date)"
2882
  msgstr ""
2883
 
2884
- #: classes/display-conditions.php:770
2885
  #: includes/array_ad_conditions.php:78
2886
  msgid "Search Results"
2887
  msgstr ""
2888
 
2889
- #: classes/display-conditions.php:771
2890
  #: includes/array_ad_conditions.php:79
2891
  msgid "show on search result pages"
2892
  msgstr ""
2893
 
2894
- #: classes/display-conditions.php:775
2895
  #: includes/array_ad_conditions.php:83
2896
  msgid "404 Page"
2897
  msgstr ""
2898
 
2899
- #: classes/display-conditions.php:776
2900
  #: includes/array_ad_conditions.php:84
2901
  msgid "show on 404 error page"
2902
  msgstr ""
2903
 
2904
- #: classes/display-conditions.php:780
2905
  #: includes/array_ad_conditions.php:88
2906
  msgid "Attachment Pages"
2907
  msgstr ""
2908
 
2909
- #: classes/display-conditions.php:781
2910
  #: includes/array_ad_conditions.php:89
2911
  msgid "show on attachment pages"
2912
  msgstr ""
2913
 
2914
- #: classes/display-conditions.php:785
2915
  #: includes/array_ad_conditions.php:93
2916
  msgid "Secondary Queries"
2917
  msgstr ""
2918
 
2919
- #: classes/display-conditions.php:786
2920
  #: includes/array_ad_conditions.php:94
2921
  msgid "allow ads in secondary queries"
2922
  msgstr ""
2923
 
2924
- #: classes/display-conditions.php:790
2925
  msgid "RSS Feed"
2926
  msgstr ""
2927
 
2928
- #: classes/display-conditions.php:791
2929
  msgid "allow ads in RSS Feed"
2930
  msgstr ""
2931
 
2932
- #: classes/display-conditions.php:795
2933
  msgid "REST API"
2934
  msgstr ""
2935
 
2936
- #: classes/display-conditions.php:796
2937
  msgid "allow ads in REST API"
2938
  msgstr ""
2939
 
2940
- #: classes/display-conditions.php:831
2941
  msgid "older than"
2942
  msgstr ""
2943
 
2944
- #: classes/display-conditions.php:832
2945
  msgid "younger than"
2946
  msgstr ""
2947
 
2948
- #: classes/display-conditions.php:834
2949
  msgid "days"
2950
  msgstr ""
2951
 
@@ -3442,11 +3464,11 @@ msgstr ""
3442
  msgid "Preview"
3443
  msgstr ""
3444
 
3445
- #: modules/ads-txt/admin/views/setting-create.php:19
3446
  msgid "Generate a single ads.txt file for all sites in the multisite network."
3447
  msgstr ""
3448
 
3449
- #: modules/ads-txt/admin/views/setting-create.php:27
3450
  msgid "Usually, this should be enabled on the main site of the network - often the one without a subdomain or subdirectory."
3451
  msgstr ""
3452
 
@@ -3528,20 +3550,20 @@ msgstr ""
3528
 
3529
  #. translators: %1$s is an opening a tag, %2$s is the closing one
3530
  #: modules/gadsense/admin/views/adsense-account.php:120
3531
- #: modules/gadsense/admin/views/adsense-account.php:211
3532
  msgid "See all %1$srecommended ad networks%2$s."
3533
  msgstr ""
3534
 
3535
- #: modules/gadsense/admin/views/adsense-account.php:185
3536
  msgid "How to choose specific positions for AdSense ad units"
3537
  msgstr ""
3538
 
3539
  #. translators: %1$s is the opening link tag to our manual; %2$s is the appropriate closing link tag; %3$s is the opening link tag to our help forum; %4$s is the appropriate closing link tag
3540
- #: modules/gadsense/admin/views/adsense-account.php:193
3541
  msgid "Problems with AdSense? Check out the %1$smanual%2$s or %3$sask here%4$s."
3542
  msgstr ""
3543
 
3544
- #: modules/gadsense/admin/views/adsense-account.php:225
3545
  #: modules/gadsense/admin/views/external-ads-links.php:38
3546
  msgid "Can not connect AdSense account. PHP version is too low."
3547
  msgstr ""
2
  # This file is distributed under the same license as the Advanced Ads plugin.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Advanced Ads 1.32.0-rc.1\n"
6
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/advanced-ads/\n"
7
  "Last-Translator: Thomas Maier <post@webzunft.de>\n"
8
  "Language-Team: webgilde <support@wpadvancedads.com>\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "POT-Creation-Date: 2022-03-03T09:02:51-06:00\n"
13
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
14
  "X-Generator: WP-CLI 2.4.0\n"
15
  "X-Domain: advanced-ads\n"
228
  msgid "%s detected."
229
  msgstr ""
230
 
231
+ #. translators: %s is a service or plugin name.
232
  #: admin/includes/ad-health-notices.php:253
233
  msgid "Learn how this might impact your ad setup."
234
  msgstr ""
453
  msgid "Upgrade"
454
  msgstr ""
455
 
456
+ #: admin/includes/class-admin-upgrades.php:83
457
  msgid "Pro Feature"
458
  msgstr ""
459
 
460
+ #: admin/includes/class-admin-upgrades.php:108
461
  #: admin/includes/class-overview-widgets.php:460
462
  msgid "A quick and error-free way of implementing ad units from your Google Ad Manager account."
463
  msgstr ""
464
 
465
+ #: admin/includes/class-admin-upgrades.php:173
466
  msgid "Duplicate"
467
  msgstr ""
468
 
678
  #: admin/views/ad-main-metabox.php:29
679
  #: admin/views/ad-output-metabox.php:65
680
  #: admin/views/settings/general/custom-label.php:10
681
+ #: classes/ad_type_plain.php:238
682
+ #: modules/ads-txt/admin/views/setting-create.php:12
683
  #: modules/privacy/admin/views/setting-general.php:34
684
  msgid "Manual"
685
  msgstr ""
1192
  msgstr ""
1193
 
1194
  #: admin/views/ad-group-list-ads.php:45
 
1195
  msgid "add"
1196
  msgstr ""
1197
 
1616
  msgid "If you want to display the ad everywhere, don't do anything here. "
1617
  msgstr ""
1618
 
1619
+ #: admin/views/conditions/display-conditions-list.php:58
1620
  msgid "Forced to OR."
1621
  msgstr ""
1622
 
1623
+ #: admin/views/conditions/display-conditions-list.php:59
1624
+ #: admin/views/conditions/display-conditions-list.php:62
1625
  #: modules/gadsense/admin/views/adsense-ad-parameters.php:120
1626
  msgid "manual"
1627
  msgstr ""
1628
 
1629
+ #: admin/views/conditions/display-conditions-list.php:61
1630
  msgid "The ad might always show due to OR and \"is not\". Better use AND."
1631
  msgstr ""
1632
 
1732
  msgid "Close"
1733
  msgstr ""
1734
 
1735
+ #. Translators: 1: "Options", 2: the name of a placement.
1736
  #: admin/views/modal.php:39
1737
  #: admin/views/placements.php:232
1738
  msgid "Close and save"
1852
  msgid "Adjust the placement options"
1853
  msgstr ""
1854
 
1855
+ #. translators: %s is a URL.
1856
  #: admin/views/placement-injection-top.php:21
1857
  msgid "Ad not showing up? Take a look <a href=\"%s\" target=\"_blank\">here</a>"
1858
  msgstr ""
1946
  msgid "Existing placement"
1947
  msgstr ""
1948
 
1949
+ #. translators: %s is some HTML.
1950
  #: admin/views/placement-injection-top.php:168
1951
  msgid "Or use the shortcode %s to insert the ad into the content manually."
1952
  msgstr ""
1953
 
1954
+ #. translators: %s is a URL.
1955
  #: admin/views/placement-injection-top.php:176
1956
  msgid "Learn more about your choices to display an ad in the <a href=\"%s\" target=\"_blank\">manual</a>."
1957
  msgstr ""
2549
  msgid "Placement"
2550
  msgstr ""
2551
 
2552
+ #: classes/ad-expiration.php:85
2553
  msgid "Expired"
2554
  msgstr ""
2555
 
2751
  msgid "Insert plain text or code into this field."
2752
  msgstr ""
2753
 
2754
+ #: classes/ad_type_plain.php:84
2755
  msgid "Allow PHP"
2756
  msgstr ""
2757
 
2758
+ #: classes/ad_type_plain.php:91
2759
  msgid "Execute PHP code (wrapped in <code>&lt;?php ?&gt;</code>)"
2760
  msgstr ""
2761
 
2762
+ #. translators: The name of the constant preventing PHP execution
2763
+ #: classes/ad_type_plain.php:104
2764
+ msgid "Executing PHP code has been disallowed by %s"
2765
+ msgstr ""
2766
+
2767
+ #: classes/ad_type_plain.php:111
2768
+ msgid "Using PHP code can be dangerous. Please make sure you know what you are doing."
2769
+ msgstr ""
2770
+
2771
+ #: classes/ad_type_plain.php:115
2772
  msgid "No PHP tag detected in your code."
2773
  msgstr ""
2774
 
2775
+ #: classes/ad_type_plain.php:115
2776
+ #: classes/ad_type_plain.php:140
2777
  msgid "Uncheck this checkbox for improved performance."
2778
  msgstr ""
2779
 
2780
+ #: classes/ad_type_plain.php:131
2781
  msgid "Execute shortcodes"
2782
  msgstr ""
2783
 
2784
+ #: classes/ad_type_plain.php:140
2785
  msgid "No shortcode detected in your code."
2786
  msgstr ""
2787
 
2788
+ #: classes/ad_type_plain.php:232
2789
+ msgid "You do not have sufficient permissions to include all HTML tags."
2790
+ msgstr ""
2791
+
2792
+ #: classes/ad_type_plain.php:234
2793
+ msgid "The creator of the ad does not have sufficient permissions to include all HTML tags."
2794
+ msgstr ""
2795
+
2796
  #: classes/display-conditions.php:89
2797
  msgid "post type"
2798
  msgstr ""
2860
  msgid "accelerated mobile pages"
2861
  msgstr ""
2862
 
2863
+ #: classes/display-conditions.php:624
2864
  msgctxt "display the terms search field on ad edit page"
2865
  msgid "add more terms"
2866
  msgstr ""
2867
 
2868
+ #: classes/display-conditions.php:628
2869
  msgid "term name or id"
2870
  msgstr ""
2871
 
2872
+ #: classes/display-conditions.php:704
2873
  msgid "title or id"
2874
  msgstr ""
2875
 
2876
+ #: classes/display-conditions.php:758
2877
  #: includes/array_ad_conditions.php:63
2878
  msgid "Home Page"
2879
  msgstr ""
2880
 
2881
+ #: classes/display-conditions.php:759
2882
  #: includes/array_ad_conditions.php:64
2883
  msgid "show on Home page"
2884
  msgstr ""
2885
 
2886
+ #: classes/display-conditions.php:763
2887
  #: includes/array_ad_conditions.php:68
2888
  msgid "Singular Pages"
2889
  msgstr ""
2890
 
2891
+ #: classes/display-conditions.php:764
2892
  #: includes/array_ad_conditions.php:69
2893
  msgid "show on singular pages/posts"
2894
  msgstr ""
2895
 
2896
+ #: classes/display-conditions.php:768
2897
  #: includes/array_ad_conditions.php:73
2898
  msgid "Archive Pages"
2899
  msgstr ""
2900
 
2901
+ #: classes/display-conditions.php:769
2902
  #: includes/array_ad_conditions.php:74
2903
  msgid "show on any type of archive page (category, tag, author and date)"
2904
  msgstr ""
2905
 
2906
+ #: classes/display-conditions.php:773
2907
  #: includes/array_ad_conditions.php:78
2908
  msgid "Search Results"
2909
  msgstr ""
2910
 
2911
+ #: classes/display-conditions.php:774
2912
  #: includes/array_ad_conditions.php:79
2913
  msgid "show on search result pages"
2914
  msgstr ""
2915
 
2916
+ #: classes/display-conditions.php:778
2917
  #: includes/array_ad_conditions.php:83
2918
  msgid "404 Page"
2919
  msgstr ""
2920
 
2921
+ #: classes/display-conditions.php:779
2922
  #: includes/array_ad_conditions.php:84
2923
  msgid "show on 404 error page"
2924
  msgstr ""
2925
 
2926
+ #: classes/display-conditions.php:783
2927
  #: includes/array_ad_conditions.php:88
2928
  msgid "Attachment Pages"
2929
  msgstr ""
2930
 
2931
+ #: classes/display-conditions.php:784
2932
  #: includes/array_ad_conditions.php:89
2933
  msgid "show on attachment pages"
2934
  msgstr ""
2935
 
2936
+ #: classes/display-conditions.php:788
2937
  #: includes/array_ad_conditions.php:93
2938
  msgid "Secondary Queries"
2939
  msgstr ""
2940
 
2941
+ #: classes/display-conditions.php:789
2942
  #: includes/array_ad_conditions.php:94
2943
  msgid "allow ads in secondary queries"
2944
  msgstr ""
2945
 
2946
+ #: classes/display-conditions.php:793
2947
  msgid "RSS Feed"
2948
  msgstr ""
2949
 
2950
+ #: classes/display-conditions.php:794
2951
  msgid "allow ads in RSS Feed"
2952
  msgstr ""
2953
 
2954
+ #: classes/display-conditions.php:798
2955
  msgid "REST API"
2956
  msgstr ""
2957
 
2958
+ #: classes/display-conditions.php:799
2959
  msgid "allow ads in REST API"
2960
  msgstr ""
2961
 
2962
+ #: classes/display-conditions.php:834
2963
  msgid "older than"
2964
  msgstr ""
2965
 
2966
+ #: classes/display-conditions.php:835
2967
  msgid "younger than"
2968
  msgstr ""
2969
 
2970
+ #: classes/display-conditions.php:837
2971
  msgid "days"
2972
  msgstr ""
2973
 
3464
  msgid "Preview"
3465
  msgstr ""
3466
 
3467
+ #: modules/ads-txt/admin/views/setting-create.php:21
3468
  msgid "Generate a single ads.txt file for all sites in the multisite network."
3469
  msgstr ""
3470
 
3471
+ #: modules/ads-txt/admin/views/setting-create.php:29
3472
  msgid "Usually, this should be enabled on the main site of the network - often the one without a subdomain or subdirectory."
3473
  msgstr ""
3474
 
3550
 
3551
  #. translators: %1$s is an opening a tag, %2$s is the closing one
3552
  #: modules/gadsense/admin/views/adsense-account.php:120
3553
+ #: modules/gadsense/admin/views/adsense-account.php:212
3554
  msgid "See all %1$srecommended ad networks%2$s."
3555
  msgstr ""
3556
 
3557
+ #: modules/gadsense/admin/views/adsense-account.php:186
3558
  msgid "How to choose specific positions for AdSense ad units"
3559
  msgstr ""
3560
 
3561
  #. translators: %1$s is the opening link tag to our manual; %2$s is the appropriate closing link tag; %3$s is the opening link tag to our help forum; %4$s is the appropriate closing link tag
3562
+ #: modules/gadsense/admin/views/adsense-account.php:194
3563
  msgid "Problems with AdSense? Check out the %1$smanual%2$s or %3$sask here%4$s."
3564
  msgstr ""
3565
 
3566
+ #: modules/gadsense/admin/views/adsense-account.php:226
3567
  #: modules/gadsense/admin/views/external-ads-links.php:38
3568
  msgid "Can not connect AdSense account. PHP version is too low."
3569
  msgstr ""
modules/ad-blocker/admin/views/setting-use-adblocker.php CHANGED
@@ -6,4 +6,4 @@
6
  <p class="description"><?php _e( 'Prevents ad block software from breaking your website when blocking asset files (.js, .css).', 'advanced-ads' ); ?></p>
7
  <?php if( ! defined('AAP_VERSION') ) : ?>
8
  <p><?php printf(__( 'Learn how to display alternative content to ad block users <a href="%s" target="_blank">in the manual</a>.', 'advanced-ads' ), ADVADS_URL . '/manual/ad-blockers/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adblock-manual' ); ?></p>
9
- <?php endif;
6
  <p class="description"><?php _e( 'Prevents ad block software from breaking your website when blocking asset files (.js, .css).', 'advanced-ads' ); ?></p>
7
  <?php if( ! defined('AAP_VERSION') ) : ?>
8
  <p><?php printf(__( 'Learn how to display alternative content to ad block users <a href="%s" target="_blank">in the manual</a>.', 'advanced-ads' ), ADVADS_URL . '/manual/ad-blockers/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adblock-manual' ); ?></p>
9
+ <?php endif;
modules/ads-txt/admin/views/setting-create.php CHANGED
@@ -7,8 +7,10 @@
7
  <input type="radio" name="advads-ads-txt-create" value="0" <?php checked( $is_enabled, false ); ?> />
8
  <?php _e( 'disabled', 'advanced-ads' ); ?>
9
  </label>
10
- &nbsp;<span class="description"><a target="_blank" href="<?php
11
- echo ADVADS_URL . 'manual/ads-txt/#utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-ads-txt' ?>"><?php _e( 'Manual', 'advanced-ads' ); ?></a>
 
 
12
  </span>
13
 
14
  <?php if ( $can_process_all_network ) : ?>
7
  <input type="radio" name="advads-ads-txt-create" value="0" <?php checked( $is_enabled, false ); ?> />
8
  <?php _e( 'disabled', 'advanced-ads' ); ?>
9
  </label>
10
+ <span class="description">
11
+ <a target="_blank" href="<?php echo esc_url( ADVADS_URL ) . 'manual/ads-txt/?utm_source=advanced-ads&utm_medium=link&utm_campaign=settings-ads-txt'; ?>">
12
+ <?php esc_html_e( 'Manual', 'advanced-ads' ); ?>
13
+ </a>
14
  </span>
15
 
16
  <?php if ( $can_process_all_network ) : ?>
modules/gadsense/admin/admin.php CHANGED
@@ -184,7 +184,7 @@ class Advanced_Ads_AdSense_Admin {
184
  'text' => sprintf(
185
  // Translators: %s is a URL.
186
  __( 'Responsive AdSense ads don’t work reliably with <em>Position</em> set to left or right. Either switch the <em>Type</em> to "normal" or follow <a href="%s" target="_blank">this tutorial</a> if you want the ad to be wrapped in text.', 'advanced-ads' ),
187
- ADVADS_URL . 'adsense-responsive-custom-sizes/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-custom-sizes-tutorial'
188
  ),
189
  'class' => 'advads-ad-notice-responsive-position advads-notice-inline advads-error hidden',
190
  );
184
  'text' => sprintf(
185
  // Translators: %s is a URL.
186
  __( 'Responsive AdSense ads don’t work reliably with <em>Position</em> set to left or right. Either switch the <em>Type</em> to "normal" or follow <a href="%s" target="_blank">this tutorial</a> if you want the ad to be wrapped in text.', 'advanced-ads' ),
187
+ ADVADS_URL . 'adsense-responsive-custom-sizes/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-custom-sizes-tutorial'
188
  ),
189
  'class' => 'advads-ad-notice-responsive-position advads-notice-inline advads-error hidden',
190
  );
modules/gadsense/admin/views/adsense-account.php CHANGED
@@ -125,7 +125,7 @@ $alerts_advads_messages = Advanced_Ads_Adsense_MAPI::get_adsense_alert_messag
125
  ),
126
  )
127
  ),
128
- '<a href="' . esc_url( ADVADS_URL ) . ' recommended-ad-networks/#utm_source=advanced-ads&utm_medium=link&utm_campaign=recommendations" target="_blank">',
129
  '</a>'
130
  );
131
  ?>
@@ -181,7 +181,8 @@ $alerts_advads_messages = Advanced_Ads_Adsense_MAPI::get_adsense_alert_messag
181
  echo "<br/><br/><br/><hr>";
182
  include ADVADS_BASE_PATH . 'modules/gadsense/admin/views/auto-ads-video.php';
183
  ?><p>
184
- <a href="<?php echo esc_url( ADVADS_URL ); ?>place-adsense-ad-unit-manually/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-manually" style="text-decoration: none;" target="_blank"><span class="dashicons dashicons-welcome-learn-more"></span>&nbsp;<?php
 
185
  esc_attr_e( 'How to choose specific positions for AdSense ad units', 'advanced-ads' ); ?></a>
186
  </p><?php
187
  else : ?>
@@ -198,7 +199,7 @@ else : ?>
198
  ),
199
  )
200
  ),
201
- '<a href="' . esc_url( ADVADS_URL ) . 'adsense-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-manual-check" target="_blank">',
202
  '</a>',
203
  '<a href="https://wordpress.org/support/plugin/advanced-ads/#new-post" target="_blank">',
204
  '</a>'
@@ -216,7 +217,7 @@ else : ?>
216
  ),
217
  )
218
  ),
219
- '<a href="' . esc_url( ADVADS_URL ) . ' recommended-ad-networks/#utm_source=advanced-ads&utm_medium=link&utm_campaign=recommendations" target="_blank">',
220
  '</a>'
221
  );
222
  ?>
125
  ),
126
  )
127
  ),
128
+ '<a href="' . esc_url( ADVADS_URL ) . ' recommended-ad-networks/?utm_source=advanced-ads&utm_medium=link&utm_campaign=recommendations" target="_blank">',
129
  '</a>'
130
  );
131
  ?>
181
  echo "<br/><br/><br/><hr>";
182
  include ADVADS_BASE_PATH . 'modules/gadsense/admin/views/auto-ads-video.php';
183
  ?><p>
184
+ <a href="<?php echo esc_url( ADVADS_URL ); ?>place-adsense-ad-unit-manually/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-manually" style="text-decoration: none;" target="_blank"><span class="dashicons dashicons-welcome-learn-more"></span>
185
+ <?php
186
  esc_attr_e( 'How to choose specific positions for AdSense ad units', 'advanced-ads' ); ?></a>
187
  </p><?php
188
  else : ?>
199
  ),
200
  )
201
  ),
202
+ '<a href="' . esc_url( ADVADS_URL ) . 'adsense-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-manual-check" target="_blank">',
203
  '</a>',
204
  '<a href="https://wordpress.org/support/plugin/advanced-ads/#new-post" target="_blank">',
205
  '</a>'
217
  ),
218
  )
219
  ),
220
+ '<a href="' . esc_url( ADVADS_URL ) . ' recommended-ad-networks/?utm_source=advanced-ads&utm_medium=link&utm_campaign=recommendations" target="_blank">',
221
  '</a>'
222
  );
223
  ?>
modules/gadsense/admin/views/adsense-ad-parameters.php CHANGED
@@ -117,7 +117,7 @@ if( $pub_id_errors ) : ?>
117
  <option value="in-article" <?php selected( $unit_type, 'in-article' ); ?>><?php _e( 'In-article', 'advanced-ads' ); ?></option>
118
  <option value="in-feed" <?php selected( $unit_type, 'in-feed' ); ?>><?php _e( 'In-feed', 'advanced-ads' ); ?></option>
119
  </select>
120
- <a href="<?php echo ADVADS_URL . 'adsense-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-ad-types'; ?>" target="_blank"><?php _e( 'manual', 'advanced-ads' ); ?></a>
121
  </div>
122
  <?php if ( in_array( $unit_type, array( 'link', 'link-responsive' ), true ) ) : ?>
123
  <p class="advads-message-warning"><?php esc_html_e( 'Google AdSense deprecated Link Units. Please choose another type.', 'advanced-ads' ); ?>
117
  <option value="in-article" <?php selected( $unit_type, 'in-article' ); ?>><?php _e( 'In-article', 'advanced-ads' ); ?></option>
118
  <option value="in-feed" <?php selected( $unit_type, 'in-feed' ); ?>><?php _e( 'In-feed', 'advanced-ads' ); ?></option>
119
  </select>
120
+ <a href="<?php echo esc_url( ADVADS_URL ) . 'adsense-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-ad-types'; ?>" target="_blank"><?php esc_html_e( 'manual', 'advanced-ads' ); ?></a>
121
  </div>
122
  <?php if ( in_array( $unit_type, array( 'link', 'link-responsive' ), true ) ) : ?>
123
  <p class="advads-message-warning"><?php esc_html_e( 'Google AdSense deprecated Link Units. Please choose another type.', 'advanced-ads' ); ?>
modules/gadsense/includes/class-mapi.php CHANGED
@@ -1642,7 +1642,7 @@ class Advanced_Ads_AdSense_MAPI {
1642
  $link = sprintf(
1643
  // translators: %1$s is an anchor (link) opening tag, %2$s is the closing tag.
1644
  esc_attr__( 'Learn more about AdSense account issues %1$shere%2$s.', 'advanced-ads' ),
1645
- '<a href="' . ADVADS_URL . 'adsense-errors/#utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-error'. $code .'" target="_blank">',
1646
  '</a>'
1647
  );
1648
  return $link;
1642
  $link = sprintf(
1643
  // translators: %1$s is an anchor (link) opening tag, %2$s is the closing tag.
1644
  esc_attr__( 'Learn more about AdSense account issues %1$shere%2$s.', 'advanced-ads' ),
1645
+ '<a href="' . ADVADS_URL . 'adsense-errors/?utm_source=advanced-ads&utm_medium=link&utm_campaign=adsense-error' . $code . '" target="_blank">',
1646
  '</a>'
1647
  );
1648
  return $link;
modules/gadsense/includes/class-network-adsense.php CHANGED
@@ -222,7 +222,7 @@ class Advanced_Ads_Network_Adsense extends Advanced_Ads_Ad_Network {
222
  </label>
223
  <ul>
224
  <li><a href="<?php echo esc_url( ADVADS_URL ) . 'adsense-auto-ads-wordpress/#Display_Auto_Ads_only_on_specific_pages'; ?>" target="_blank"><?php esc_attr_e( 'Display Auto ads only on specific pages', 'advanced-ads' ); ?></a></li>
225
- <li><a href="<?php echo esc_url( ADVADS_URL ) . 'adsense-in-random-positions-auto-ads/#utm_source=advanced-ads&utm_medium=link&utm_campaign=backend-autoads-ads'; ?>" target="_blank"><?php esc_attr_e( 'Why are ads appearing in random positions?', 'advanced-ads' ); ?></a></li>
226
  <?php
227
  if ( ! empty( $options['adsense-id'] ) ) :
228
  ?>
@@ -288,7 +288,7 @@ class Advanced_Ads_Network_Adsense extends Advanced_Ads_Ad_Network {
288
  ),
289
  )
290
  ),
291
- esc_url( ADVADS_URL ) . 'manual/ad-health/#utm_source=advanced-ads&utm_medium=link&utm_campaign=backend-autoads-ads'
292
  );
293
  ?>
294
  </p>
222
  </label>
223
  <ul>
224
  <li><a href="<?php echo esc_url( ADVADS_URL ) . 'adsense-auto-ads-wordpress/#Display_Auto_Ads_only_on_specific_pages'; ?>" target="_blank"><?php esc_attr_e( 'Display Auto ads only on specific pages', 'advanced-ads' ); ?></a></li>
225
+ <li><a href="<?php echo esc_url( ADVADS_URL ) . 'adsense-in-random-positions-auto-ads/?utm_source=advanced-ads&utm_medium=link&utm_campaign=backend-autoads-ads'; ?>" target="_blank"><?php esc_attr_e( 'Why are ads appearing in random positions?', 'advanced-ads' ); ?></a></li>
226
  <?php
227
  if ( ! empty( $options['adsense-id'] ) ) :
228
  ?>
288
  ),
289
  )
290
  ),
291
+ esc_url( ADVADS_URL ) . 'manual/ad-health/?utm_source=advanced-ads&utm_medium=link&utm_campaign=backend-autoads-ads'
292
  );
293
  ?>
294
  </p>
modules/gutenberg/includes/class-gutenberg.php CHANGED
@@ -123,10 +123,13 @@ class Advanced_Ads_Gutenberg {
123
  $output = array(
124
  'output' => array(
125
  'class' => ! empty( $attr['className'] ) ? array_filter( explode( ' ', $attr['className'] ) ) : array(),
126
- 'wrapper_attrs' => array( 'data-fixed_widget' => isset( $attr['fixed_widget'] ) ? $attr['fixed_widget'] : '' ),
127
  ),
128
  );
129
 
 
 
 
 
130
  // phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped -- we can't escape ad output without potentially breaking ads
131
  if ( 0 === strpos( $attr['itemID'], 'ad_' ) ) {
132
  echo get_ad( absint( substr( $attr['itemID'], 3 ) ), $output );
123
  $output = array(
124
  'output' => array(
125
  'class' => ! empty( $attr['className'] ) ? array_filter( explode( ' ', $attr['className'] ) ) : array(),
 
126
  ),
127
  );
128
 
129
+ if ( isset( $attr['fixed_widget'] ) ) {
130
+ $output['wrapper_attrs']['data-fixed_widget'] = $attr['fixed_widget'];
131
+ }
132
+
133
  // phpcs:disable WordPress.Security.EscapeOutput.OutputNotEscaped -- we can't escape ad output without potentially breaking ads
134
  if ( 0 === strpos( $attr['itemID'], 'ad_' ) ) {
135
  echo get_ad( absint( substr( $attr['itemID'], 3 ) ), $output );
modules/privacy/admin/admin.php CHANGED
@@ -119,7 +119,7 @@ class Advanced_Ads_Privacy_Admin {
119
  ),
120
  'custom' => array(
121
  'label' => __( 'Cookie', 'advanced-ads' ),
122
- 'manual_url' => ADVADS_URL . 'manual/ad-cookie-consent/#utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-tab',
123
  ),
124
  'iab_tcf_20' => array(
125
  'label' => sprintf(
@@ -127,7 +127,7 @@ class Advanced_Ads_Privacy_Admin {
127
  __( 'TCF v2.0 integration (e.g., %s)', 'advanced-ads' ),
128
  'Quantcast Choices'
129
  ),
130
- 'manual_url' => ADVADS_URL . 'manual/tcf-consent-wordpress/#utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-tab',
131
  ),
132
  );
133
  $current_method = isset( $options['consent-method'] ) ? $options['consent-method'] : '';
@@ -135,7 +135,7 @@ class Advanced_Ads_Privacy_Admin {
135
  $custom_cookie_value = isset( $options['custom-cookie-value'] ) ? $options['custom-cookie-value'] : '';
136
  $show_non_personalized_adsense = isset( $options['show-non-personalized-adsense'] );
137
  $link_default_attrs = array(
138
- 'href' => esc_url( ADVADS_URL . 'add-ons/advanced-ads-pro/#utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-cache' ),
139
  'target' => '_blank',
140
  );
141
  $pro_link_attrs = apply_filters( 'advanced-ads-privacy-custom-link-attributes', $link_default_attrs );
119
  ),
120
  'custom' => array(
121
  'label' => __( 'Cookie', 'advanced-ads' ),
122
+ 'manual_url' => ADVADS_URL . 'manual/ad-cookie-consent/?utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-tab',
123
  ),
124
  'iab_tcf_20' => array(
125
  'label' => sprintf(
127
  __( 'TCF v2.0 integration (e.g., %s)', 'advanced-ads' ),
128
  'Quantcast Choices'
129
  ),
130
+ 'manual_url' => ADVADS_URL . 'manual/tcf-consent-wordpress/?utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-tab',
131
  ),
132
  );
133
  $current_method = isset( $options['consent-method'] ) ? $options['consent-method'] : '';
135
  $custom_cookie_value = isset( $options['custom-cookie-value'] ) ? $options['custom-cookie-value'] : '';
136
  $show_non_personalized_adsense = isset( $options['show-non-personalized-adsense'] );
137
  $link_default_attrs = array(
138
+ 'href' => esc_url( ADVADS_URL . 'add-ons/advanced-ads-pro/?utm_source=advanced-ads&utm_medium=link&utm_campaign=privacy-cache' ),
139
  'target' => '_blank',
140
  );
141
  $pro_link_attrs = apply_filters( 'advanced-ads-privacy-custom-link-attributes', $link_default_attrs );
public/views/ad-debug.php CHANGED
@@ -5,5 +5,5 @@ endif; ?>
5
  <div id="<?php echo $wrapper_id; ?>" style="<?php echo $style; ?>">
6
  <strong><?php _e( 'Ad debug output', 'advanced-ads' ); ?></strong>
7
  <?php echo '<br /><br />' . implode( '<br /><br />', $content ); ?>
8
- <br /><br /><a style="color: green;" href="<?php echo ADVADS_URL; ?>manual/ad-debug-mode/#utm_source=advanced-ads&utm_medium=link&utm_campaign=ad-debug-mode" target="_blank"><?php _e( 'Find solutions in the manual', 'advanced-ads' ); ?></a>
9
  </div>
5
  <div id="<?php echo $wrapper_id; ?>" style="<?php echo $style; ?>">
6
  <strong><?php _e( 'Ad debug output', 'advanced-ads' ); ?></strong>
7
  <?php echo '<br /><br />' . implode( '<br /><br />', $content ); ?>
8
+ <br /><br /><a style="color: green;" href="<?php echo esc_url( ADVADS_URL ); ?>manual/ad-debug-mode/?utm_source=advanced-ads&utm_medium=link&utm_campaign=ad-debug-mode" target="_blank"><?php esc_html_e( 'Find solutions in the manual', 'advanced-ads' ); ?></a>
9
  </div>
readme.txt CHANGED
@@ -324,6 +324,18 @@ Yes. You can use plenty of [hooks](https://wpadvancedads.com/codex/) to customiz
324
 
325
  == Changelog ==
326
 
 
 
 
 
 
 
 
 
 
 
 
 
327
  = 1.31.1 =
328
 
329
  - Fix: show ad edit button when Advanced Ads block is used
324
 
325
  == Changelog ==
326
 
327
+ = untagged =
328
+
329
+ - Improvement: load display/visitor conditions automatically after selecting them
330
+ - Fix: prevent undefined index notice in display conditions
331
+ - Fix: accommodate for deprecation in WP_User_Query in WordPress 5.9.0
332
+ - Fix: prevent tooltips from flowing out of right edge of viewport
333
+ - Fix: correct ad list counter for expiring ads
334
+ - Fix: prevent creating unneeded group wrapper around Advanced Ads block
335
+ - Fix: escape the ad title on groups screen to prevent authenticated XSS
336
+ - Fix: prevent authenticated XSS in plain text ads if `DISALLOW_UNFILTERED_HTML` is set
337
+ - Fix: prevent authenticated RCE in plain text ads if `DISALLOW_FILE_EDIT` is set
338
+
339
  = 1.31.1 =
340
 
341
  - Fix: show ad edit button when Advanced Ads block is used