Version Description
- sanitize Container ID option on save and warn about wrong format
- made Placements page work when another plugin includes Twitter Bootstrap
- updated missing ads.txt warning
- disabled Privacy module on AMP pages so that the Google AMP cache shows them
- fixed warnings for some features on AMP pages
- fixed suggestion to switch Auto ads code in plain text ad type to AdSense ad type
Download this release
Release Info
Developer | webzunft |
Plugin | Advanced Ads |
Version | 1.14.5 |
Comparing to | |
See all releases |
Code changes from version 1.14.4 to 1.14.5
- admin/assets/js/admin.js +10 -7
- admin/includes/ad-health-notices.php +25 -1
- admin/includes/class-meta-box.php +11 -8
- admin/includes/class-overview-widgets.php +6 -3
- admin/views/ad-output-metabox.php +3 -2
- advanced-ads.php +2 -2
- classes/ad-health-notices.php +5 -0
- classes/ad.php +4 -1
- classes/checks.php +30 -0
- classes/frontend_checks.php +92 -21
- classes/plugin.php +7 -0
- includes/functions.php +8 -1
- languages/advanced-ads.pot +172 -155
- modules/adblock-finder/public/public.php +4 -0
- modules/gadsense/admin/admin.php +1 -1
- modules/gadsense/includes/class-mapi.php +1 -1
- modules/gadsense/public/public.php +3 -0
- modules/privacy/classes/plugin.php +5 -0
- public/views/ad-debug.php +4 -2
- readme.txt +23 -1
admin/assets/js/admin.js
CHANGED
@@ -270,6 +270,15 @@ jQuery( document ).ready(function ($) {
|
|
270 |
usagediv.show();
|
271 |
}
|
272 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
273 |
/**
|
274 |
* automatically open all options and show usage link when this is the placement linked in the URL
|
275 |
* also highlight the box with an effect for a short time
|
@@ -962,13 +971,12 @@ jQuery.fn.advads_buttonset = function() {
|
|
962 |
* @param arguments_ mixed Widget arguments.
|
963 |
*/
|
964 |
function _advads_apply_jqueryui_widget( name, revoke, args ) {
|
965 |
-
var revoked = {};
|
966 |
var can_apply = true;
|
967 |
|
968 |
jQuery.each( revoke, function( _index, _name ) {
|
969 |
if ( jQuery.fn[ _name ].noConflict ) {
|
970 |
// Revoke Twitter Bootstrap, assign jQuery UI.
|
971 |
-
|
972 |
}
|
973 |
can_apply = _advads_can_apply_jqueryui_widget( _name );
|
974 |
});
|
@@ -980,11 +988,6 @@ function _advads_apply_jqueryui_widget( name, revoke, args ) {
|
|
980 |
}
|
981 |
|
982 |
var r = this[ name ].apply( this, args );
|
983 |
-
|
984 |
-
jQuery.each( revoked, function( _name, _widget ) {
|
985 |
-
// Revoke jQuery UI, assign Bootstrap.
|
986 |
-
jQuery.fn[ _name ] = _widget;
|
987 |
-
});
|
988 |
return r;
|
989 |
}
|
990 |
|
270 |
usagediv.show();
|
271 |
}
|
272 |
});
|
273 |
+
// show warning if Container ID option contains invalid characters
|
274 |
+
$( '#advads-output-wrapper-id' ).keyup( function(){
|
275 |
+
var id_value = $( this ).val();
|
276 |
+
if( /^[a-z-0-9]*$/.test( id_value ) ){
|
277 |
+
$( '.advads-output-wrapper-id-error' ).removeClass( 'advads-error-message' );
|
278 |
+
} else {
|
279 |
+
$( '.advads-output-wrapper-id-error' ).addClass( 'advads-error-message' ).css( 'display', 'block' );
|
280 |
+
}
|
281 |
+
});
|
282 |
/**
|
283 |
* automatically open all options and show usage link when this is the placement linked in the URL
|
284 |
* also highlight the box with an effect for a short time
|
971 |
* @param arguments_ mixed Widget arguments.
|
972 |
*/
|
973 |
function _advads_apply_jqueryui_widget( name, revoke, args ) {
|
|
|
974 |
var can_apply = true;
|
975 |
|
976 |
jQuery.each( revoke, function( _index, _name ) {
|
977 |
if ( jQuery.fn[ _name ].noConflict ) {
|
978 |
// Revoke Twitter Bootstrap, assign jQuery UI.
|
979 |
+
jQuery.fn[ _name ].noConflict();
|
980 |
}
|
981 |
can_apply = _advads_can_apply_jqueryui_widget( _name );
|
982 |
});
|
988 |
}
|
989 |
|
990 |
var r = this[ name ].apply( this, args );
|
|
|
|
|
|
|
|
|
|
|
991 |
return r;
|
992 |
}
|
993 |
|
admin/includes/ad-health-notices.php
CHANGED
@@ -185,7 +185,7 @@ $advanced_ads_ad_health_notices = apply_filters( 'advanced-ads-ad-health-notices
|
|
185 |
__( 'Last AdSense account connection attempt failed.', 'advanced-ads' ) . ' ' .
|
186 |
// translators: %1$s is the opening a tag and %2$s the closing one.
|
187 |
__( 'Create a new AdSense account %1$shere%2$s.', 'advanced-ads' ) . ' ' . Advanced_Ads_Ad_Health_Notices::get_adsense_error_link( 'noAdSenseAccount' ),
|
188 |
-
'<a href="https://www.google.com/adsense/start/?utm_source=AdvancedAdsPlugIn&utm_medium=partnerships&utm_campaign=
|
189 |
'</a>'
|
190 |
),
|
191 |
'type' => 'problem',
|
@@ -210,6 +210,16 @@ $advanced_ads_ad_health_notices = apply_filters( 'advanced-ads-ad-health-notices
|
|
210 |
) . ' ' . Advanced_Ads_Ad_Health_Notices::get_adsense_error_link( 'ADS_TXT_MISSING' ),
|
211 |
'type' => 'problem',
|
212 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
213 |
'nested_the_content_filters' => array(
|
214 |
'text' => sprintf(
|
215 |
// translators: %s is a filter hook, here `the_content`.
|
@@ -288,6 +298,20 @@ $advanced_ads_ad_health_notices = apply_filters( 'advanced-ads-ad-health-notices
|
|
288 |
__( 'Advanced Ads handles your ads.txt file automatically. You might be able to <strong>remove %1$s</strong>.', 'advanced-ads' ),
|
289 |
implode( ', ', Advanced_Ads_Checks::ads_txt_plugins() )
|
290 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
291 |
'hide' => false,
|
292 |
'timeout' => YEAR_IN_SECONDS,
|
293 |
),
|
185 |
__( 'Last AdSense account connection attempt failed.', 'advanced-ads' ) . ' ' .
|
186 |
// translators: %1$s is the opening a tag and %2$s the closing one.
|
187 |
__( 'Create a new AdSense account %1$shere%2$s.', 'advanced-ads' ) . ' ' . Advanced_Ads_Ad_Health_Notices::get_adsense_error_link( 'noAdSenseAccount' ),
|
188 |
+
'<a href="https://www.google.com/adsense/start/?utm_source=AdvancedAdsPlugIn&utm_medium=partnerships&utm_campaign=AdvancedAdsPartner1" target="_blank">',
|
189 |
'</a>'
|
190 |
),
|
191 |
'type' => 'problem',
|
210 |
) . ' ' . Advanced_Ads_Ad_Health_Notices::get_adsense_error_link( 'ADS_TXT_MISSING' ),
|
211 |
'type' => 'problem',
|
212 |
),
|
213 |
+
// AdSense account alert. . Missing ads.txt – version 3.
|
214 |
+
'adsense_alert_ADS_TXT_ISSUES' => array(
|
215 |
+
'text' => sprintf(
|
216 |
+
__( 'One of your sites is missing the AdSense publisher ID in the ads.txt file.', 'advanced-ads' )
|
217 |
+
. ' <a class="advads-settings-link" href="%s">'
|
218 |
+
. _x( 'Create one now.', 'related to ads.txt file', 'advanced-ads' ) . '</a>',
|
219 |
+
admin_url( 'admin.php?page=advanced-ads-settings#general__advads-ads-txt' )
|
220 |
+
) . ' ' . Advanced_Ads_Ad_Health_Notices::get_adsense_error_link( 'ADS_TXT_ISSUES' ),
|
221 |
+
'type' => 'problem',
|
222 |
+
),
|
223 |
'nested_the_content_filters' => array(
|
224 |
'text' => sprintf(
|
225 |
// translators: %s is a filter hook, here `the_content`.
|
298 |
__( 'Advanced Ads handles your ads.txt file automatically. You might be able to <strong>remove %1$s</strong>.', 'advanced-ads' ),
|
299 |
implode( ', ', Advanced_Ads_Checks::ads_txt_plugins() )
|
300 |
),
|
301 |
+
'type' => 'notice',
|
302 |
+
'hide' => false,
|
303 |
+
'timeout' => YEAR_IN_SECONDS,
|
304 |
+
),
|
305 |
+
// Notice about plugins that add header or footer code.
|
306 |
+
// Advanced_Ads_Checks::header_footer_plugins().
|
307 |
+
'header_footer_plugins_enabled' => array(
|
308 |
+
'text' =>
|
309 |
+
__( 'Advanced Ads handles header and footer codes.', 'advanced-ads' ) . ' ' .
|
310 |
+
sprintf( __( 'You might be able to <strong>remove %1$s</strong>.', 'advanced-ads' ),
|
311 |
+
implode( ', ', Advanced_Ads_Checks::header_footer_plugins() )
|
312 |
+
) . ' ' .
|
313 |
+
'<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>',
|
314 |
+
'type' => 'notice',
|
315 |
'hide' => false,
|
316 |
'timeout' => YEAR_IN_SECONDS,
|
317 |
),
|
admin/includes/class-meta-box.php
CHANGED
@@ -240,14 +240,17 @@ class Advanced_Ads_Admin_Meta_Boxes {
|
|
240 |
}
|
241 |
|
242 |
if ( 'ad-parameters-box' === $box['id'] && Advanced_Ads_Ad_Type_Adsense::content_is_adsense( $ad->content ) && in_array( $ad->type, array( 'plain', 'content' ) ) ) {
|
243 |
-
$
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
|
|
|
|
|
|
251 |
}
|
252 |
|
253 |
$warnings = apply_filters( 'advanced-ads-ad-notices', $warnings, $box, $post );
|
240 |
}
|
241 |
|
242 |
if ( 'ad-parameters-box' === $box['id'] && Advanced_Ads_Ad_Type_Adsense::content_is_adsense( $ad->content ) && in_array( $ad->type, array( 'plain', 'content' ) ) ) {
|
243 |
+
if ( false === strpos( $ad->content, 'enable_page_level_ads' ) ) {
|
244 |
+
$adsense_auto_ads = Advanced_Ads_AdSense_Data::get_instance()->is_page_level_enabled();
|
245 |
+
$warnings[] = array(
|
246 |
+
'class' => 'advads-adsense-found-in-content error',
|
247 |
+
'text' => sprintf(
|
248 |
+
esc_html__( 'This looks like an AdSense ad. Switch the ad type to “AdSense ad” to make use of more features. %sSwitch to AdSense ad%s.', 'advanced' ),
|
249 |
+
'<button class="button-secondary" id="switch-to-adsense-type">',
|
250 |
+
'</button>'
|
251 |
+
)
|
252 |
+
);
|
253 |
+
}
|
254 |
}
|
255 |
|
256 |
$warnings = apply_filters( 'advanced-ads-ad-notices', $warnings, $box, $post );
|
admin/includes/class-overview-widgets.php
CHANGED
@@ -353,9 +353,12 @@ class Advanced_Ads_Overview_Widgets_Callbacks {
|
|
353 |
* @param bool $hide_activated if true, hide activated add-ons
|
354 |
*/
|
355 |
public static function render_addons( $hide_activated = false ){
|
356 |
-
|
357 |
-
|
358 |
-
|
|
|
|
|
|
|
359 |
ob_start();
|
360 |
?><p><?php _e( 'The solution for professional websites.', 'advanced-ads' ); ?></p><ul class='list'>
|
361 |
<li><?php
|
353 |
* @param bool $hide_activated if true, hide activated add-ons
|
354 |
*/
|
355 |
public static function render_addons( $hide_activated = false ){
|
356 |
+
|
357 |
+
$link = ADVADS_URL . 'manual/how-to-install-an-add-on/#utm_source=advanced-ads&utm_medium=link&utm_campaign=overview-install-add-ons';
|
358 |
+
?><p style="text-align: right;"><a href="<?php echo esc_url( $link ); ?>" target="_blank"><?php echo esc_attr__( 'How to install and activate an add-on.', 'advanced-ads' ); ?></a></p><?php
|
359 |
+
|
360 |
+
$caching_used = Advanced_Ads_Checks::cache();
|
361 |
+
|
362 |
ob_start();
|
363 |
?><p><?php _e( 'The solution for professional websites.', 'advanced-ads' ); ?></p><ul class='list'>
|
364 |
<li><?php
|
admin/views/ad-output-metabox.php
CHANGED
@@ -59,7 +59,8 @@
|
|
59 |
if ( isset( $options['wrapper-id'] ) ) {
|
60 |
echo $options['wrapper-id']; }
|
61 |
?>"/>
|
62 |
-
<p class="description"><?php _e( 'Specify the id of the ad container. Leave blank for random or no id.', 'advanced-ads' );
|
|
|
63 |
</div>
|
64 |
<hr class="advads-hide-in-wizard"/>
|
65 |
<label class='label advads-hide-in-wizard' for="advads-output-wrapper-class"><?php _e( 'container classes', 'advanced-ads' ); ?></label>
|
@@ -68,7 +69,7 @@
|
|
68 |
if ( isset( $options['wrapper-class'] ) ) {
|
69 |
echo $options['wrapper-class']; }
|
70 |
?>"/>
|
71 |
-
<p class="description"><?php _e( 'Specify one or more classes for the container. Separate multiple classes with a space', 'advanced-ads' );
|
72 |
</div>
|
73 |
<hr class="advads-hide-in-wizard"/>
|
74 |
<label for="advads-output-debugmode" class="label advads-hide-in-wizard"><?php _e( 'Enable debug mode', 'advanced-ads' ); ?></label>
|
59 |
if ( isset( $options['wrapper-id'] ) ) {
|
60 |
echo $options['wrapper-id']; }
|
61 |
?>"/>
|
62 |
+
<p class="description"><?php _e( 'Specify the id of the ad container. Leave blank for random or no id.', 'advanced-ads' ); ?>
|
63 |
+
<span class="advads-output-wrapper-id-error"><?php esc_attr_e( 'An id-like string with only letters in lower case, numbers, and hyphens.', 'advanced-ads' ); ?></span></p>
|
64 |
</div>
|
65 |
<hr class="advads-hide-in-wizard"/>
|
66 |
<label class='label advads-hide-in-wizard' for="advads-output-wrapper-class"><?php _e( 'container classes', 'advanced-ads' ); ?></label>
|
69 |
if ( isset( $options['wrapper-class'] ) ) {
|
70 |
echo $options['wrapper-class']; }
|
71 |
?>"/>
|
72 |
+
<p class="description"><?php _e( 'Specify one or more classes for the container. Separate multiple classes with a space', 'advanced-ads' ); ?>.</p>
|
73 |
</div>
|
74 |
<hr class="advads-hide-in-wizard"/>
|
75 |
<label for="advads-output-debugmode" class="label advads-hide-in-wizard"><?php _e( 'Enable debug mode', 'advanced-ads' ); ?></label>
|
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.14.
|
16 |
* Author: Thomas Maier
|
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.14.
|
43 |
|
44 |
/*----------------------------------------------------------------------------*
|
45 |
* Autoloading, modules and functions
|
12 |
* Plugin Name: Advanced Ads
|
13 |
* Plugin URI: https://wpadvancedads.com
|
14 |
* Description: Manage and optimize your ads in WordPress
|
15 |
+
* Version: 1.14.5
|
16 |
* Author: Thomas Maier
|
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.14.5' );
|
43 |
|
44 |
/*----------------------------------------------------------------------------*
|
45 |
* Autoloading, modules and functions
|
classes/ad-health-notices.php
CHANGED
@@ -318,6 +318,11 @@ class Advanced_Ads_Ad_Health_Notices {
|
|
318 |
} else {
|
319 |
$this->remove( 'ads_txt_plugins_enabled' );
|
320 |
}
|
|
|
|
|
|
|
|
|
|
|
321 |
|
322 |
set_transient( self::DAILY_CHECK_TRANSIENT_NAME, true, DAY_IN_SECONDS );
|
323 |
}
|
318 |
} else {
|
319 |
$this->remove( 'ads_txt_plugins_enabled' );
|
320 |
}
|
321 |
+
if ( count( Advanced_Ads_Checks::header_footer_plugins() ) ) {
|
322 |
+
$this->add( 'header_footer_plugins_enabled' );
|
323 |
+
} else {
|
324 |
+
$this->remove( 'header_footer_plugins_enabled' );
|
325 |
+
}
|
326 |
|
327 |
set_transient( self::DAILY_CHECK_TRANSIENT_NAME, true, DAY_IN_SECONDS );
|
328 |
}
|
classes/ad.php
CHANGED
@@ -494,7 +494,10 @@ class Advanced_Ads_Ad {
|
|
494 |
$options['conditions'] = $conditions;
|
495 |
$options['expiry_date'] = $this->expiry_date;
|
496 |
$options['description'] = $this->description;
|
497 |
-
|
|
|
|
|
|
|
498 |
// filter to manipulate options or add more to be saved
|
499 |
$options = apply_filters( 'advanced-ads-save-options', $options, $this );
|
500 |
|
494 |
$options['conditions'] = $conditions;
|
495 |
$options['expiry_date'] = $this->expiry_date;
|
496 |
$options['description'] = $this->description;
|
497 |
+
|
498 |
+
// sanitize container ID option
|
499 |
+
$options['output']['wrapper-id'] = sanitize_key( $options['output']['wrapper-id'] );
|
500 |
+
|
501 |
// filter to manipulate options or add more to be saved
|
502 |
$options = apply_filters( 'advanced-ads-save-options', $options, $this );
|
503 |
|
classes/checks.php
CHANGED
@@ -364,4 +364,34 @@ class Advanced_Ads_Checks {
|
|
364 |
|
365 |
return $ads_txt_plugins;
|
366 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
367 |
}
|
364 |
|
365 |
return $ads_txt_plugins;
|
366 |
}
|
367 |
+
|
368 |
+
/**
|
369 |
+
* Check for activated plugins that manage header or footer code
|
370 |
+
*
|
371 |
+
* @return array
|
372 |
+
*/
|
373 |
+
public static function header_footer_plugins(){
|
374 |
+
|
375 |
+
$plugins = array();
|
376 |
+
|
377 |
+
// Header Footer Code Manager
|
378 |
+
if( function_exists( 'hfcm_options_install' ) ) {
|
379 |
+
$plugins[] = 'Header Footer Code Manager';
|
380 |
+
}
|
381 |
+
// Head, Footer and Post Injections
|
382 |
+
if( function_exists( 'hefo_template_redirect' ) ) {
|
383 |
+
$plugins[] = 'Head, Footer and Post Injections';
|
384 |
+
}
|
385 |
+
// Insert Headers and Footers /insert-headers-and-footers/
|
386 |
+
if( class_exists( 'InsertHeadersAndFooters', false ) ) {
|
387 |
+
$plugins[] = 'Insert Headers and Footers';
|
388 |
+
}
|
389 |
+
// Header and Footer Scripts /header-and-footer-scripts/
|
390 |
+
if( class_exists( 'HeaderAndFooterScripts', false ) ) {
|
391 |
+
$plugins[] = 'Header and Footer Scripts';
|
392 |
+
}
|
393 |
+
|
394 |
+
|
395 |
+
return $plugins;
|
396 |
+
}
|
397 |
}
|
classes/frontend_checks.php
CHANGED
@@ -50,6 +50,9 @@ class Advanced_Ads_Frontend_Checks {
|
|
50 |
* needs to add ajaxurl in case no other plugin is doing that
|
51 |
*/
|
52 |
public function enqueue_scripts() {
|
|
|
|
|
|
|
53 |
|
54 |
// we don’t have our own script, so we attach this information to jquery
|
55 |
wp_localize_script( 'jquery', 'advads_frontend_checks',
|
@@ -319,7 +322,7 @@ class Advanced_Ads_Frontend_Checks {
|
|
319 |
)
|
320 |
) );
|
321 |
|
322 |
-
$nodes[] = array( 'type' => 3, 'data' => array(
|
323 |
'parent' => 'advanced_ads_ad_health',
|
324 |
'id' => 'advanced_ads_ad_health_highlight_ads',
|
325 |
'title' => sprintf( '<label style="color: inherit;"><input id="advanced_ads_highlight_ads_checkbox" type="checkbox"> %s</label>', __( 'highlight ads', 'advanced-ads' ) )
|
@@ -346,20 +349,67 @@ class Advanced_Ads_Frontend_Checks {
|
|
346 |
* @param obj $wp_admin_bar
|
347 |
*/
|
348 |
$nodes = apply_filters( 'advanced-ads-ad-health-nodes', $nodes );
|
|
|
349 |
usort( $nodes, array( $this, 'sort_nodes' ) );
|
350 |
-
|
351 |
// load number of already detected notices
|
352 |
$notices = Advanced_Ads_Ad_Health_Notices::get_number_of_notices();
|
353 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
354 |
$wp_admin_bar->add_node( array(
|
355 |
'id' => 'advanced_ads_ad_health',
|
356 |
-
'title' => __( 'Ad Health', 'advanced-ads' ) . ' <span class="advanced-ads-issue-counter">' . $
|
357 |
'parent' => false,
|
358 |
-
'href' => admin_url( 'admin.php?page=advanced-ads' )
|
|
|
|
|
|
|
359 |
) );
|
360 |
|
|
|
361 |
// show that there are backend notices
|
362 |
-
if( $notices ){
|
363 |
$wp_admin_bar->add_node( array(
|
364 |
'parent' => 'advanced_ads_ad_health',
|
365 |
'id' => 'advanced_ads_ad_health_more',
|
@@ -367,16 +417,16 @@ class Advanced_Ads_Frontend_Checks {
|
|
367 |
'href' => admin_url( 'admin.php?page=advanced-ads' ),
|
368 |
) );
|
369 |
}
|
370 |
-
|
371 |
-
$display_fine = true;
|
372 |
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
|
|
380 |
$wp_admin_bar->add_node( array(
|
381 |
'parent' => 'advanced_ads_ad_health',
|
382 |
'id' => 'advanced_ads_ad_health_fine',
|
@@ -387,7 +437,7 @@ class Advanced_Ads_Frontend_Checks {
|
|
387 |
)
|
388 |
) );
|
389 |
}
|
390 |
-
|
391 |
$wp_admin_bar->add_node( array(
|
392 |
'parent' => 'advanced_ads_ad_health',
|
393 |
'id' => 'advanced_ads_ad_health_support',
|
@@ -397,7 +447,16 @@ class Advanced_Ads_Frontend_Checks {
|
|
397 |
'target' => '_blank',
|
398 |
)
|
399 |
) );
|
400 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
401 |
}
|
402 |
|
403 |
/**
|
@@ -438,8 +497,6 @@ class Advanced_Ads_Frontend_Checks {
|
|
438 |
* AdSense Quick Start ads are running
|
439 |
*/
|
440 |
public function footer_checks() {
|
441 |
-
$adsense_options = Advanced_Ads_AdSense_Data::get_instance()->get_options();
|
442 |
-
$notices = Advanced_Ads_Ad_Health_Notices::get_number_of_notices();
|
443 |
ob_start();
|
444 |
?><!-- Advanced Ads: <?php _e( 'the following code is used for automatic error detection and only visible to admins', 'advanced-ads' ); ?>-->
|
445 |
<style>.hidden { display: none; }
|
@@ -447,7 +504,16 @@ class Advanced_Ads_Frontend_Checks {
|
|
447 |
#wpadminbar .advanced-ads-issue-counter { background-color: #d54e21; display: none; padding: 1px 7px 1px 6px!important; border-radius: 50%; color: #fff; }
|
448 |
#wpadminbar .advads-adminbar-is-warnings .advanced-ads-issue-counter { display: inline; }
|
449 |
.advanced-ads-highlight-ads { outline:4px solid blue !important; }</style>
|
450 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
451 |
<script>
|
452 |
var advanced_ads_frontend_checks = {
|
453 |
showCount: function() {
|
@@ -691,6 +757,10 @@ class Advanced_Ads_Frontend_Checks {
|
|
691 |
public function after_ad_output( $content = '', Advanced_Ads_Ad $ad ) {
|
692 |
if ( ! isset( $ad->args['frontend-check'] ) ) { return $content; }
|
693 |
|
|
|
|
|
|
|
|
|
694 |
// Allow DFP debugging by showing a link that points to the current URL with the 'googfc' parameter.
|
695 |
if ( $ad->type === 'plain' && preg_match( '/gpt\.js/', $content ) ) {
|
696 |
ob_start(); ?>
|
@@ -716,7 +786,7 @@ class Advanced_Ads_Frontend_Checks {
|
|
716 |
$content .= Advanced_Ads_Utils::get_inline_asset( ob_get_clean() );
|
717 |
}
|
718 |
|
719 |
-
if ( !
|
720 |
ob_start(); ?>
|
721 |
<script>advanced_ads_ready( function() {
|
722 |
var ad_id = '<?php echo $ad->id; ?>';
|
@@ -753,7 +823,7 @@ class Advanced_Ads_Frontend_Checks {
|
|
753 |
* @param obj $ad Advanced_Ads_Ad
|
754 |
* @return bool
|
755 |
*/
|
756 |
-
|
757 |
|
758 |
if ( ! $ad->is_head_placement ) {
|
759 |
return true;
|
@@ -826,3 +896,4 @@ class Advanced_Ads_Frontend_Checks {
|
|
826 |
return false;
|
827 |
}
|
828 |
}
|
|
50 |
* needs to add ajaxurl in case no other plugin is doing that
|
51 |
*/
|
52 |
public function enqueue_scripts() {
|
53 |
+
if ( advads_is_amp() ) {
|
54 |
+
return;
|
55 |
+
}
|
56 |
|
57 |
// we don’t have our own script, so we attach this information to jquery
|
58 |
wp_localize_script( 'jquery', 'advads_frontend_checks',
|
322 |
)
|
323 |
) );
|
324 |
|
325 |
+
$nodes[] = array( 'type' => 3, 'amp' => false, 'data' => array(
|
326 |
'parent' => 'advanced_ads_ad_health',
|
327 |
'id' => 'advanced_ads_ad_health_highlight_ads',
|
328 |
'title' => sprintf( '<label style="color: inherit;"><input id="advanced_ads_highlight_ads_checkbox" type="checkbox"> %s</label>', __( 'highlight ads', 'advanced-ads' ) )
|
349 |
* @param obj $wp_admin_bar
|
350 |
*/
|
351 |
$nodes = apply_filters( 'advanced-ads-ad-health-nodes', $nodes );
|
352 |
+
|
353 |
usort( $nodes, array( $this, 'sort_nodes' ) );
|
354 |
+
|
355 |
// load number of already detected notices
|
356 |
$notices = Advanced_Ads_Ad_Health_Notices::get_number_of_notices();
|
357 |
|
358 |
+
if ( ! advads_is_amp() ) {
|
359 |
+
$warnings = 0; // Will be updated using JS.
|
360 |
+
} else {
|
361 |
+
$warnings = $this->count_visible_warnings( $nodes, array( 1 ) );
|
362 |
+
}
|
363 |
+
|
364 |
+
$issues = $notices + $warnings;
|
365 |
+
|
366 |
+
$this->add_header_nodes( $wp_admin_bar, $issues, $notices );
|
367 |
+
|
368 |
+
foreach ( $nodes as $node ) {
|
369 |
+
$wp_admin_bar->add_node( $node['data'] );
|
370 |
+
}
|
371 |
+
|
372 |
+
$this->add_footer_nodes( $wp_admin_bar, $issues );
|
373 |
+
}
|
374 |
+
|
375 |
+
/**
|
376 |
+
* Count visible notices and warnings.
|
377 |
+
*
|
378 |
+
* @param array $nodes Nodes to add.
|
379 |
+
* @param array $types Warning types.
|
380 |
+
*/
|
381 |
+
private function count_visible_warnings( $nodes, $types = array() ) {
|
382 |
+
$warnings = 0;
|
383 |
+
foreach ( $nodes as $node ) {
|
384 |
+
if ( ! isset( $node['type'] ) || ! isset( $node['data'] ) ) { continue; }
|
385 |
+
if ( in_array( $node['type'], $types ) ) {
|
386 |
+
$warnings++;
|
387 |
+
}
|
388 |
+
}
|
389 |
+
return $warnings;
|
390 |
+
}
|
391 |
+
|
392 |
+
/**
|
393 |
+
* Add header nodes.
|
394 |
+
*
|
395 |
+
* @param obj $wp_admin_bar WP_Admin_Bar object.
|
396 |
+
* @param int $issues Number of all issues.
|
397 |
+
* @param int $notices Number of notices.
|
398 |
+
*/
|
399 |
+
public static function add_header_nodes( $wp_admin_bar, $issues, $notices ) {
|
400 |
$wp_admin_bar->add_node( array(
|
401 |
'id' => 'advanced_ads_ad_health',
|
402 |
+
'title' => __( 'Ad Health', 'advanced-ads' ) . ' <span class="advanced-ads-issue-counter">' . $issues . '</span>',
|
403 |
'parent' => false,
|
404 |
+
'href' => admin_url( 'admin.php?page=advanced-ads' ),
|
405 |
+
'meta' => array(
|
406 |
+
'class' => $issues ? 'advads-adminbar-is-warnings': '',
|
407 |
+
),
|
408 |
) );
|
409 |
|
410 |
+
|
411 |
// show that there are backend notices
|
412 |
+
if ( $notices ) {
|
413 |
$wp_admin_bar->add_node( array(
|
414 |
'parent' => 'advanced_ads_ad_health',
|
415 |
'id' => 'advanced_ads_ad_health_more',
|
417 |
'href' => admin_url( 'admin.php?page=advanced-ads' ),
|
418 |
) );
|
419 |
}
|
420 |
+
}
|
|
|
421 |
|
422 |
+
/**
|
423 |
+
* Add footer nodes.
|
424 |
+
*
|
425 |
+
* @param obj $wp_admin_bar WP_Admin_Bar object.
|
426 |
+
* @param int $issues Number of all issues.
|
427 |
+
*/
|
428 |
+
public static function add_footer_nodes( $wp_admin_bar, $issues ) {
|
429 |
+
if ( ! $issues ) {
|
430 |
$wp_admin_bar->add_node( array(
|
431 |
'parent' => 'advanced_ads_ad_health',
|
432 |
'id' => 'advanced_ads_ad_health_fine',
|
437 |
)
|
438 |
) );
|
439 |
}
|
440 |
+
|
441 |
$wp_admin_bar->add_node( array(
|
442 |
'parent' => 'advanced_ads_ad_health',
|
443 |
'id' => 'advanced_ads_ad_health_support',
|
447 |
'target' => '_blank',
|
448 |
)
|
449 |
) );
|
450 |
+
}
|
451 |
+
|
452 |
+
/**
|
453 |
+
* Filter out nodes intended to AMP pages only.
|
454 |
+
*
|
455 |
+
* @param array $nodes Nodes to add.
|
456 |
+
* @return array $nodes Nodes to add.
|
457 |
+
*/
|
458 |
+
private function filter_nodes( $nodes ) {
|
459 |
+
return $nodes;
|
460 |
}
|
461 |
|
462 |
/**
|
497 |
* AdSense Quick Start ads are running
|
498 |
*/
|
499 |
public function footer_checks() {
|
|
|
|
|
500 |
ob_start();
|
501 |
?><!-- Advanced Ads: <?php _e( 'the following code is used for automatic error detection and only visible to admins', 'advanced-ads' ); ?>-->
|
502 |
<style>.hidden { display: none; }
|
504 |
#wpadminbar .advanced-ads-issue-counter { background-color: #d54e21; display: none; padding: 1px 7px 1px 6px!important; border-radius: 50%; color: #fff; }
|
505 |
#wpadminbar .advads-adminbar-is-warnings .advanced-ads-issue-counter { display: inline; }
|
506 |
.advanced-ads-highlight-ads { outline:4px solid blue !important; }</style>
|
507 |
+
<?php echo ob_get_clean();
|
508 |
+
|
509 |
+
if ( advads_is_amp() ) {
|
510 |
+
return;
|
511 |
+
}
|
512 |
+
|
513 |
+
$adsense_options = Advanced_Ads_AdSense_Data::get_instance()->get_options();
|
514 |
+
$notices = Advanced_Ads_Ad_Health_Notices::get_number_of_notices();
|
515 |
+
ob_start();
|
516 |
+
?><script type="text/javascript" src="<?php echo ADVADS_BASE_URL . 'admin/assets/js/advertisement.js' ?>"></script>
|
517 |
<script>
|
518 |
var advanced_ads_frontend_checks = {
|
519 |
showCount: function() {
|
757 |
public function after_ad_output( $content = '', Advanced_Ads_Ad $ad ) {
|
758 |
if ( ! isset( $ad->args['frontend-check'] ) ) { return $content; }
|
759 |
|
760 |
+
if ( advads_is_amp() ) {
|
761 |
+
return $content;
|
762 |
+
}
|
763 |
+
|
764 |
// Allow DFP debugging by showing a link that points to the current URL with the 'googfc' parameter.
|
765 |
if ( $ad->type === 'plain' && preg_match( '/gpt\.js/', $content ) ) {
|
766 |
ob_start(); ?>
|
786 |
$content .= Advanced_Ads_Utils::get_inline_asset( ob_get_clean() );
|
787 |
}
|
788 |
|
789 |
+
if ( ! Advanced_Ads_Frontend_Checks::can_use_head_placement( $content, $ad ) ) {
|
790 |
ob_start(); ?>
|
791 |
<script>advanced_ads_ready( function() {
|
792 |
var ad_id = '<?php echo $ad->id; ?>';
|
823 |
* @param obj $ad Advanced_Ads_Ad
|
824 |
* @return bool
|
825 |
*/
|
826 |
+
public static function can_use_head_placement( $content, Advanced_Ads_Ad $ad ) {
|
827 |
|
828 |
if ( ! $ad->is_head_placement ) {
|
829 |
return true;
|
896 |
return false;
|
897 |
}
|
898 |
}
|
899 |
+
|
classes/plugin.php
CHANGED
@@ -155,6 +155,9 @@ class Advanced_Ads_Plugin {
|
|
155 |
* @since 1.0.0
|
156 |
*/
|
157 |
public function enqueue_scripts() {
|
|
|
|
|
|
|
158 |
// wp_enqueue_script( $this->get_plugin_slug() . '-plugin-script', plugins_url('assets/js/public.js', __FILE__), array('jquery'), ADVADS_VERSION);
|
159 |
$options = $this->options();
|
160 |
$activated_js = apply_filters( 'advanced-ads-activate-advanced-js', isset( $options['advanced-js'] ) );
|
@@ -178,6 +181,10 @@ class Advanced_Ads_Plugin {
|
|
178 |
|
179 |
echo apply_filters( 'advanced-ads-attribution', sprintf( '<!-- managing ads with Advanced Ads – %s -->', ADVADS_URL ) );
|
180 |
|
|
|
|
|
|
|
|
|
181 |
ob_start();
|
182 |
?><script>
|
183 |
<?php if ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) {
|
155 |
* @since 1.0.0
|
156 |
*/
|
157 |
public function enqueue_scripts() {
|
158 |
+
if ( advads_is_amp() ) {
|
159 |
+
return;
|
160 |
+
}
|
161 |
// wp_enqueue_script( $this->get_plugin_slug() . '-plugin-script', plugins_url('assets/js/public.js', __FILE__), array('jquery'), ADVADS_VERSION);
|
162 |
$options = $this->options();
|
163 |
$activated_js = apply_filters( 'advanced-ads-activate-advanced-js', isset( $options['advanced-js'] ) );
|
181 |
|
182 |
echo apply_filters( 'advanced-ads-attribution', sprintf( '<!-- managing ads with Advanced Ads – %s -->', ADVADS_URL ) );
|
183 |
|
184 |
+
if ( advads_is_amp() ) {
|
185 |
+
return;
|
186 |
+
}
|
187 |
+
|
188 |
ob_start();
|
189 |
?><script>
|
190 |
<?php if ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) {
|
includes/functions.php
CHANGED
@@ -95,7 +95,14 @@ function advads_can_display_ads(){
|
|
95 |
* @return bool true if amp url, false otherwise
|
96 |
*/
|
97 |
function advads_is_amp() {
|
98 |
-
if ( defined( '
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
return false;
|
100 |
}
|
101 |
|
95 |
* @return bool true if amp url, false otherwise
|
96 |
*/
|
97 |
function advads_is_amp() {
|
98 |
+
if ( is_admin() || ( defined( 'REST_REQUEST' ) && REST_REQUEST ) ) {
|
99 |
+
return false;
|
100 |
+
}
|
101 |
+
|
102 |
+
if ( ! did_action( 'wp' ) ) {
|
103 |
+
Advanced_Ads::log( sprintf( esc_html( '%1$s was called before the %2$s action. %3$s' ),
|
104 |
+
'advads_is_amp()', 'wp', wp_debug_backtrace_summary() )
|
105 |
+
);
|
106 |
return false;
|
107 |
}
|
108 |
|
languages/advanced-ads.pot
CHANGED
@@ -3,7 +3,7 @@ msgid ""
|
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Advanved Ads\n"
|
5 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
6 |
-
"POT-Creation-Date: 2019-
|
7 |
"POT-Revision-Date: Wed Jul 13 2016 13:23:05 GMT+0200 (CEST)\n"
|
8 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
9 |
"Last-Translator: Thomas Maier <post@webzunft.de>\n"
|
@@ -154,15 +154,15 @@ msgstr ""
|
|
154 |
msgid "Visitor Conditions"
|
155 |
msgstr ""
|
156 |
|
157 |
-
#: classes/ad-debug.php:272 classes/frontend_checks.php:
|
158 |
-
#: admin/includes/ad-health-notices.php:
|
159 |
msgid ""
|
160 |
"Your website is using HTTPS, but the ad code contains HTTP and might not "
|
161 |
"work."
|
162 |
msgstr ""
|
163 |
|
164 |
#. %1$s is an anchor (link) opening tag, %2$s is the closing tag.
|
165 |
-
#: classes/ad-health-notices.php:
|
166 |
#: modules/gadsense/includes/class-mapi.php:1407
|
167 |
#, php-format
|
168 |
msgid "Learn more about AdSense account issues %1$shere%2$s."
|
@@ -562,110 +562,110 @@ msgstr ""
|
|
562 |
msgid "Unable to locate needed folder (%s)."
|
563 |
msgstr ""
|
564 |
|
565 |
-
#: classes/frontend_checks.php:
|
566 |
msgid "Random AdSense ads"
|
567 |
msgstr ""
|
568 |
|
569 |
-
#: classes/frontend_checks.php:
|
570 |
msgid "You look like a bot"
|
571 |
msgstr ""
|
572 |
|
573 |
-
#: classes/frontend_checks.php:
|
574 |
msgid "Ad blocker enabled"
|
575 |
msgstr ""
|
576 |
|
577 |
-
#: classes/frontend_checks.php:
|
578 |
#, php-format
|
579 |
msgid "<em>%s</em> filter does not exist"
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: classes/frontend_checks.php:
|
583 |
msgid "Ads are disabled on this page"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: classes/frontend_checks.php:
|
587 |
msgid "Ads are disabled in the content of this page"
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: classes/frontend_checks.php:
|
591 |
msgid "the current post ID is 0 "
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: classes/frontend_checks.php:
|
595 |
msgid "Ads are disabled on all pages"
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: classes/frontend_checks.php:
|
599 |
msgid "Ads are disabled on 404 pages"
|
600 |
msgstr ""
|
601 |
|
602 |
-
#: classes/frontend_checks.php:
|
603 |
msgid "Ads are disabled on non singular pages"
|
604 |
msgstr ""
|
605 |
|
606 |
-
#: classes/frontend_checks.php:
|
607 |
#, php-format
|
608 |
msgid "Ad IDs: %s"
|
609 |
msgstr ""
|
610 |
|
611 |
-
#: classes/frontend_checks.php:
|
612 |
#, php-format
|
613 |
msgid "Visible ads should not use the Header placement: %s"
|
614 |
msgstr ""
|
615 |
|
616 |
-
#: classes/frontend_checks.php:
|
617 |
msgid "AdSense violation"
|
618 |
msgstr ""
|
619 |
|
620 |
-
#: classes/frontend_checks.php:
|
621 |
msgid "Ad is hidden"
|
622 |
msgstr ""
|
623 |
|
624 |
-
#: classes/frontend_checks.php:
|
625 |
#, php-format
|
626 |
msgid "IDs: %s"
|
627 |
msgstr ""
|
628 |
|
629 |
-
#: classes/frontend_checks.php:
|
630 |
#, php-format
|
631 |
msgid "The following responsive AdSense ads are not showing up: %s"
|
632 |
msgstr ""
|
633 |
|
634 |
-
#: classes/frontend_checks.php:
|
635 |
msgid "Consent not given"
|
636 |
msgstr ""
|
637 |
|
638 |
-
#: classes/frontend_checks.php:
|
639 |
msgid "debug DFP ads"
|
640 |
msgstr ""
|
641 |
|
642 |
-
#: classes/frontend_checks.php:
|
643 |
msgid "highlight ads"
|
644 |
msgstr ""
|
645 |
|
646 |
-
#: classes/frontend_checks.php:
|
647 |
msgid "Auto ads code found"
|
648 |
msgstr ""
|
649 |
|
650 |
-
#: classes/frontend_checks.php:
|
651 |
msgid "Ad Health"
|
652 |
msgstr ""
|
653 |
|
654 |
-
#: classes/frontend_checks.php:
|
655 |
#, php-format
|
656 |
msgid "Show %d more notifications"
|
657 |
msgstr ""
|
658 |
|
659 |
-
#: classes/frontend_checks.php:
|
660 |
msgid "Everything is fine"
|
661 |
msgstr ""
|
662 |
|
663 |
-
#: classes/frontend_checks.php:
|
664 |
#: admin/views/notices/welcome-panel.php:20
|
665 |
msgid "Get help"
|
666 |
msgstr ""
|
667 |
|
668 |
-
#: classes/frontend_checks.php:
|
669 |
msgid ""
|
670 |
"the following code is used for automatic error detection and only visible to "
|
671 |
"admins"
|
@@ -902,7 +902,7 @@ msgid ""
|
|
902 |
"load ads dynamically."
|
903 |
msgstr ""
|
904 |
|
905 |
-
#: admin/includes/ad-health-notices.php:
|
906 |
#, php-format
|
907 |
msgid ""
|
908 |
"<strong>Autoptimize plugin detected</strong>. While this plugin is great for "
|
@@ -911,32 +911,32 @@ msgid ""
|
|
911 |
"in support for Autoptimize."
|
912 |
msgstr ""
|
913 |
|
914 |
-
#: admin/includes/ad-health-notices.php:
|
915 |
#, php-format
|
916 |
msgid ""
|
917 |
"Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. "
|
918 |
"<a href=\"%2$s\" target=\"_blank\">Learn more</a>."
|
919 |
msgstr ""
|
920 |
|
921 |
-
#: admin/includes/ad-health-notices.php:
|
922 |
#, php-format
|
923 |
msgid ""
|
924 |
"Missing PHP extensions could cause issues. Please ask your hosting provider "
|
925 |
"to enable them: %s"
|
926 |
msgstr ""
|
927 |
|
928 |
-
#: admin/includes/ad-health-notices.php:
|
929 |
#, php-format
|
930 |
msgid ""
|
931 |
"Ads are disabled for all or some pages. See \"disabled ads\" in <a "
|
932 |
"href=\"%s\">settings</a>."
|
933 |
msgstr ""
|
934 |
|
935 |
-
#: admin/includes/ad-health-notices.php:
|
936 |
msgid "Advanced Ads related constants enabled"
|
937 |
msgstr ""
|
938 |
|
939 |
-
#: admin/includes/ad-health-notices.php:
|
940 |
#, php-format
|
941 |
msgid ""
|
942 |
"Possible conflict between jQueryUI library, used by Advanced Ads and other "
|
@@ -944,7 +944,7 @@ msgid ""
|
|
944 |
"to misfortunate formats in forms, but should not damage features."
|
945 |
msgstr ""
|
946 |
|
947 |
-
#: admin/includes/ad-health-notices.php:
|
948 |
#, php-format
|
949 |
msgid ""
|
950 |
"Some assets were changed. Please <strong>rebuild the asset folder</strong> "
|
@@ -952,82 +952,97 @@ msgid ""
|
|
952 |
"disguise."
|
953 |
msgstr ""
|
954 |
|
955 |
-
#: admin/includes/ad-health-notices.php:
|
956 |
msgid ""
|
957 |
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
958 |
"missing</strong>."
|
959 |
msgstr ""
|
960 |
|
961 |
-
#: admin/includes/ad-health-notices.php:
|
962 |
#, php-format
|
963 |
msgid "Please add valid license keys <a href=\"%s\">here</a>."
|
964 |
msgstr ""
|
965 |
|
966 |
-
#: admin/includes/ad-health-notices.php:
|
967 |
msgid "Ad expired"
|
968 |
msgstr ""
|
969 |
|
970 |
-
#: admin/includes/ad-health-notices.php:
|
971 |
-
#: admin/includes/ad-health-notices.php:
|
972 |
#: modules/gadsense/includes/class-mapi.php:90
|
973 |
msgid "Last AdSense account connection attempt failed."
|
974 |
msgstr ""
|
975 |
|
976 |
#. %1$s is the opening a tag and %2$s the closing one.
|
977 |
-
#: admin/includes/ad-health-notices.php:
|
978 |
#, php-format
|
979 |
msgid "Create a new AdSense account %1$shere%2$s."
|
980 |
msgstr ""
|
981 |
|
982 |
-
#: admin/includes/ad-health-notices.php:
|
983 |
-
#: admin/includes/ad-health-notices.php:
|
|
|
984 |
msgid ""
|
985 |
"One of your sites is missing the AdSense publisher ID in the ads.txt file."
|
986 |
msgstr ""
|
987 |
|
988 |
-
#: admin/includes/ad-health-notices.php:
|
989 |
-
#: admin/includes/ad-health-notices.php:
|
|
|
990 |
msgctxt "related to ads.txt file"
|
991 |
msgid "Create one now."
|
992 |
msgstr ""
|
993 |
|
994 |
#. %s is a filter hook, here `the_content`
|
995 |
-
#: admin/includes/ad-health-notices.php:
|
996 |
#, php-format
|
997 |
msgid "<strong>%s</strong> filter found multiple times."
|
998 |
msgstr ""
|
999 |
|
1000 |
-
#: admin/includes/ad-health-notices.php:
|
1001 |
msgid "Advanced Ads uses the outermost of them."
|
1002 |
msgstr ""
|
1003 |
|
1004 |
#. %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
|
1005 |
-
#: admin/includes/ad-health-notices.php:226
|
1006 |
#: admin/includes/ad-health-notices.php:237
|
1007 |
#: admin/includes/ad-health-notices.php:248
|
1008 |
-
#: admin/includes/ad-health-notices.php:
|
|
|
1009 |
#, php-format
|
1010 |
msgid "Learn how to integrate %1$s with Advanced Ads %2$shere%3$s."
|
1011 |
msgstr ""
|
1012 |
|
1013 |
#. %s is a service or plugin name.
|
1014 |
-
#: admin/includes/ad-health-notices.php:
|
1015 |
#: modules/ads-txt/admin/class-advanced-ads-ads-txt-admin.php:187
|
1016 |
#, php-format
|
1017 |
msgid "%s detected."
|
1018 |
msgstr ""
|
1019 |
|
1020 |
-
#: admin/includes/ad-health-notices.php:
|
1021 |
msgid "Learn how this might impact your ad setup."
|
1022 |
msgstr ""
|
1023 |
|
1024 |
-
#: admin/includes/ad-health-notices.php:
|
1025 |
#, php-format
|
1026 |
msgid ""
|
1027 |
"Advanced Ads handles your ads.txt file automatically. You might be able to "
|
1028 |
"<strong>remove %1$s</strong>."
|
1029 |
msgstr ""
|
1030 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1031 |
#: admin/includes/class-ad-groups-list.php:165
|
1032 |
msgid "Ad weight"
|
1033 |
msgstr ""
|
@@ -1110,86 +1125,86 @@ msgstr ""
|
|
1110 |
msgid "No ad group created"
|
1111 |
msgstr ""
|
1112 |
|
1113 |
-
#: admin/includes/class-ad-type.php:
|
1114 |
msgid "Ad Details"
|
1115 |
msgstr ""
|
1116 |
|
1117 |
-
#: admin/includes/class-ad-type.php:
|
1118 |
msgid "Ad Planning"
|
1119 |
msgstr ""
|
1120 |
|
1121 |
-
#: admin/includes/class-ad-type.php:
|
1122 |
msgid "Ad Shortcode"
|
1123 |
msgstr ""
|
1124 |
|
1125 |
-
#: admin/includes/class-ad-type.php:
|
1126 |
#, php-format
|
1127 |
msgid "%s ad updated."
|
1128 |
msgid_plural "%s ads updated."
|
1129 |
msgstr[0] ""
|
1130 |
msgstr[1] ""
|
1131 |
|
1132 |
-
#: admin/includes/class-ad-type.php:
|
1133 |
#, php-format
|
1134 |
msgid "%s ad not updated, somebody is editing it."
|
1135 |
msgid_plural "%s ads not updated, somebody is editing them."
|
1136 |
msgstr[0] ""
|
1137 |
msgstr[1] ""
|
1138 |
|
1139 |
-
#: admin/includes/class-ad-type.php:
|
1140 |
#, php-format
|
1141 |
msgid "%s ad permanently deleted."
|
1142 |
msgid_plural "%s ads permanently deleted."
|
1143 |
msgstr[0] ""
|
1144 |
msgstr[1] ""
|
1145 |
|
1146 |
-
#: admin/includes/class-ad-type.php:
|
1147 |
#, php-format
|
1148 |
msgid "%s ad moved to the Trash."
|
1149 |
msgid_plural "%s ads moved to the Trash."
|
1150 |
msgstr[0] ""
|
1151 |
msgstr[1] ""
|
1152 |
|
1153 |
-
#: admin/includes/class-ad-type.php:
|
1154 |
#, php-format
|
1155 |
msgid "%s ad restored from the Trash."
|
1156 |
msgid_plural "%s ads restored from the Trash."
|
1157 |
msgstr[0] ""
|
1158 |
msgstr[1] ""
|
1159 |
|
1160 |
-
#: admin/includes/class-ad-type.php:
|
1161 |
msgid "Ad updated."
|
1162 |
msgstr ""
|
1163 |
|
1164 |
#. translators: %s: date and time of the revision
|
1165 |
-
#: admin/includes/class-ad-type.php:
|
1166 |
#, php-format
|
1167 |
msgid "Ad restored to revision from %s"
|
1168 |
msgstr ""
|
1169 |
|
1170 |
-
#: admin/includes/class-ad-type.php:
|
1171 |
msgid "Ad saved."
|
1172 |
msgstr ""
|
1173 |
|
1174 |
-
#: admin/includes/class-ad-type.php:
|
1175 |
msgid "Ad submitted."
|
1176 |
msgstr ""
|
1177 |
|
1178 |
-
#: admin/includes/class-ad-type.php:
|
1179 |
#, php-format
|
1180 |
msgid "Ad scheduled for: <strong>%1$s</strong>."
|
1181 |
msgstr ""
|
1182 |
|
1183 |
#. translators: Publish box date format, see http://php.net/date
|
1184 |
-
#: admin/includes/class-ad-type.php:
|
1185 |
msgid "M j, Y @ G:i"
|
1186 |
msgstr ""
|
1187 |
|
1188 |
-
#: admin/includes/class-ad-type.php:
|
1189 |
msgid "Ad draft updated."
|
1190 |
msgstr ""
|
1191 |
|
1192 |
-
#: admin/includes/class-ad-type.php:
|
1193 |
msgid ""
|
1194 |
"You don’t have access to ads. Please deactivate and re-enable Advanced Ads "
|
1195 |
"again to fix this."
|
@@ -1207,7 +1222,7 @@ msgstr ""
|
|
1207 |
msgid "Error while trying to register the license. Please contact support."
|
1208 |
msgstr ""
|
1209 |
|
1210 |
-
#: admin/includes/class-licenses.php:106 admin/views/setting-license.php:
|
1211 |
msgid "Please enter a valid license key"
|
1212 |
msgstr ""
|
1213 |
|
@@ -1299,11 +1314,16 @@ msgstr ""
|
|
1299 |
msgid "Settings"
|
1300 |
msgstr ""
|
1301 |
|
1302 |
-
#: admin/includes/class-menu.php:
|
|
|
|
|
|
|
|
|
|
|
1303 |
msgid "Sorry, you are not allowed to access this feature."
|
1304 |
msgstr ""
|
1305 |
|
1306 |
-
#: admin/includes/class-menu.php:
|
1307 |
msgid ""
|
1308 |
"You attempted to edit an ad group that doesn’t exist. Perhaps it was "
|
1309 |
"deleted?"
|
@@ -1336,7 +1356,7 @@ msgstr ""
|
|
1336 |
|
1337 |
#: admin/includes/class-meta-box.php:152 admin/includes/class-meta-box.php:163
|
1338 |
#: admin/includes/class-meta-box.php:168 admin/includes/class-settings.php:610
|
1339 |
-
#: admin/views/ad-output-metabox.php:
|
1340 |
#: modules/ads-txt/admin/views/setting-create.php:11
|
1341 |
#: modules/privacy/admin/views/setting-enable.php:2
|
1342 |
msgid "Manual"
|
@@ -1346,49 +1366,49 @@ msgstr ""
|
|
1346 |
msgid "Video"
|
1347 |
msgstr ""
|
1348 |
|
1349 |
-
#: admin/includes/class-meta-box.php:
|
1350 |
msgid "Ad Settings"
|
1351 |
msgstr ""
|
1352 |
|
1353 |
-
#: admin/includes/class-meta-box.php:
|
1354 |
msgid "Ads Dashboard"
|
1355 |
msgstr ""
|
1356 |
|
1357 |
-
#: admin/includes/class-meta-box.php:
|
1358 |
#, php-format
|
1359 |
msgid "%d ads – <a href=\"%s\">manage</a> - <a href=\"%s\">new</a>"
|
1360 |
msgstr ""
|
1361 |
|
1362 |
-
#: admin/includes/class-meta-box.php:
|
1363 |
msgid "Get the tutorial via email"
|
1364 |
msgstr ""
|
1365 |
|
1366 |
-
#: admin/includes/class-meta-box.php:
|
1367 |
msgid "Get AdSense tips via email"
|
1368 |
msgstr ""
|
1369 |
|
1370 |
-
#: admin/includes/class-meta-box.php:
|
1371 |
msgid "Visit our blog for more articles about ad optimization"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
#. %s is our URL
|
1375 |
-
#: admin/includes/class-meta-box.php:
|
1376 |
msgid "Latest posts on wpadvancedads.com"
|
1377 |
msgstr ""
|
1378 |
|
1379 |
-
#: admin/includes/class-notices.php:
|
1380 |
#, php-format
|
1381 |
msgid ""
|
1382 |
"You don’t seem to have an email address. Please use <a href=\"%s\" "
|
1383 |
"target=\"_blank\">this form</a> to sign up."
|
1384 |
msgstr ""
|
1385 |
|
1386 |
-
#: admin/includes/class-notices.php:
|
1387 |
msgid ""
|
1388 |
"How embarrassing. The email server seems to be down. Please try again later."
|
1389 |
msgstr ""
|
1390 |
|
1391 |
-
#: admin/includes/class-notices.php:
|
1392 |
#, php-format
|
1393 |
msgid ""
|
1394 |
"Please check your email (%s) for the confirmation message. If you didn’t "
|
@@ -1411,7 +1431,7 @@ msgstr ""
|
|
1411 |
|
1412 |
#: admin/includes/class-overview-widgets.php:105
|
1413 |
#: modules/gadsense/admin/views/adsense-account.php:71
|
1414 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
1415 |
msgid "Connect to AdSense"
|
1416 |
msgstr ""
|
1417 |
|
@@ -1475,139 +1495,144 @@ msgstr ""
|
|
1475 |
msgid "Show %s hidden notices"
|
1476 |
msgstr ""
|
1477 |
|
1478 |
-
#: admin/includes/class-overview-widgets.php:
|
1479 |
-
|
|
|
1480 |
msgstr ""
|
1481 |
|
1482 |
#: admin/includes/class-overview-widgets.php:363
|
|
|
|
|
|
|
|
|
1483 |
#: admin/views/pitch-pro-tab.php:7
|
1484 |
msgid "support for cached sites"
|
1485 |
msgstr ""
|
1486 |
|
1487 |
-
#: admin/includes/class-overview-widgets.php:366
|
1488 |
-
#: admin/includes/class-overview-widgets.php:367
|
1489 |
-
#: admin/includes/class-overview-widgets.php:368
|
1490 |
#: admin/includes/class-overview-widgets.php:369
|
|
|
|
|
|
|
1491 |
#, php-format
|
1492 |
msgid "integrates with <strong>%s</strong>"
|
1493 |
msgstr ""
|
1494 |
|
1495 |
-
#: admin/includes/class-overview-widgets.php:
|
1496 |
msgid "click fraud protection, lazy load, ad-block ads"
|
1497 |
msgstr ""
|
1498 |
|
1499 |
-
#: admin/includes/class-overview-widgets.php:
|
1500 |
#: admin/views/pitch-pro-tab.php:8
|
1501 |
msgid "11 more display and visitor conditions"
|
1502 |
msgstr ""
|
1503 |
|
1504 |
-
#: admin/includes/class-overview-widgets.php:
|
1505 |
#: admin/views/pitch-pro-tab.php:9
|
1506 |
msgid "6 more placements"
|
1507 |
msgstr ""
|
1508 |
|
1509 |
-
#: admin/includes/class-overview-widgets.php:
|
1510 |
#: admin/views/pitch-pro-tab.php:10
|
1511 |
msgid "placement tests for ad optimization"
|
1512 |
msgstr ""
|
1513 |
|
1514 |
-
#: admin/includes/class-overview-widgets.php:
|
1515 |
#: admin/views/pitch-pro-tab.php:11
|
1516 |
msgid "ad grids and many more advanced features"
|
1517 |
msgstr ""
|
1518 |
|
1519 |
-
#: admin/includes/class-overview-widgets.php:
|
1520 |
msgid ""
|
1521 |
"Analyze clicks and impressions of your ads locally or in Google Analytics, "
|
1522 |
"share reports, and limit ads to a specific number of impressions or clicks."
|
1523 |
msgstr ""
|
1524 |
|
1525 |
-
#: admin/includes/class-overview-widgets.php:
|
1526 |
msgid ""
|
1527 |
"Display ads based on the device or the size of your visitor’s browser, and "
|
1528 |
"control ads on AMP pages."
|
1529 |
msgstr ""
|
1530 |
|
1531 |
-
#: admin/includes/class-overview-widgets.php:
|
1532 |
msgid ""
|
1533 |
"Earn more money and let advertisers pay for ad space directly on the "
|
1534 |
"frontend of your site."
|
1535 |
msgstr ""
|
1536 |
|
1537 |
-
#: admin/includes/class-overview-widgets.php:
|
1538 |
msgid ""
|
1539 |
"Target visitors with ads that match their geo location and make more money "
|
1540 |
"with regional campaigns."
|
1541 |
msgstr ""
|
1542 |
|
1543 |
-
#: admin/includes/class-overview-widgets.php:
|
1544 |
msgid ""
|
1545 |
"Increase click rates on your ads by placing them in sticky positions above, "
|
1546 |
"next or below your site."
|
1547 |
msgstr ""
|
1548 |
|
1549 |
-
#: admin/includes/class-overview-widgets.php:
|
1550 |
msgid ""
|
1551 |
"Users will never miss an ad or other information in a PopUp. Choose when it "
|
1552 |
"shows up and for how long a user can close it."
|
1553 |
msgstr ""
|
1554 |
|
1555 |
-
#: admin/includes/class-overview-widgets.php:
|
1556 |
msgid ""
|
1557 |
"Create a beautiful and simple slider from your ads to show more information "
|
1558 |
"on less space."
|
1559 |
msgstr ""
|
1560 |
|
1561 |
-
#: admin/includes/class-overview-widgets.php:
|
1562 |
msgid ""
|
1563 |
"Place AdSense In-feed ads between posts on homepage, category, and archive "
|
1564 |
"pages."
|
1565 |
msgstr ""
|
1566 |
|
1567 |
-
#: admin/includes/class-overview-widgets.php:
|
1568 |
-
#: admin/includes/class-overview-widgets.php:
|
1569 |
-
#: admin/includes/class-overview-widgets.php:
|
1570 |
msgid "Install now"
|
1571 |
msgstr ""
|
1572 |
|
1573 |
-
#: admin/includes/class-overview-widgets.php:
|
1574 |
-
#: admin/includes/class-overview-widgets.php:
|
1575 |
-
#: admin/includes/class-overview-widgets.php:
|
1576 |
-
#: admin/includes/class-overview-widgets.php:
|
1577 |
-
#: admin/includes/class-overview-widgets.php:
|
1578 |
-
#: admin/includes/class-overview-widgets.php:
|
1579 |
-
#: admin/includes/class-overview-widgets.php:
|
1580 |
-
#: admin/includes/class-overview-widgets.php:
|
1581 |
msgid "Activate now"
|
1582 |
msgstr ""
|
1583 |
|
1584 |
-
#: admin/includes/class-overview-widgets.php:
|
1585 |
msgid "Visit your ad stats"
|
1586 |
msgstr ""
|
1587 |
|
1588 |
-
#: admin/includes/class-overview-widgets.php:
|
1589 |
msgid "Use Genesis specific ad positions."
|
1590 |
msgstr ""
|
1591 |
|
1592 |
-
#: admin/includes/class-overview-widgets.php:
|
1593 |
msgid ""
|
1594 |
"Manage ad positions with WPBakery Page Builder (formerly Visual Composer)."
|
1595 |
msgstr ""
|
1596 |
|
1597 |
-
#: admin/includes/class-overview-widgets.php:
|
1598 |
msgid "Our best deal with all add-ons included."
|
1599 |
msgstr ""
|
1600 |
|
1601 |
-
#: admin/includes/class-overview-widgets.php:
|
1602 |
msgid "Get full access"
|
1603 |
msgstr ""
|
1604 |
|
1605 |
-
#: admin/includes/class-overview-widgets.php:
|
1606 |
#: admin/views/ad-display-metabox.php:48 admin/views/ad-visitor-metabox.php:48
|
1607 |
msgid "Visit the manual"
|
1608 |
msgstr ""
|
1609 |
|
1610 |
-
#: admin/includes/class-overview-widgets.php:
|
1611 |
msgid "Get this add-on"
|
1612 |
msgstr ""
|
1613 |
|
@@ -1675,10 +1700,6 @@ msgstr ""
|
|
1675 |
msgid "Disable shortcode button"
|
1676 |
msgstr ""
|
1677 |
|
1678 |
-
#: admin/includes/class-settings.php:269
|
1679 |
-
msgid "Licenses"
|
1680 |
-
msgstr ""
|
1681 |
-
|
1682 |
#: admin/includes/class-settings.php:286
|
1683 |
msgid "Pro"
|
1684 |
msgstr ""
|
@@ -1705,10 +1726,6 @@ msgstr ""
|
|
1705 |
msgid "Are you missing something?"
|
1706 |
msgstr ""
|
1707 |
|
1708 |
-
#: admin/includes/class-settings.php:366
|
1709 |
-
msgid "How to install and activate an add-on."
|
1710 |
-
msgstr ""
|
1711 |
-
|
1712 |
#: admin/includes/class-settings.php:434
|
1713 |
msgid "Choose the roles a user must have in order to not see any ads."
|
1714 |
msgstr ""
|
@@ -2038,7 +2055,7 @@ msgctxt "Taxonomy Slug"
|
|
2038 |
msgid "Slug"
|
2039 |
msgstr ""
|
2040 |
|
2041 |
-
#: admin/views/ad-group-edit.php:54
|
2042 |
msgid ""
|
2043 |
"An id-like string with only letters in lower case, numbers, and hyphens."
|
2044 |
msgstr ""
|
@@ -2322,17 +2339,17 @@ msgstr ""
|
|
2322 |
msgid "Specify the id of the ad container. Leave blank for random or no id."
|
2323 |
msgstr ""
|
2324 |
|
2325 |
-
#: admin/views/ad-output-metabox.php:
|
2326 |
msgid "container classes"
|
2327 |
msgstr ""
|
2328 |
|
2329 |
-
#: admin/views/ad-output-metabox.php:
|
2330 |
msgid ""
|
2331 |
"Specify one or more classes for the container. Separate multiple classes "
|
2332 |
"with a space"
|
2333 |
msgstr ""
|
2334 |
|
2335 |
-
#: admin/views/ad-output-metabox.php:
|
2336 |
msgid "Enable debug mode"
|
2337 |
msgstr ""
|
2338 |
|
@@ -2918,43 +2935,43 @@ msgstr ""
|
|
2918 |
msgid "Your license expired."
|
2919 |
msgstr ""
|
2920 |
|
2921 |
-
#: admin/views/setting-license.php:
|
2922 |
msgid "Update expiry date"
|
2923 |
msgstr ""
|
2924 |
|
2925 |
-
#: admin/views/setting-license.php:
|
2926 |
#, php-format
|
2927 |
msgid ""
|
2928 |
"Click on %2$s if you renewed it or have a subscription or <a href=\"%1$s\" "
|
2929 |
"class=\"advads-renewal-link\" target=\"_blank\">renew your license</a>."
|
2930 |
msgstr ""
|
2931 |
|
2932 |
-
#: admin/views/setting-license.php:
|
2933 |
#, php-format
|
2934 |
msgid "(%d days left)"
|
2935 |
msgstr ""
|
2936 |
|
2937 |
-
#: admin/views/setting-license.php:
|
2938 |
msgid "License key"
|
2939 |
msgstr ""
|
2940 |
|
2941 |
-
#: admin/views/setting-license.php:
|
2942 |
msgid "Deactivate License"
|
2943 |
msgstr ""
|
2944 |
|
2945 |
-
#: admin/views/setting-license.php:
|
2946 |
msgid "Update License"
|
2947 |
msgstr ""
|
2948 |
|
2949 |
-
#: admin/views/setting-license.php:
|
2950 |
msgid "Activate License"
|
2951 |
msgstr ""
|
2952 |
|
2953 |
-
#: admin/views/setting-license.php:
|
2954 |
msgid "License key invalid"
|
2955 |
msgstr ""
|
2956 |
|
2957 |
-
#: admin/views/setting-license.php:
|
2958 |
msgid "active"
|
2959 |
msgstr ""
|
2960 |
|
@@ -3078,11 +3095,11 @@ msgid ""
|
|
3078 |
"for individual help."
|
3079 |
msgstr ""
|
3080 |
|
3081 |
-
#: public/views/ad-debug.php:
|
3082 |
msgid "Ad debug output"
|
3083 |
msgstr ""
|
3084 |
|
3085 |
-
#: public/views/ad-debug.php:
|
3086 |
msgid "Find solutions in the manual"
|
3087 |
msgstr ""
|
3088 |
|
@@ -3250,7 +3267,7 @@ msgid "Use ads from your Google AdSense account"
|
|
3250 |
msgstr ""
|
3251 |
|
3252 |
#: modules/gadsense/includes/class-ad-type-adsense.php:93
|
3253 |
-
#: modules/gadsense/
|
3254 |
msgid "The Publisher ID has an incorrect format. (must start with \"pub-\")"
|
3255 |
msgstr ""
|
3256 |
|
@@ -3258,8 +3275,8 @@ msgstr ""
|
|
3258 |
msgid "Your AdSense Publisher ID is missing."
|
3259 |
msgstr ""
|
3260 |
|
3261 |
-
#: modules/gadsense/includes/class-adsense-report.php:
|
3262 |
-
#: modules/gadsense/includes/class-adsense-report.php:
|
3263 |
msgid "Never"
|
3264 |
msgstr ""
|
3265 |
|
@@ -3667,11 +3684,11 @@ msgstr ""
|
|
3667 |
msgid "Consent method"
|
3668 |
msgstr ""
|
3669 |
|
3670 |
-
#: modules/privacy/classes/plugin.php:
|
3671 |
msgid "Show all ads even without consent."
|
3672 |
msgstr ""
|
3673 |
|
3674 |
-
#: modules/privacy/classes/plugin.php:
|
3675 |
msgid "Cookie"
|
3676 |
msgstr ""
|
3677 |
|
@@ -3772,34 +3789,34 @@ msgstr ""
|
|
3772 |
msgid "Account holder name"
|
3773 |
msgstr ""
|
3774 |
|
3775 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3776 |
msgid "Your AdSense Publisher ID <em>(pub-xxxxxxxxxxxxxx)</em>"
|
3777 |
msgstr ""
|
3778 |
|
3779 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3780 |
msgid "Yes, I have an AdSense account"
|
3781 |
msgstr ""
|
3782 |
|
3783 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3784 |
msgid "Configure everything manually"
|
3785 |
msgstr ""
|
3786 |
|
3787 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3788 |
msgid "No, I still don't have an AdSense account"
|
3789 |
msgstr ""
|
3790 |
|
3791 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3792 |
msgid "Get a free AdSense account"
|
3793 |
msgstr ""
|
3794 |
|
3795 |
#. %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
|
3796 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3797 |
#, php-format
|
3798 |
msgid ""
|
3799 |
"Problems with AdSense? Check out the %1$smanual%2$s or %3$sask here%4$s."
|
3800 |
msgstr ""
|
3801 |
|
3802 |
-
#: modules/gadsense/admin/views/adsense-account.php:
|
3803 |
#: modules/gadsense/admin/views/external-ads-links.php:37
|
3804 |
msgid "Can not connect AdSense account. PHP version is too low."
|
3805 |
msgstr ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: Advanved Ads\n"
|
5 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
6 |
+
"POT-Creation-Date: 2019-08-15 07:20+0000\n"
|
7 |
"POT-Revision-Date: Wed Jul 13 2016 13:23:05 GMT+0200 (CEST)\n"
|
8 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
9 |
"Last-Translator: Thomas Maier <post@webzunft.de>\n"
|
154 |
msgid "Visitor Conditions"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: classes/ad-debug.php:272 classes/frontend_checks.php:249
|
158 |
+
#: admin/includes/ad-health-notices.php:165
|
159 |
msgid ""
|
160 |
"Your website is using HTTPS, but the ad code contains HTTP and might not "
|
161 |
"work."
|
162 |
msgstr ""
|
163 |
|
164 |
#. %1$s is an anchor (link) opening tag, %2$s is the closing tag.
|
165 |
+
#: classes/ad-health-notices.php:860
|
166 |
#: modules/gadsense/includes/class-mapi.php:1407
|
167 |
#, php-format
|
168 |
msgid "Learn more about AdSense account issues %1$shere%2$s."
|
562 |
msgid "Unable to locate needed folder (%s)."
|
563 |
msgstr ""
|
564 |
|
565 |
+
#: classes/frontend_checks.php:95
|
566 |
msgid "Random AdSense ads"
|
567 |
msgstr ""
|
568 |
|
569 |
+
#: classes/frontend_checks.php:109 admin/includes/class-settings.php:517
|
570 |
msgid "You look like a bot"
|
571 |
msgstr ""
|
572 |
|
573 |
+
#: classes/frontend_checks.php:123
|
574 |
msgid "Ad blocker enabled"
|
575 |
msgstr ""
|
576 |
|
577 |
+
#: classes/frontend_checks.php:136
|
578 |
#, php-format
|
579 |
msgid "<em>%s</em> filter does not exist"
|
580 |
msgstr ""
|
581 |
|
582 |
+
#: classes/frontend_checks.php:171
|
583 |
msgid "Ads are disabled on this page"
|
584 |
msgstr ""
|
585 |
|
586 |
+
#: classes/frontend_checks.php:184
|
587 |
msgid "Ads are disabled in the content of this page"
|
588 |
msgstr ""
|
589 |
|
590 |
+
#: classes/frontend_checks.php:196
|
591 |
msgid "the current post ID is 0 "
|
592 |
msgstr ""
|
593 |
|
594 |
+
#: classes/frontend_checks.php:210
|
595 |
msgid "Ads are disabled on all pages"
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: classes/frontend_checks.php:223
|
599 |
msgid "Ads are disabled on 404 pages"
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: classes/frontend_checks.php:236
|
603 |
msgid "Ads are disabled on non singular pages"
|
604 |
msgstr ""
|
605 |
|
606 |
+
#: classes/frontend_checks.php:250
|
607 |
#, php-format
|
608 |
msgid "Ad IDs: %s"
|
609 |
msgstr ""
|
610 |
|
611 |
+
#: classes/frontend_checks.php:262 admin/includes/ad-health-notices.php:141
|
612 |
#, php-format
|
613 |
msgid "Visible ads should not use the Header placement: %s"
|
614 |
msgstr ""
|
615 |
|
616 |
+
#: classes/frontend_checks.php:276 admin/includes/ad-health-notices.php:155
|
617 |
msgid "AdSense violation"
|
618 |
msgstr ""
|
619 |
|
620 |
+
#: classes/frontend_checks.php:277 admin/includes/ad-health-notices.php:156
|
621 |
msgid "Ad is hidden"
|
622 |
msgstr ""
|
623 |
|
624 |
+
#: classes/frontend_checks.php:278
|
625 |
#, php-format
|
626 |
msgid "IDs: %s"
|
627 |
msgstr ""
|
628 |
|
629 |
+
#: classes/frontend_checks.php:291
|
630 |
#, php-format
|
631 |
msgid "The following responsive AdSense ads are not showing up: %s"
|
632 |
msgstr ""
|
633 |
|
634 |
+
#: classes/frontend_checks.php:305
|
635 |
msgid "Consent not given"
|
636 |
msgstr ""
|
637 |
|
638 |
+
#: classes/frontend_checks.php:317
|
639 |
msgid "debug DFP ads"
|
640 |
msgstr ""
|
641 |
|
642 |
+
#: classes/frontend_checks.php:328
|
643 |
msgid "highlight ads"
|
644 |
msgstr ""
|
645 |
|
646 |
+
#: classes/frontend_checks.php:335
|
647 |
msgid "Auto ads code found"
|
648 |
msgstr ""
|
649 |
|
650 |
+
#: classes/frontend_checks.php:402
|
651 |
msgid "Ad Health"
|
652 |
msgstr ""
|
653 |
|
654 |
+
#: classes/frontend_checks.php:416
|
655 |
#, php-format
|
656 |
msgid "Show %d more notifications"
|
657 |
msgstr ""
|
658 |
|
659 |
+
#: classes/frontend_checks.php:433
|
660 |
msgid "Everything is fine"
|
661 |
msgstr ""
|
662 |
|
663 |
+
#: classes/frontend_checks.php:444 admin/includes/class-ad-type.php:675
|
664 |
#: admin/views/notices/welcome-panel.php:20
|
665 |
msgid "Get help"
|
666 |
msgstr ""
|
667 |
|
668 |
+
#: classes/frontend_checks.php:501
|
669 |
msgid ""
|
670 |
"the following code is used for automatic error detection and only visible to "
|
671 |
"admins"
|
902 |
"load ads dynamically."
|
903 |
msgstr ""
|
904 |
|
905 |
+
#: admin/includes/ad-health-notices.php:53
|
906 |
#, php-format
|
907 |
msgid ""
|
908 |
"<strong>Autoptimize plugin detected</strong>. While this plugin is great for "
|
911 |
"in support for Autoptimize."
|
912 |
msgstr ""
|
913 |
|
914 |
+
#: admin/includes/ad-health-notices.php:63
|
915 |
#, php-format
|
916 |
msgid ""
|
917 |
"Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. "
|
918 |
"<a href=\"%2$s\" target=\"_blank\">Learn more</a>."
|
919 |
msgstr ""
|
920 |
|
921 |
+
#: admin/includes/ad-health-notices.php:74
|
922 |
#, php-format
|
923 |
msgid ""
|
924 |
"Missing PHP extensions could cause issues. Please ask your hosting provider "
|
925 |
"to enable them: %s"
|
926 |
msgstr ""
|
927 |
|
928 |
+
#: admin/includes/ad-health-notices.php:84
|
929 |
#, php-format
|
930 |
msgid ""
|
931 |
"Ads are disabled for all or some pages. See \"disabled ads\" in <a "
|
932 |
"href=\"%s\">settings</a>."
|
933 |
msgstr ""
|
934 |
|
935 |
+
#: admin/includes/ad-health-notices.php:92 admin/views/support.php:25
|
936 |
msgid "Advanced Ads related constants enabled"
|
937 |
msgstr ""
|
938 |
|
939 |
+
#: admin/includes/ad-health-notices.php:100
|
940 |
#, php-format
|
941 |
msgid ""
|
942 |
"Possible conflict between jQueryUI library, used by Advanced Ads and other "
|
944 |
"to misfortunate formats in forms, but should not damage features."
|
945 |
msgstr ""
|
946 |
|
947 |
+
#: admin/includes/ad-health-notices.php:110
|
948 |
#, php-format
|
949 |
msgid ""
|
950 |
"Some assets were changed. Please <strong>rebuild the asset folder</strong> "
|
952 |
"disguise."
|
953 |
msgstr ""
|
954 |
|
955 |
+
#: admin/includes/ad-health-notices.php:119 admin/includes/notices.php:36
|
956 |
msgid ""
|
957 |
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
958 |
"missing</strong>."
|
959 |
msgstr ""
|
960 |
|
961 |
+
#: admin/includes/ad-health-notices.php:122 admin/includes/notices.php:36
|
962 |
#, php-format
|
963 |
msgid "Please add valid license keys <a href=\"%s\">here</a>."
|
964 |
msgstr ""
|
965 |
|
966 |
+
#: admin/includes/ad-health-notices.php:131
|
967 |
msgid "Ad expired"
|
968 |
msgstr ""
|
969 |
|
970 |
+
#: admin/includes/ad-health-notices.php:178
|
971 |
+
#: admin/includes/ad-health-notices.php:185
|
972 |
#: modules/gadsense/includes/class-mapi.php:90
|
973 |
msgid "Last AdSense account connection attempt failed."
|
974 |
msgstr ""
|
975 |
|
976 |
#. %1$s is the opening a tag and %2$s the closing one.
|
977 |
+
#: admin/includes/ad-health-notices.php:187
|
978 |
#, php-format
|
979 |
msgid "Create a new AdSense account %1$shere%2$s."
|
980 |
msgstr ""
|
981 |
|
982 |
+
#: admin/includes/ad-health-notices.php:197
|
983 |
+
#: admin/includes/ad-health-notices.php:206
|
984 |
+
#: admin/includes/ad-health-notices.php:216
|
985 |
msgid ""
|
986 |
"One of your sites is missing the AdSense publisher ID in the ads.txt file."
|
987 |
msgstr ""
|
988 |
|
989 |
+
#: admin/includes/ad-health-notices.php:199
|
990 |
+
#: admin/includes/ad-health-notices.php:208
|
991 |
+
#: admin/includes/ad-health-notices.php:218
|
992 |
msgctxt "related to ads.txt file"
|
993 |
msgid "Create one now."
|
994 |
msgstr ""
|
995 |
|
996 |
#. %s is a filter hook, here `the_content`
|
997 |
+
#: admin/includes/ad-health-notices.php:226
|
998 |
#, php-format
|
999 |
msgid "<strong>%s</strong> filter found multiple times."
|
1000 |
msgstr ""
|
1001 |
|
1002 |
+
#: admin/includes/ad-health-notices.php:228
|
1003 |
msgid "Advanced Ads uses the outermost of them."
|
1004 |
msgstr ""
|
1005 |
|
1006 |
#. %1$s is a plugin name, %2$s is the opening a tag and %3$s the closing one.
|
|
|
1007 |
#: admin/includes/ad-health-notices.php:237
|
1008 |
#: admin/includes/ad-health-notices.php:248
|
1009 |
+
#: admin/includes/ad-health-notices.php:259
|
1010 |
+
#: admin/includes/ad-health-notices.php:272
|
1011 |
#, php-format
|
1012 |
msgid "Learn how to integrate %1$s with Advanced Ads %2$shere%3$s."
|
1013 |
msgstr ""
|
1014 |
|
1015 |
#. %s is a service or plugin name.
|
1016 |
+
#: admin/includes/ad-health-notices.php:286
|
1017 |
#: modules/ads-txt/admin/class-advanced-ads-ads-txt-admin.php:187
|
1018 |
#, php-format
|
1019 |
msgid "%s detected."
|
1020 |
msgstr ""
|
1021 |
|
1022 |
+
#: admin/includes/ad-health-notices.php:287
|
1023 |
msgid "Learn how this might impact your ad setup."
|
1024 |
msgstr ""
|
1025 |
|
1026 |
+
#: admin/includes/ad-health-notices.php:298
|
1027 |
#, php-format
|
1028 |
msgid ""
|
1029 |
"Advanced Ads handles your ads.txt file automatically. You might be able to "
|
1030 |
"<strong>remove %1$s</strong>."
|
1031 |
msgstr ""
|
1032 |
|
1033 |
+
#: admin/includes/ad-health-notices.php:309
|
1034 |
+
msgid "Advanced Ads handles header and footer codes."
|
1035 |
+
msgstr ""
|
1036 |
+
|
1037 |
+
#: admin/includes/ad-health-notices.php:310
|
1038 |
+
#, php-format
|
1039 |
+
msgid "You might be able to <strong>remove %1$s</strong>."
|
1040 |
+
msgstr ""
|
1041 |
+
|
1042 |
+
#: admin/includes/ad-health-notices.php:313
|
1043 |
+
msgid "Learn how."
|
1044 |
+
msgstr ""
|
1045 |
+
|
1046 |
#: admin/includes/class-ad-groups-list.php:165
|
1047 |
msgid "Ad weight"
|
1048 |
msgstr ""
|
1125 |
msgid "No ad group created"
|
1126 |
msgstr ""
|
1127 |
|
1128 |
+
#: admin/includes/class-ad-type.php:87 admin/includes/class-ad-type.php:93
|
1129 |
msgid "Ad Details"
|
1130 |
msgstr ""
|
1131 |
|
1132 |
+
#: admin/includes/class-ad-type.php:88 admin/includes/class-ad-type.php:94
|
1133 |
msgid "Ad Planning"
|
1134 |
msgstr ""
|
1135 |
|
1136 |
+
#: admin/includes/class-ad-type.php:89 admin/includes/class-ad-type.php:95
|
1137 |
msgid "Ad Shortcode"
|
1138 |
msgstr ""
|
1139 |
|
1140 |
+
#: admin/includes/class-ad-type.php:241
|
1141 |
#, php-format
|
1142 |
msgid "%s ad updated."
|
1143 |
msgid_plural "%s ads updated."
|
1144 |
msgstr[0] ""
|
1145 |
msgstr[1] ""
|
1146 |
|
1147 |
+
#: admin/includes/class-ad-type.php:242
|
1148 |
#, php-format
|
1149 |
msgid "%s ad not updated, somebody is editing it."
|
1150 |
msgid_plural "%s ads not updated, somebody is editing them."
|
1151 |
msgstr[0] ""
|
1152 |
msgstr[1] ""
|
1153 |
|
1154 |
+
#: admin/includes/class-ad-type.php:243
|
1155 |
#, php-format
|
1156 |
msgid "%s ad permanently deleted."
|
1157 |
msgid_plural "%s ads permanently deleted."
|
1158 |
msgstr[0] ""
|
1159 |
msgstr[1] ""
|
1160 |
|
1161 |
+
#: admin/includes/class-ad-type.php:244
|
1162 |
#, php-format
|
1163 |
msgid "%s ad moved to the Trash."
|
1164 |
msgid_plural "%s ads moved to the Trash."
|
1165 |
msgstr[0] ""
|
1166 |
msgstr[1] ""
|
1167 |
|
1168 |
+
#: admin/includes/class-ad-type.php:245
|
1169 |
#, php-format
|
1170 |
msgid "%s ad restored from the Trash."
|
1171 |
msgid_plural "%s ads restored from the Trash."
|
1172 |
msgstr[0] ""
|
1173 |
msgstr[1] ""
|
1174 |
|
1175 |
+
#: admin/includes/class-ad-type.php:575 admin/includes/class-ad-type.php:576
|
1176 |
msgid "Ad updated."
|
1177 |
msgstr ""
|
1178 |
|
1179 |
#. translators: %s: date and time of the revision
|
1180 |
+
#: admin/includes/class-ad-type.php:578
|
1181 |
#, php-format
|
1182 |
msgid "Ad restored to revision from %s"
|
1183 |
msgstr ""
|
1184 |
|
1185 |
+
#: admin/includes/class-ad-type.php:579 admin/includes/class-ad-type.php:580
|
1186 |
msgid "Ad saved."
|
1187 |
msgstr ""
|
1188 |
|
1189 |
+
#: admin/includes/class-ad-type.php:581
|
1190 |
msgid "Ad submitted."
|
1191 |
msgstr ""
|
1192 |
|
1193 |
+
#: admin/includes/class-ad-type.php:583
|
1194 |
#, php-format
|
1195 |
msgid "Ad scheduled for: <strong>%1$s</strong>."
|
1196 |
msgstr ""
|
1197 |
|
1198 |
#. translators: Publish box date format, see http://php.net/date
|
1199 |
+
#: admin/includes/class-ad-type.php:585
|
1200 |
msgid "M j, Y @ G:i"
|
1201 |
msgstr ""
|
1202 |
|
1203 |
+
#: admin/includes/class-ad-type.php:587
|
1204 |
msgid "Ad draft updated."
|
1205 |
msgstr ""
|
1206 |
|
1207 |
+
#: admin/includes/class-ad-type.php:674
|
1208 |
msgid ""
|
1209 |
"You don’t have access to ads. Please deactivate and re-enable Advanced Ads "
|
1210 |
"again to fix this."
|
1222 |
msgid "Error while trying to register the license. Please contact support."
|
1223 |
msgstr ""
|
1224 |
|
1225 |
+
#: admin/includes/class-licenses.php:106 admin/views/setting-license.php:60
|
1226 |
msgid "Please enter a valid license key"
|
1227 |
msgstr ""
|
1228 |
|
1314 |
msgid "Settings"
|
1315 |
msgstr ""
|
1316 |
|
1317 |
+
#: admin/includes/class-menu.php:131 admin/includes/class-menu.php:135
|
1318 |
+
#: admin/includes/class-settings.php:269
|
1319 |
+
msgid "Licenses"
|
1320 |
+
msgstr ""
|
1321 |
+
|
1322 |
+
#: admin/includes/class-menu.php:220 admin/includes/class-menu.php:247
|
1323 |
msgid "Sorry, you are not allowed to access this feature."
|
1324 |
msgstr ""
|
1325 |
|
1326 |
+
#: admin/includes/class-menu.php:233
|
1327 |
msgid ""
|
1328 |
"You attempted to edit an ad group that doesn’t exist. Perhaps it was "
|
1329 |
"deleted?"
|
1356 |
|
1357 |
#: admin/includes/class-meta-box.php:152 admin/includes/class-meta-box.php:163
|
1358 |
#: admin/includes/class-meta-box.php:168 admin/includes/class-settings.php:610
|
1359 |
+
#: admin/views/ad-output-metabox.php:82
|
1360 |
#: modules/ads-txt/admin/views/setting-create.php:11
|
1361 |
#: modules/privacy/admin/views/setting-enable.php:2
|
1362 |
msgid "Manual"
|
1366 |
msgid "Video"
|
1367 |
msgstr ""
|
1368 |
|
1369 |
+
#: admin/includes/class-meta-box.php:306
|
1370 |
msgid "Ad Settings"
|
1371 |
msgstr ""
|
1372 |
|
1373 |
+
#: admin/includes/class-meta-box.php:408 admin/views/overview.php:6
|
1374 |
msgid "Ads Dashboard"
|
1375 |
msgstr ""
|
1376 |
|
1377 |
+
#: admin/includes/class-meta-box.php:419
|
1378 |
#, php-format
|
1379 |
msgid "%d ads – <a href=\"%s\">manage</a> - <a href=\"%s\">new</a>"
|
1380 |
msgstr ""
|
1381 |
|
1382 |
+
#: admin/includes/class-meta-box.php:430
|
1383 |
msgid "Get the tutorial via email"
|
1384 |
msgstr ""
|
1385 |
|
1386 |
+
#: admin/includes/class-meta-box.php:437
|
1387 |
msgid "Get AdSense tips via email"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
+
#: admin/includes/class-meta-box.php:444
|
1391 |
msgid "Visit our blog for more articles about ad optimization"
|
1392 |
msgstr ""
|
1393 |
|
1394 |
#. %s is our URL
|
1395 |
+
#: admin/includes/class-meta-box.php:497
|
1396 |
msgid "Latest posts on wpadvancedads.com"
|
1397 |
msgstr ""
|
1398 |
|
1399 |
+
#: admin/includes/class-notices.php:457
|
1400 |
#, php-format
|
1401 |
msgid ""
|
1402 |
"You don’t seem to have an email address. Please use <a href=\"%s\" "
|
1403 |
"target=\"_blank\">this form</a> to sign up."
|
1404 |
msgstr ""
|
1405 |
|
1406 |
+
#: admin/includes/class-notices.php:475
|
1407 |
msgid ""
|
1408 |
"How embarrassing. The email server seems to be down. Please try again later."
|
1409 |
msgstr ""
|
1410 |
|
1411 |
+
#: admin/includes/class-notices.php:480
|
1412 |
#, php-format
|
1413 |
msgid ""
|
1414 |
"Please check your email (%s) for the confirmation message. If you didn’t "
|
1431 |
|
1432 |
#: admin/includes/class-overview-widgets.php:105
|
1433 |
#: modules/gadsense/admin/views/adsense-account.php:71
|
1434 |
+
#: modules/gadsense/admin/views/adsense-account.php:93
|
1435 |
msgid "Connect to AdSense"
|
1436 |
msgstr ""
|
1437 |
|
1495 |
msgid "Show %s hidden notices"
|
1496 |
msgstr ""
|
1497 |
|
1498 |
+
#: admin/includes/class-overview-widgets.php:358
|
1499 |
+
#: admin/includes/class-settings.php:366
|
1500 |
+
msgid "How to install and activate an add-on."
|
1501 |
msgstr ""
|
1502 |
|
1503 |
#: admin/includes/class-overview-widgets.php:363
|
1504 |
+
msgid "The solution for professional websites."
|
1505 |
+
msgstr ""
|
1506 |
+
|
1507 |
+
#: admin/includes/class-overview-widgets.php:366
|
1508 |
#: admin/views/pitch-pro-tab.php:7
|
1509 |
msgid "support for cached sites"
|
1510 |
msgstr ""
|
1511 |
|
|
|
|
|
|
|
1512 |
#: admin/includes/class-overview-widgets.php:369
|
1513 |
+
#: admin/includes/class-overview-widgets.php:370
|
1514 |
+
#: admin/includes/class-overview-widgets.php:371
|
1515 |
+
#: admin/includes/class-overview-widgets.php:372
|
1516 |
#, php-format
|
1517 |
msgid "integrates with <strong>%s</strong>"
|
1518 |
msgstr ""
|
1519 |
|
1520 |
+
#: admin/includes/class-overview-widgets.php:373
|
1521 |
msgid "click fraud protection, lazy load, ad-block ads"
|
1522 |
msgstr ""
|
1523 |
|
1524 |
+
#: admin/includes/class-overview-widgets.php:374
|
1525 |
#: admin/views/pitch-pro-tab.php:8
|
1526 |
msgid "11 more display and visitor conditions"
|
1527 |
msgstr ""
|
1528 |
|
1529 |
+
#: admin/includes/class-overview-widgets.php:375
|
1530 |
#: admin/views/pitch-pro-tab.php:9
|
1531 |
msgid "6 more placements"
|
1532 |
msgstr ""
|
1533 |
|
1534 |
+
#: admin/includes/class-overview-widgets.php:376
|
1535 |
#: admin/views/pitch-pro-tab.php:10
|
1536 |
msgid "placement tests for ad optimization"
|
1537 |
msgstr ""
|
1538 |
|
1539 |
+
#: admin/includes/class-overview-widgets.php:377
|
1540 |
#: admin/views/pitch-pro-tab.php:11
|
1541 |
msgid "ad grids and many more advanced features"
|
1542 |
msgstr ""
|
1543 |
|
1544 |
+
#: admin/includes/class-overview-widgets.php:384
|
1545 |
msgid ""
|
1546 |
"Analyze clicks and impressions of your ads locally or in Google Analytics, "
|
1547 |
"share reports, and limit ads to a specific number of impressions or clicks."
|
1548 |
msgstr ""
|
1549 |
|
1550 |
+
#: admin/includes/class-overview-widgets.php:390
|
1551 |
msgid ""
|
1552 |
"Display ads based on the device or the size of your visitor’s browser, and "
|
1553 |
"control ads on AMP pages."
|
1554 |
msgstr ""
|
1555 |
|
1556 |
+
#: admin/includes/class-overview-widgets.php:403
|
1557 |
msgid ""
|
1558 |
"Earn more money and let advertisers pay for ad space directly on the "
|
1559 |
"frontend of your site."
|
1560 |
msgstr ""
|
1561 |
|
1562 |
+
#: admin/includes/class-overview-widgets.php:409
|
1563 |
msgid ""
|
1564 |
"Target visitors with ads that match their geo location and make more money "
|
1565 |
"with regional campaigns."
|
1566 |
msgstr ""
|
1567 |
|
1568 |
+
#: admin/includes/class-overview-widgets.php:415
|
1569 |
msgid ""
|
1570 |
"Increase click rates on your ads by placing them in sticky positions above, "
|
1571 |
"next or below your site."
|
1572 |
msgstr ""
|
1573 |
|
1574 |
+
#: admin/includes/class-overview-widgets.php:421
|
1575 |
msgid ""
|
1576 |
"Users will never miss an ad or other information in a PopUp. Choose when it "
|
1577 |
"shows up and for how long a user can close it."
|
1578 |
msgstr ""
|
1579 |
|
1580 |
+
#: admin/includes/class-overview-widgets.php:427
|
1581 |
msgid ""
|
1582 |
"Create a beautiful and simple slider from your ads to show more information "
|
1583 |
"on less space."
|
1584 |
msgstr ""
|
1585 |
|
1586 |
+
#: admin/includes/class-overview-widgets.php:433
|
1587 |
msgid ""
|
1588 |
"Place AdSense In-feed ads between posts on homepage, category, and archive "
|
1589 |
"pages."
|
1590 |
msgstr ""
|
1591 |
|
1592 |
+
#: admin/includes/class-overview-widgets.php:436
|
1593 |
+
#: admin/includes/class-overview-widgets.php:611
|
1594 |
+
#: admin/includes/class-overview-widgets.php:627
|
1595 |
msgid "Install now"
|
1596 |
msgstr ""
|
1597 |
|
1598 |
+
#: admin/includes/class-overview-widgets.php:454
|
1599 |
+
#: admin/includes/class-overview-widgets.php:475
|
1600 |
+
#: admin/includes/class-overview-widgets.php:500
|
1601 |
+
#: admin/includes/class-overview-widgets.php:518
|
1602 |
+
#: admin/includes/class-overview-widgets.php:536
|
1603 |
+
#: admin/includes/class-overview-widgets.php:554
|
1604 |
+
#: admin/includes/class-overview-widgets.php:572
|
1605 |
+
#: admin/includes/class-overview-widgets.php:590
|
1606 |
msgid "Activate now"
|
1607 |
msgstr ""
|
1608 |
|
1609 |
+
#: admin/includes/class-overview-widgets.php:483
|
1610 |
msgid "Visit your ad stats"
|
1611 |
msgstr ""
|
1612 |
|
1613 |
+
#: admin/includes/class-overview-widgets.php:607
|
1614 |
msgid "Use Genesis specific ad positions."
|
1615 |
msgstr ""
|
1616 |
|
1617 |
+
#: admin/includes/class-overview-widgets.php:623
|
1618 |
msgid ""
|
1619 |
"Manage ad positions with WPBakery Page Builder (formerly Visual Composer)."
|
1620 |
msgstr ""
|
1621 |
|
1622 |
+
#: admin/includes/class-overview-widgets.php:639
|
1623 |
msgid "Our best deal with all add-ons included."
|
1624 |
msgstr ""
|
1625 |
|
1626 |
+
#: admin/includes/class-overview-widgets.php:641
|
1627 |
msgid "Get full access"
|
1628 |
msgstr ""
|
1629 |
|
1630 |
+
#: admin/includes/class-overview-widgets.php:655
|
1631 |
#: admin/views/ad-display-metabox.php:48 admin/views/ad-visitor-metabox.php:48
|
1632 |
msgid "Visit the manual"
|
1633 |
msgstr ""
|
1634 |
|
1635 |
+
#: admin/includes/class-overview-widgets.php:658
|
1636 |
msgid "Get this add-on"
|
1637 |
msgstr ""
|
1638 |
|
1700 |
msgid "Disable shortcode button"
|
1701 |
msgstr ""
|
1702 |
|
|
|
|
|
|
|
|
|
1703 |
#: admin/includes/class-settings.php:286
|
1704 |
msgid "Pro"
|
1705 |
msgstr ""
|
1726 |
msgid "Are you missing something?"
|
1727 |
msgstr ""
|
1728 |
|
|
|
|
|
|
|
|
|
1729 |
#: admin/includes/class-settings.php:434
|
1730 |
msgid "Choose the roles a user must have in order to not see any ads."
|
1731 |
msgstr ""
|
2055 |
msgid "Slug"
|
2056 |
msgstr ""
|
2057 |
|
2058 |
+
#: admin/views/ad-group-edit.php:54 admin/views/ad-output-metabox.php:63
|
2059 |
msgid ""
|
2060 |
"An id-like string with only letters in lower case, numbers, and hyphens."
|
2061 |
msgstr ""
|
2339 |
msgid "Specify the id of the ad container. Leave blank for random or no id."
|
2340 |
msgstr ""
|
2341 |
|
2342 |
+
#: admin/views/ad-output-metabox.php:66
|
2343 |
msgid "container classes"
|
2344 |
msgstr ""
|
2345 |
|
2346 |
+
#: admin/views/ad-output-metabox.php:72
|
2347 |
msgid ""
|
2348 |
"Specify one or more classes for the container. Separate multiple classes "
|
2349 |
"with a space"
|
2350 |
msgstr ""
|
2351 |
|
2352 |
+
#: admin/views/ad-output-metabox.php:75
|
2353 |
msgid "Enable debug mode"
|
2354 |
msgstr ""
|
2355 |
|
2935 |
msgid "Your license expired."
|
2936 |
msgstr ""
|
2937 |
|
2938 |
+
#: admin/views/setting-license.php:13
|
2939 |
msgid "Update expiry date"
|
2940 |
msgstr ""
|
2941 |
|
2942 |
+
#: admin/views/setting-license.php:18
|
2943 |
#, php-format
|
2944 |
msgid ""
|
2945 |
"Click on %2$s if you renewed it or have a subscription or <a href=\"%1$s\" "
|
2946 |
"class=\"advads-renewal-link\" target=\"_blank\">renew your license</a>."
|
2947 |
msgstr ""
|
2948 |
|
2949 |
+
#: admin/views/setting-license.php:30
|
2950 |
#, php-format
|
2951 |
msgid "(%d days left)"
|
2952 |
msgstr ""
|
2953 |
|
2954 |
+
#: admin/views/setting-license.php:34
|
2955 |
msgid "License key"
|
2956 |
msgstr ""
|
2957 |
|
2958 |
+
#: admin/views/setting-license.php:51
|
2959 |
msgid "Deactivate License"
|
2960 |
msgstr ""
|
2961 |
|
2962 |
+
#: admin/views/setting-license.php:57
|
2963 |
msgid "Update License"
|
2964 |
msgstr ""
|
2965 |
|
2966 |
+
#: admin/views/setting-license.php:57
|
2967 |
msgid "Activate License"
|
2968 |
msgstr ""
|
2969 |
|
2970 |
+
#: admin/views/setting-license.php:62
|
2971 |
msgid "License key invalid"
|
2972 |
msgstr ""
|
2973 |
|
2974 |
+
#: admin/views/setting-license.php:70
|
2975 |
msgid "active"
|
2976 |
msgstr ""
|
2977 |
|
3095 |
"for individual help."
|
3096 |
msgstr ""
|
3097 |
|
3098 |
+
#: public/views/ad-debug.php:22
|
3099 |
msgid "Ad debug output"
|
3100 |
msgstr ""
|
3101 |
|
3102 |
+
#: public/views/ad-debug.php:24
|
3103 |
msgid "Find solutions in the manual"
|
3104 |
msgstr ""
|
3105 |
|
3267 |
msgstr ""
|
3268 |
|
3269 |
#: modules/gadsense/includes/class-ad-type-adsense.php:93
|
3270 |
+
#: modules/gadsense/admin/views/adsense-account.php:83
|
3271 |
msgid "The Publisher ID has an incorrect format. (must start with \"pub-\")"
|
3272 |
msgstr ""
|
3273 |
|
3275 |
msgid "Your AdSense Publisher ID is missing."
|
3276 |
msgstr ""
|
3277 |
|
3278 |
+
#: modules/gadsense/includes/class-adsense-report.php:472
|
3279 |
+
#: modules/gadsense/includes/class-adsense-report.php:498
|
3280 |
msgid "Never"
|
3281 |
msgstr ""
|
3282 |
|
3684 |
msgid "Consent method"
|
3685 |
msgstr ""
|
3686 |
|
3687 |
+
#: modules/privacy/classes/plugin.php:149
|
3688 |
msgid "Show all ads even without consent."
|
3689 |
msgstr ""
|
3690 |
|
3691 |
+
#: modules/privacy/classes/plugin.php:150
|
3692 |
msgid "Cookie"
|
3693 |
msgstr ""
|
3694 |
|
3789 |
msgid "Account holder name"
|
3790 |
msgstr ""
|
3791 |
|
3792 |
+
#: modules/gadsense/admin/views/adsense-account.php:85
|
3793 |
msgid "Your AdSense Publisher ID <em>(pub-xxxxxxxxxxxxxx)</em>"
|
3794 |
msgstr ""
|
3795 |
|
3796 |
+
#: modules/gadsense/admin/views/adsense-account.php:92
|
3797 |
msgid "Yes, I have an AdSense account"
|
3798 |
msgstr ""
|
3799 |
|
3800 |
+
#: modules/gadsense/admin/views/adsense-account.php:94
|
3801 |
msgid "Configure everything manually"
|
3802 |
msgstr ""
|
3803 |
|
3804 |
+
#: modules/gadsense/admin/views/adsense-account.php:97
|
3805 |
msgid "No, I still don't have an AdSense account"
|
3806 |
msgstr ""
|
3807 |
|
3808 |
+
#: modules/gadsense/admin/views/adsense-account.php:98
|
3809 |
msgid "Get a free AdSense account"
|
3810 |
msgstr ""
|
3811 |
|
3812 |
#. %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
|
3813 |
+
#: modules/gadsense/admin/views/adsense-account.php:148
|
3814 |
#, php-format
|
3815 |
msgid ""
|
3816 |
"Problems with AdSense? Check out the %1$smanual%2$s or %3$sask here%4$s."
|
3817 |
msgstr ""
|
3818 |
|
3819 |
+
#: modules/gadsense/admin/views/adsense-account.php:156
|
3820 |
#: modules/gadsense/admin/views/external-ads-links.php:37
|
3821 |
msgid "Can not connect AdSense account. PHP version is too low."
|
3822 |
msgstr ""
|
modules/adblock-finder/public/public.php
CHANGED
@@ -7,6 +7,10 @@ class Advanced_Ads_Adblock_Finder {
|
|
7 |
}
|
8 |
|
9 |
public function print_adblock_check_js() {
|
|
|
|
|
|
|
|
|
10 |
$options = Advanced_Ads::get_instance()->options();
|
11 |
|
12 |
$pro_options = get_option( 'advanced-ads-pro' );
|
7 |
}
|
8 |
|
9 |
public function print_adblock_check_js() {
|
10 |
+
if ( advads_is_amp() ) {
|
11 |
+
return;
|
12 |
+
}
|
13 |
+
|
14 |
$options = Advanced_Ads::get_instance()->options();
|
15 |
|
16 |
$pro_options = get_option( 'advanced-ads-pro' );
|
modules/gadsense/admin/admin.php
CHANGED
@@ -8,7 +8,7 @@ class Advanced_Ads_AdSense_Admin {
|
|
8 |
protected $notice = null;
|
9 |
private $settings_page_hook = 'advanced-ads-adsense-settings-page';
|
10 |
|
11 |
-
const ADSENSE_NEW_ACCOUNT_LINK = 'https://www.google.com/adsense/start/?utm_source=AdvancedAdsPlugIn&utm_medium=partnerships&utm_campaign=
|
12 |
|
13 |
private function __construct() {
|
14 |
$this->data = Advanced_Ads_AdSense_Data::get_instance();
|
8 |
protected $notice = null;
|
9 |
private $settings_page_hook = 'advanced-ads-adsense-settings-page';
|
10 |
|
11 |
+
const ADSENSE_NEW_ACCOUNT_LINK = 'https://www.google.com/adsense/start/?utm_source=AdvancedAdsPlugIn&utm_medium=partnerships&utm_campaign=AdvancedAdsPartner1';
|
12 |
|
13 |
private function __construct() {
|
14 |
$this->data = Advanced_Ads_AdSense_Data::get_instance();
|
modules/gadsense/includes/class-mapi.php
CHANGED
@@ -1342,7 +1342,7 @@ class Advanced_Ads_AdSense_MAPI {
|
|
1342 |
|
1343 |
// Remove `ads.txt` related alerts if the file is displayed to visitors.
|
1344 |
if ( Advanced_Ads_Ads_Txt_Admin::is_displayed() ) {
|
1345 |
-
$ads_txt_alerts = array( 'ALERT_TYPE_ADS_TXT_UNAUTHORIZED', 'ADS_TXT_MISSING' );
|
1346 |
|
1347 |
foreach ( $alerts['items'] as $internal_id => $item ) {
|
1348 |
if ( isset( $item['id'] ) && in_array( $item['id'], $ads_txt_alerts ) ) {
|
1342 |
|
1343 |
// Remove `ads.txt` related alerts if the file is displayed to visitors.
|
1344 |
if ( Advanced_Ads_Ads_Txt_Admin::is_displayed() ) {
|
1345 |
+
$ads_txt_alerts = array( 'ALERT_TYPE_ADS_TXT_UNAUTHORIZED', 'ADS_TXT_MISSING', 'ADS_TXT_ISSUES' );
|
1346 |
|
1347 |
foreach ( $alerts['items'] as $internal_id => $item ) {
|
1348 |
if ( isset( $item['id'] ) && in_array( $item['id'], $ads_txt_alerts ) ) {
|
modules/gadsense/public/public.php
CHANGED
@@ -32,6 +32,9 @@ class Advanced_Ads_AdSense_Public {
|
|
32 |
if ( defined( 'ADVADS_ADS_DISABLED' ) ) {
|
33 |
return;
|
34 |
}
|
|
|
|
|
|
|
35 |
|
36 |
$privacy_options = Advanced_Ads_Privacy::get_instance()->options();
|
37 |
$privacy_enabled = ! empty( $privacy_options['enabled'] ) && 'not_needed' !== Advanced_Ads_Privacy::get_instance()->get_state();
|
32 |
if ( defined( 'ADVADS_ADS_DISABLED' ) ) {
|
33 |
return;
|
34 |
}
|
35 |
+
if ( advads_is_amp() ) {
|
36 |
+
return;
|
37 |
+
}
|
38 |
|
39 |
$privacy_options = Advanced_Ads_Privacy::get_instance()->options();
|
40 |
$privacy_enabled = ! empty( $privacy_options['enabled'] ) && 'not_needed' !== Advanced_Ads_Privacy::get_instance()->get_state();
|
modules/privacy/classes/plugin.php
CHANGED
@@ -68,6 +68,7 @@ class Advanced_Ads_Privacy
|
|
68 |
* @return bool
|
69 |
*/
|
70 |
public function can_display_by_consent( $can_display, Advanced_Ads_Ad $ad, $check_options ) {
|
|
|
71 |
if ( ! $can_display ) {
|
72 |
return $can_display;
|
73 |
}
|
@@ -107,6 +108,10 @@ class Advanced_Ads_Privacy
|
|
107 |
return 'not_needed';
|
108 |
}
|
109 |
|
|
|
|
|
|
|
|
|
110 |
$consent_method = isset( $this->options['consent-method'] ) ? $this->options['consent-method'] : 0;
|
111 |
switch ( $consent_method ) {
|
112 |
case '0':
|
68 |
* @return bool
|
69 |
*/
|
70 |
public function can_display_by_consent( $can_display, Advanced_Ads_Ad $ad, $check_options ) {
|
71 |
+
|
72 |
if ( ! $can_display ) {
|
73 |
return $can_display;
|
74 |
}
|
108 |
return 'not_needed';
|
109 |
}
|
110 |
|
111 |
+
if ( advads_is_amp() ) {
|
112 |
+
return 'not_needed';
|
113 |
+
}
|
114 |
+
|
115 |
$consent_method = isset( $this->options['consent-method'] ) ? $this->options['consent-method'] : 0;
|
116 |
switch ( $consent_method ) {
|
117 |
case '0':
|
public/views/ad-debug.php
CHANGED
@@ -1,4 +1,5 @@
|
|
1 |
-
<?php
|
|
|
2 |
<script>
|
3 |
// Output script that makes full-screen mode.
|
4 |
if ( typeof advanced_ads_full_screen_debug !== 'function' ) {
|
@@ -15,7 +16,8 @@ if ( typeof advanced_ads_full_screen_debug !== 'function' ) {
|
|
15 |
}
|
16 |
}
|
17 |
</script>
|
18 |
-
<?php echo Advanced_Ads_Utils::get_inline_asset( ob_get_clean() );
|
|
|
19 |
<div id="<?php echo $wrapper_id; ?>" style="<?php echo $style; ?>" ondblclick="advanced_ads_full_screen_debug( this );">
|
20 |
<strong><?php _e( 'Ad debug output', 'advanced-ads' ); ?></strong>
|
21 |
<?php echo '<br /><br />' . implode( '<br /><br />', $content ); ?>
|
1 |
+
<?php if ( ! advads_is_amp() ):
|
2 |
+
ob_start(); ?>
|
3 |
<script>
|
4 |
// Output script that makes full-screen mode.
|
5 |
if ( typeof advanced_ads_full_screen_debug !== 'function' ) {
|
16 |
}
|
17 |
}
|
18 |
</script>
|
19 |
+
<?php echo Advanced_Ads_Utils::get_inline_asset( ob_get_clean() );
|
20 |
+
endif; ?>
|
21 |
<div id="<?php echo $wrapper_id; ?>" style="<?php echo $style; ?>" ondblclick="advanced_ads_full_screen_debug( this );">
|
22 |
<strong><?php _e( 'Ad debug output', 'advanced-ads' ); ?></strong>
|
23 |
<?php echo '<br /><br />' . implode( '<br /><br />', $content ); ?>
|
readme.txt
CHANGED
@@ -5,7 +5,7 @@ Tags: ads, ad manager, ad rotation, adsense, banner
|
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.2
|
7 |
Requires PHP: 5.6
|
8 |
-
Stable tag: 1.14.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -25,6 +25,11 @@ Are you looking for a simple ad manager plugin? These are the top arguments to u
|
|
25 |
* the only solution with *Ad Health* integration and Google AdSense violation checks
|
26 |
* best rated [free support](https://wordpress.org/support/plugin/advanced-ads)
|
27 |
|
|
|
|
|
|
|
|
|
|
|
28 |
Would you like to know if there is a certain feature, what the optimized setup would be, or how to implement your client’s demands? Just [open a thread in the forum](https://wordpress.org/support/plugin/advanced-ads#new-post)!
|
29 |
|
30 |
Based on my experience as a publisher with millions of monthly served ads, I've developed this ad management plugin for WordPress when no other solution offered testing and optimization features. It allowed us to grow to 100 MM monthly ad impressions. Benefit from this knowledge about advertising and monetize your website today!
|
@@ -84,6 +89,10 @@ serve ads by conditions based on the visitor. [List of all visitor conditions](h
|
|
84 |
* display ads by geolocation with the [Geo Targeting add-on](https://wpadvancedads.com/add-ons/geo-targeting/)
|
85 |
* display ads by browser width with the [Responsive add-on](https://wpadvancedads.com/add-ons/responsive-ads/)
|
86 |
|
|
|
|
|
|
|
|
|
87 |
= ad injection | placements =
|
88 |
|
89 |
Placements to insert ads in pre-defined positions in your theme and content. [List of all placements](https://wpadvancedads.com/manual/placements/)
|
@@ -123,6 +132,10 @@ Amazing features of the most powerful and easy Google AdSense plugin.
|
|
123 |
* convert Google AdSense ads into AMP ads automatically with the [Responsive add-on](https://wpadvancedads.com/add-ons/responsive-ads/)
|
124 |
* ads.txt generated with the correct AdSense information automatically
|
125 |
|
|
|
|
|
|
|
|
|
126 |
= ads.txt =
|
127 |
|
128 |
* generates ads.txt with custom content
|
@@ -290,6 +303,15 @@ Yes. Advanced Ads is based on WordPress standards and therefore easily customiza
|
|
290 |
|
291 |
== Changelog ==
|
292 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
293 |
= 1.14.4 =
|
294 |
|
295 |
* fixed JavaScript issue on ad edit pages
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.2
|
7 |
Requires PHP: 5.6
|
8 |
+
Stable tag: 1.14.5
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
25 |
* the only solution with *Ad Health* integration and Google AdSense violation checks
|
26 |
* best rated [free support](https://wordpress.org/support/plugin/advanced-ads)
|
27 |
|
28 |
+
This is what our users are saying about Advanced Ads:
|
29 |
+
|
30 |
+
> We use this plugin to deliver rotating ads on a community news site, and it’s great. Both feature-rich and reliable, your imagination is the limit when it comes to the product you want to create for your users. We’ve delivered over a million ad impressions since we launched less than a year ago, using a combination of sidebar, top, sticky and in-content placements — both HTML5 and images. Advanced Ads makes it easy for our small team to deliver a good experience to our users and our advertisers.
|
31 |
+
> mytown304 on wp.org
|
32 |
+
|
33 |
Would you like to know if there is a certain feature, what the optimized setup would be, or how to implement your client’s demands? Just [open a thread in the forum](https://wordpress.org/support/plugin/advanced-ads#new-post)!
|
34 |
|
35 |
Based on my experience as a publisher with millions of monthly served ads, I've developed this ad management plugin for WordPress when no other solution offered testing and optimization features. It allowed us to grow to 100 MM monthly ad impressions. Benefit from this knowledge about advertising and monetize your website today!
|
89 |
* display ads by geolocation with the [Geo Targeting add-on](https://wpadvancedads.com/add-ons/geo-targeting/)
|
90 |
* display ads by browser width with the [Responsive add-on](https://wpadvancedads.com/add-ons/responsive-ads/)
|
91 |
|
92 |
+
> **Fantastic plugin and outstanding support**
|
93 |
+
> I tried at least three other ad plugins for WordPress and ‘Advanced Ads’ is by and far the best one. Last but not least in the support. The first port of call are a number of excellent tutorials. And finally the hands on support. I don’t quite know how he does it but the speed and depth of responses are absolutely amazing.
|
94 |
+
> djsawyer on wp.org
|
95 |
+
|
96 |
= ad injection | placements =
|
97 |
|
98 |
Placements to insert ads in pre-defined positions in your theme and content. [List of all placements](https://wpadvancedads.com/manual/placements/)
|
132 |
* convert Google AdSense ads into AMP ads automatically with the [Responsive add-on](https://wpadvancedads.com/add-ons/responsive-ads/)
|
133 |
* ads.txt generated with the correct AdSense information automatically
|
134 |
|
135 |
+
Like j4ckson185, there are thousands of happy AdSense users:
|
136 |
+
|
137 |
+
> Your app is awesome, congratulations! Google Adsense suggests using your app on its official website, it’s incredible!
|
138 |
+
|
139 |
= ads.txt =
|
140 |
|
141 |
* generates ads.txt with custom content
|
303 |
|
304 |
== Changelog ==
|
305 |
|
306 |
+
= 1.14.5 =
|
307 |
+
|
308 |
+
* sanitize Container ID option on save and warn about wrong format
|
309 |
+
* made Placements page work when another plugin includes Twitter Bootstrap
|
310 |
+
* updated missing ads.txt warning
|
311 |
+
* disabled Privacy module on AMP pages so that the Google AMP cache shows them
|
312 |
+
* fixed warnings for some features on AMP pages
|
313 |
+
* fixed suggestion to switch Auto ads code in plain text ad type to AdSense ad type
|
314 |
+
|
315 |
= 1.14.4 =
|
316 |
|
317 |
* fixed JavaScript issue on ad edit pages
|