Version Description
- added overview widget for Geo Targeting add-on
- added ad block disguise for plugin files
- fixed missing wrapper id
- fixed link to license page on multisites
- fixed links on intro page
- fixed rare license activation error
- fixed license issue on multisites
- under the hood: changes for ad select of ads and groups for auto cache-busting
Download this release
Release Info
Developer | webzunft |
Plugin | Advanced Ads |
Version | 1.6.15 |
Comparing to | |
See all releases |
Code changes from version 1.6.14 to 1.6.15
- admin/assets/css/admin.css +2 -0
- admin/assets/img/loader.gif +0 -0
- admin/assets/js/admin.js +31 -1
- admin/class-advanced-ads-admin.php +82 -8
- admin/includes/class-overview-widgets.php +12 -0
- admin/includes/notices.php +1 -1
- admin/views/intro.php +1 -1
- admin/views/setting-license.php +1 -1
- admin/views/settings.php +31 -27
- admin/views/support.php +3 -1
- advanced-ads.php +2 -2
- classes/ad-select.php +11 -1
- classes/ad.php +2 -2
- classes/ad_ajax_callbacks.php +17 -5
- classes/ad_group.php +45 -32
- classes/ad_placements.php +3 -0
- classes/ad_type_image.php +1 -0
- classes/checks.php +8 -8
- classes/visitor-conditions.php +16 -1
- languages/advanced-ads-de_DE.mo +0 -0
- languages/advanced-ads-de_DE.po +73 -55
- languages/advanced-ads.mo +0 -0
- languages/advanced-ads.po +2604 -0
- languages/advanced-ads.pot +147 -36
- modules/ad-blocker/admin/admin.php +564 -0
- modules/ad-blocker/admin/views/rebuild_form.php +47 -0
- modules/ad-blocker/classes/plugin.php +162 -0
- modules/ad-blocker/config.php +13 -0
- modules/ad-blocker/main.php +25 -0
- modules/gadsense/includes/class-ad-type-adsense.php +4 -4
- readme.txt +13 -1
admin/assets/css/admin.css
CHANGED
@@ -227,7 +227,9 @@ tr:hover .on-hover { display: block; }
|
|
227 |
- GENERAL
|
228 |
-*/
|
229 |
.advads-error-message { color: red !important; }
|
|
|
230 |
.advads-hidden { display: none; }
|
|
|
231 |
|
232 |
/* Image Ad */
|
233 |
#advads_type_image_wp_media .media-sidebar .setting:not([data-setting="title"]):not([data-setting="alt"]),
|
227 |
- GENERAL
|
228 |
-*/
|
229 |
.advads-error-message { color: red !important; }
|
230 |
+
.advads-success-message { color: green !important; }
|
231 |
.advads-hidden { display: none; }
|
232 |
+
.advads-loader { display: block; width: 43px; height: 11px; background: url(../img/loader.gif) no-repeat; }
|
233 |
|
234 |
/* Image Ad */
|
235 |
#advads_type_image_wp_media .media-sidebar .setting:not([data-setting="title"]):not([data-setting="alt"]),
|
admin/assets/img/loader.gif
ADDED
Binary file
|
admin/assets/js/admin.js
CHANGED
@@ -347,6 +347,36 @@ jQuery( document ).ready(function ($) {
|
|
347 |
window.formfield = '';
|
348 |
|
349 |
advads_ad_list_build_filters();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
350 |
});
|
351 |
|
352 |
/**
|
@@ -359,7 +389,7 @@ function advads_set_tab_hashes() {
|
|
359 |
var id = jQuery( this ).attr( 'id' ).replace( '-tab', '' );
|
360 |
var optiontab = jQuery( '#' + id );
|
361 |
|
362 |
-
var form = optiontab.
|
363 |
if ( form.length ) {
|
364 |
var currentUrl = form.attr( 'action' ).split( '#' )[ 0 ];
|
365 |
form.attr( 'action', currentUrl + jQuery( this ).attr( 'href' ) );
|
347 |
window.formfield = '';
|
348 |
|
349 |
advads_ad_list_build_filters();
|
350 |
+
|
351 |
+
// adblocker related code
|
352 |
+
$( '#advanced-ads-use-adblocker' ).change( function() {
|
353 |
+
advads_toggle_box( this, '#advads-adblocker-wrapper' );
|
354 |
+
});
|
355 |
+
// processing of the rebuild asset form and the FTP/SSH credentials form
|
356 |
+
var $advads_adblocker_wrapper = $( '#advads-adblocker-wrapper' );
|
357 |
+
$advads_adblocker_wrapper.find( 'input[type="submit"]' ).prop( 'disabled', false );
|
358 |
+
$advads_adblocker_wrapper.on( 'submit', 'form', function( event ) {
|
359 |
+
var $that = $( this ), // form itself
|
360 |
+
data = $that.serializeArray();
|
361 |
+
data.push( { name: 'action', value: 'advads-adblock-rebuild-assets' } );
|
362 |
+
|
363 |
+
$that.prev( '.error' ).remove();
|
364 |
+
$that.find( 'input[type="submit"]' ).prop( 'disabled', true ).after( '<span class="spinner advads-spinner"></span>' );
|
365 |
+
|
366 |
+
$.ajax({
|
367 |
+
type: $that.attr( 'method' ),
|
368 |
+
url: ajaxurl,
|
369 |
+
action: 'advads-adblock-rebuild-assets',
|
370 |
+
data: data
|
371 |
+
}).done( function( data ) {
|
372 |
+
$advads_adblocker_wrapper.html( data );
|
373 |
+
}).fail( function( jqXHR, textStatus, errorThrown ) {
|
374 |
+
$that.before( '<div class="error"><p>' + textStatus + ': ' + errorThrown + '</p></div>' );
|
375 |
+
$that.find( 'input[type="submit"]' ).prop( 'disabled', false ).next( '.advads-spinner' ).remove();
|
376 |
+
});
|
377 |
+
|
378 |
+
event.preventDefault();
|
379 |
+
});
|
380 |
});
|
381 |
|
382 |
/**
|
389 |
var id = jQuery( this ).attr( 'id' ).replace( '-tab', '' );
|
390 |
var optiontab = jQuery( '#' + id );
|
391 |
|
392 |
+
var form = optiontab.children( '.advads-settings-tab-main-form' );
|
393 |
if ( form.length ) {
|
394 |
var currentUrl = form.attr( 'action' ).split( '#' )[ 0 ];
|
395 |
form.attr( 'action', currentUrl + jQuery( this ).attr( 'href' ) );
|
admin/class-advanced-ads-admin.php
CHANGED
@@ -1152,7 +1152,8 @@ class Advanced_Ads_Admin {
|
|
1152 |
}
|
1153 |
|
1154 |
echo '<input id="advanced-ads-editors-manage-ads" type="checkbox" ' . checked( $allow, true, false ) . ' name="'.ADVADS_SLUG.'[editors-manage-ads]" />';
|
1155 |
-
echo '<p class="description">'. __( 'Allow editors to also manage and publish ads.', 'advanced-ads' ) .
|
|
|
1156 |
|
1157 |
}
|
1158 |
|
@@ -1199,12 +1200,14 @@ class Advanced_Ads_Admin {
|
|
1199 |
$licenses = get_option( ADVADS_SLUG . '-licenses', array() );
|
1200 |
|
1201 |
// merge existing with new license key to prevent accidental removal
|
1202 |
-
if( is_array( $options ) ){
|
1203 |
-
|
|
|
|
|
1204 |
} else {
|
1205 |
-
|
1206 |
}
|
1207 |
-
|
1208 |
return $options;
|
1209 |
}
|
1210 |
|
@@ -1661,13 +1664,84 @@ class Advanced_Ads_Admin {
|
|
1661 |
return 1;
|
1662 |
}
|
1663 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1664 |
/*
|
1665 |
* add-on updater
|
1666 |
*
|
1667 |
* @since 1.5.7
|
1668 |
-
*
|
1669 |
*/
|
1670 |
public function add_on_updater(){
|
|
|
|
|
|
|
|
|
|
|
1671 |
|
1672 |
/**
|
1673 |
* list of registered add ons
|
@@ -1687,7 +1761,7 @@ class Advanced_Ads_Admin {
|
|
1687 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
1688 |
|
1689 |
// check if a license expired over time
|
1690 |
-
$expiry_date =
|
1691 |
$now = time();
|
1692 |
if( $expiry_date && strtotime( $expiry_date ) < $now ){
|
1693 |
// remove license status
|
@@ -1696,7 +1770,7 @@ class Advanced_Ads_Admin {
|
|
1696 |
}
|
1697 |
|
1698 |
// check status
|
1699 |
-
if(
|
1700 |
continue;
|
1701 |
}
|
1702 |
|
1152 |
}
|
1153 |
|
1154 |
echo '<input id="advanced-ads-editors-manage-ads" type="checkbox" ' . checked( $allow, true, false ) . ' name="'.ADVADS_SLUG.'[editors-manage-ads]" />';
|
1155 |
+
echo '<p class="description">'. __( 'Allow editors to also manage and publish ads.', 'advanced-ads' ) .
|
1156 |
+
' ' . sprintf(__( 'You can assign different ad-related roles on a user basis with <a href="%s" target="_blank">Advanced Ads Pro</a>.', 'advanced-ads' ), ADVADS_URL . 'add-ons/advanced-ads-pro/') . '</p>';
|
1157 |
|
1158 |
}
|
1159 |
|
1200 |
$licenses = get_option( ADVADS_SLUG . '-licenses', array() );
|
1201 |
|
1202 |
// merge existing with new license key to prevent accidental removal
|
1203 |
+
if( is_array( $options ) && is_array( $licenses ) ){
|
1204 |
+
return array_merge( $licenses, $options );
|
1205 |
+
} elseif( is_array( $options ) ){
|
1206 |
+
return $options;
|
1207 |
} else {
|
1208 |
+
return $licenses;
|
1209 |
}
|
1210 |
+
|
1211 |
return $options;
|
1212 |
}
|
1213 |
|
1664 |
return 1;
|
1665 |
}
|
1666 |
|
1667 |
+
/**
|
1668 |
+
* get license keys for all add-ons
|
1669 |
+
*
|
1670 |
+
* @since 1.6.15
|
1671 |
+
* @return arr $licenses licenses
|
1672 |
+
*/
|
1673 |
+
public function get_licenses(){
|
1674 |
+
|
1675 |
+
$licenses = array();
|
1676 |
+
|
1677 |
+
if( is_multisite() ){
|
1678 |
+
// if multisite, get option from main blog
|
1679 |
+
$main_blog_id = defined( 'BLOG_ID_CURRENT_SITE' ) ? BLOG_ID_CURRENT_SITE : 1;
|
1680 |
+
$licenses = get_blog_option( $main_blog_id, ADVADS_SLUG . '-licenses', array() );
|
1681 |
+
|
1682 |
+
} else {
|
1683 |
+
$licenses = get_option( ADVADS_SLUG . '-licenses', array() );
|
1684 |
+
}
|
1685 |
+
|
1686 |
+
return $licenses;
|
1687 |
+
}
|
1688 |
+
|
1689 |
+
/**
|
1690 |
+
* get license status of an add-on
|
1691 |
+
*
|
1692 |
+
* @since 1.6.15
|
1693 |
+
* @param str $slug slug of the add-on
|
1694 |
+
* @return str $status license status, e.g. "valid" or "invalid"
|
1695 |
+
*/
|
1696 |
+
public function get_license_status( $slug = '' ){
|
1697 |
+
|
1698 |
+
$status = false;
|
1699 |
+
|
1700 |
+
if( is_multisite() ){
|
1701 |
+
// if multisite, get option from main blog
|
1702 |
+
$main_blog_id = defined( 'BLOG_ID_CURRENT_SITE' ) ? BLOG_ID_CURRENT_SITE : 1;
|
1703 |
+
$status = get_blog_option( $main_blog_id, $slug . '-license-status', false);
|
1704 |
+
} else {
|
1705 |
+
$status = get_option( $slug . '-license-status', false);
|
1706 |
+
}
|
1707 |
+
|
1708 |
+
return $status;
|
1709 |
+
}
|
1710 |
+
|
1711 |
+
/**
|
1712 |
+
* get license expired value of an add-on
|
1713 |
+
*
|
1714 |
+
* @since 1.6.15
|
1715 |
+
* @param str $slug slug of the add-on
|
1716 |
+
* @return str $date expiry date of an add-on
|
1717 |
+
*/
|
1718 |
+
public function get_license_expires( $slug = '' ){
|
1719 |
+
|
1720 |
+
$date = false;
|
1721 |
+
|
1722 |
+
if( is_multisite() ){
|
1723 |
+
// if multisite, get option from main blog
|
1724 |
+
$main_blog_id = defined( 'BLOG_ID_CURRENT_SITE' ) ? BLOG_ID_CURRENT_SITE : 1;
|
1725 |
+
$date = get_blog_option( $main_blog_id, $slug . '-license-expires', false);
|
1726 |
+
} else {
|
1727 |
+
$date = get_option( $slug . '-license-expires', false);
|
1728 |
+
}
|
1729 |
+
|
1730 |
+
return $date;
|
1731 |
+
}
|
1732 |
+
|
1733 |
+
|
1734 |
/*
|
1735 |
* add-on updater
|
1736 |
*
|
1737 |
* @since 1.5.7
|
|
|
1738 |
*/
|
1739 |
public function add_on_updater(){
|
1740 |
+
|
1741 |
+
// ignore, if not main blog
|
1742 |
+
if( is_multisite() && ! is_main_site() ){
|
1743 |
+
return;
|
1744 |
+
}
|
1745 |
|
1746 |
/**
|
1747 |
* list of registered add ons
|
1761 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
1762 |
|
1763 |
// check if a license expired over time
|
1764 |
+
$expiry_date = $this->get_license_expires( $_add_on['options_slug'] );
|
1765 |
$now = time();
|
1766 |
if( $expiry_date && strtotime( $expiry_date ) < $now ){
|
1767 |
// remove license status
|
1770 |
}
|
1771 |
|
1772 |
// check status
|
1773 |
+
if( $this->get_license_status( $_add_on['options_slug'] ) !== 'valid' ) {
|
1774 |
continue;
|
1775 |
}
|
1776 |
|
admin/includes/class-overview-widgets.php
CHANGED
@@ -56,6 +56,8 @@ class Advanced_Ads_Overview_Widgets_Callbacks {
|
|
56 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_tracking'), $screen->id, 'side', 'high');
|
57 |
add_meta_box('advads_overview_addon_responsive', __( 'Responsive and Mobile ads', 'advanced-ads' ),
|
58 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_responsive'), $screen->id, 'side', 'high');
|
|
|
|
|
59 |
add_meta_box('advads_overview_addon_sticky', __( 'Sticky ads', 'advanced-ads' ),
|
60 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_sticky'), $screen->id, 'side', 'high');
|
61 |
add_meta_box('advads_overview_addon_layer', __( 'PopUps and Layers', 'advanced-ads' ),
|
@@ -202,6 +204,16 @@ foreach ( $next_steps as $_step ){
|
|
202 |
</ul><p><a class="button button-primary" href="<?php echo ADVADS_URL; ?>add-ons/responsive-ads/" target="_blank"><?php
|
203 |
_e( 'Get the Responsive add-on', 'advanced-ads' ); ?></a></p><?php
|
204 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
205 |
|
206 |
/**
|
207 |
* sticky add-on widget
|
56 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_tracking'), $screen->id, 'side', 'high');
|
57 |
add_meta_box('advads_overview_addon_responsive', __( 'Responsive and Mobile ads', 'advanced-ads' ),
|
58 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_responsive'), $screen->id, 'side', 'high');
|
59 |
+
add_meta_box('advads_overview_addon_geotargeting', __( 'Geo Targeting', 'advanced-ads' ),
|
60 |
+
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_geotargeting'), $screen->id, 'side', 'high');
|
61 |
add_meta_box('advads_overview_addon_sticky', __( 'Sticky ads', 'advanced-ads' ),
|
62 |
array('Advanced_Ads_Overview_Widgets_Callbacks', 'render_add_on_sticky'), $screen->id, 'side', 'high');
|
63 |
add_meta_box('advads_overview_addon_layer', __( 'PopUps and Layers', 'advanced-ads' ),
|
204 |
</ul><p><a class="button button-primary" href="<?php echo ADVADS_URL; ?>add-ons/responsive-ads/" target="_blank"><?php
|
205 |
_e( 'Get the Responsive add-on', 'advanced-ads' ); ?></a></p><?php
|
206 |
}
|
207 |
+
|
208 |
+
/**
|
209 |
+
* geo targeting add-on widget
|
210 |
+
*/
|
211 |
+
public static function render_add_on_geotargeting(){
|
212 |
+
|
213 |
+
?><p><?php _e( 'Target visitors by their geo location.', 'advanced-ads' ); ?></p><ul class='list'>
|
214 |
+
</ul><p><a class="button button-primary" href="<?php echo ADVADS_URL; ?>add-ons/geo-targeting/" target="_blank"><?php
|
215 |
+
_e( 'Get the Geo Targeting add-on', 'advanced-ads' ); ?></a></p><?php
|
216 |
+
}
|
217 |
|
218 |
/**
|
219 |
* sticky add-on widget
|
admin/includes/notices.php
CHANGED
@@ -49,7 +49,7 @@ $advanced_ads_admin_notices = array(
|
|
49 |
// missing license codes
|
50 |
'license_invalid' => array(
|
51 |
'type' => 'plugin_error',
|
52 |
-
'text' =>
|
53 |
),
|
54 |
// license expires
|
55 |
'license_expires' => array(
|
49 |
// missing license codes
|
50 |
'license_invalid' => array(
|
51 |
'type' => 'plugin_error',
|
52 |
+
'text' => __( 'One or more license keys for <strong>Advanced Ads add-ons are invalid or missing</strong>.', 'advanced-ads' ) . ' ' . sprintf( __( 'Please add valid license keys <a href="%s">here</a>.', 'advanced-ads' ), get_admin_url( 1, 'admin.php?page=advanced-ads-settings#top#licenses' ) )
|
53 |
),
|
54 |
// license expires
|
55 |
'license_expires' => array(
|
admin/views/intro.php
CHANGED
@@ -76,7 +76,7 @@ $minor_features = array(
|
|
76 |
</div>
|
77 |
<div class="col">
|
78 |
<h3>2. <?php _e( 'Create your first ad', 'advanced-ads' ); ?></h3>
|
79 |
-
<p><?php printf(__( 'Get started by creating an ad <a href="$
|
80 |
</div>
|
81 |
<div class="col">
|
82 |
<h3>3. <?php _e( 'Display your ad', 'advanced-ads' ); ?></h3>
|
76 |
</div>
|
77 |
<div class="col">
|
78 |
<h3>2. <?php _e( 'Create your first ad', 'advanced-ads' ); ?></h3>
|
79 |
+
<p><?php printf(__( 'Get started by creating an ad <a href="%1$s" target="blank">right now</a> or watch the <a href="%2$s" target="blank">tutorial video (3:29min)</a> first.', 'advanced-ads' ), admin_url( 'post-new.php?post_type=' . Advanced_Ads::POST_TYPE_SLUG ), ADVADS_URL . 'manual/first-ad/' ); ?></p>
|
80 |
</div>
|
81 |
<div class="col">
|
82 |
<h3>3. <?php _e( 'Display your ad', 'advanced-ads' ); ?></h3>
|
admin/views/setting-license.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
$errortext = false;
|
3 |
-
$expires =
|
4 |
$expired = false;
|
5 |
if( $expires ){
|
6 |
$expires_time = strtotime( $expires );
|
1 |
<?php
|
2 |
$errortext = false;
|
3 |
+
$expires = Advanced_Ads_Admin::get_instance()->get_license_expires( $options_slug );
|
4 |
$expired = false;
|
5 |
if( $expires ){
|
6 |
$expires_time = strtotime( $expires );
|
admin/views/settings.php
CHANGED
@@ -13,35 +13,39 @@ $setting_tabs = apply_filters('advanced-ads-setting-tabs', array(
|
|
13 |
)
|
14 |
));
|
15 |
?><div class="wrap">
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
|
|
32 |
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
|
|
|
|
|
|
38 |
do_action( 'advanced-ads-additional-settings-form' );
|
39 |
?>
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
|
47 |
</div>
|
13 |
)
|
14 |
));
|
15 |
?><div class="wrap">
|
16 |
+
<?php screen_icon(); ?>
|
17 |
+
<h1><?php echo esc_html( get_admin_page_title() ); ?></h1>
|
18 |
+
<?php settings_errors(); ?>
|
19 |
+
<h2 class="nav-tab-wrapper" id="advads-tabs">
|
20 |
+
<?php foreach ( $setting_tabs as $_setting_tab_id => $_setting_tab ) : ?>
|
21 |
+
<a class="nav-tab" id="<?php echo $_setting_tab_id; ?>-tab"
|
22 |
+
href="#top#<?php echo $_setting_tab_id; ?>"><?php echo $_setting_tab['title']; ?></a>
|
23 |
+
<?php endforeach; ?>
|
24 |
+
</h2>
|
25 |
+
<?php foreach ( $setting_tabs as $_setting_tab_id => $_setting_tab ) : ?>
|
26 |
+
<div id="<?php echo $_setting_tab_id; ?>" class="advads-tab">
|
27 |
+
<form class="advads-settings-tab-main-form" method="post" action="options.php">
|
28 |
+
<?php
|
29 |
+
if ( isset( $_setting_tab['group'] ) ) {
|
30 |
+
settings_fields( $_setting_tab['group'] );
|
31 |
+
}
|
32 |
+
do_settings_sections( $_setting_tab['page'] );
|
33 |
|
34 |
+
do_action( 'advanced-ads-settings-form', $_setting_tab_id, $_setting_tab );
|
35 |
+
submit_button( __( 'Save settings on this page', 'advanced-ads' ) );
|
36 |
+
?>
|
37 |
+
</form>
|
38 |
+
<?php do_action( 'advanced-ads-settings-tab-after-form', $_setting_tab_id, $_setting_tab ); ?>
|
39 |
+
</div>
|
40 |
+
<?php endforeach; ?>
|
41 |
+
<?php
|
42 |
do_action( 'advanced-ads-additional-settings-form' );
|
43 |
?>
|
44 |
+
<ul>
|
45 |
+
<li><a href="/wp-admin/admin.php?page=advanced-ads-debug"><?php _e( 'Debug Page', 'advanced-ads' ); ?></a></li>
|
46 |
+
<li><a href="/wp-admin/admin.php?page=advanced-ads-intro"><?php _e( 'Welcome Page', 'advanced-ads' ); ?></a></li>
|
47 |
+
<li><a href="http://wordpress.org/plugins/advanced-ads/" title="<?php _e( 'Advanced Ads on WordPress.org', 'advanced-ads' ); ?>"><?php _e( 'Advanced Ads on wp.org', 'advanced-ads' ); ?></a></li>
|
48 |
+
<li><a href="http://webgilde.com" title="<?php _e( 'the company behind Advanced Ads', 'advanced-ads' ); ?>"><?php echo 'webgilde GmbH'; ?></a></li>
|
49 |
+
</ul>
|
50 |
|
51 |
</div>
|
admin/views/support.php
CHANGED
@@ -16,7 +16,7 @@
|
|
16 |
</form>
|
17 |
|
18 |
<h2><?php _e( 'Possible Issues', 'advanced-ads' ); ?></h2>
|
19 |
-
<p><?php _e( 'Please fix the issues
|
20 |
|
21 |
<?php $messages = array();
|
22 |
if( ! Advanced_Ads_Checks::php_version_minimum() ) :
|
@@ -49,6 +49,8 @@
|
|
49 |
}
|
50 |
Advanced_Ads_Checks::jquery_ui_conflict();
|
51 |
|
|
|
|
|
52 |
if( count( $messages )) :
|
53 |
foreach( $messages as $_message ) :
|
54 |
?><div class="message error"><p><?php echo $_message; ?></p></div><?php
|
16 |
</form>
|
17 |
|
18 |
<h2><?php _e( 'Possible Issues', 'advanced-ads' ); ?></h2>
|
19 |
+
<p><?php _e( 'Please fix the red highlighted issues on this page or try to understand their consequences before contacting support.', 'advanced-ads' ); ?></p>
|
20 |
|
21 |
<?php $messages = array();
|
22 |
if( ! Advanced_Ads_Checks::php_version_minimum() ) :
|
49 |
}
|
50 |
Advanced_Ads_Checks::jquery_ui_conflict();
|
51 |
|
52 |
+
$messages = apply_filters( 'advanced-ads-support-messages', $messages );
|
53 |
+
|
54 |
if( count( $messages )) :
|
55 |
foreach( $messages as $_message ) :
|
56 |
?><div class="message error"><p><?php echo $_message; ?></p></div><?php
|
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.6.
|
16 |
* Author: Thomas Maier
|
17 |
* Author URI: http://webgilde.com
|
18 |
* Text Domain: advanced-ads
|
@@ -38,7 +38,7 @@ define( 'ADVADS_BASE_DIR', dirname( plugin_basename( __FILE__ ) ) ); // director
|
|
38 |
// general and global slug, e.g. to store options in WP, textdomain
|
39 |
define( 'ADVADS_SLUG', 'advanced-ads' );
|
40 |
define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
|
41 |
-
define( 'ADVADS_VERSION', '1.6.
|
42 |
|
43 |
/*----------------------------------------------------------------------------*
|
44 |
* 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.6.15
|
16 |
* Author: Thomas Maier
|
17 |
* Author URI: http://webgilde.com
|
18 |
* Text Domain: advanced-ads
|
38 |
// general and global slug, e.g. to store options in WP, textdomain
|
39 |
define( 'ADVADS_SLUG', 'advanced-ads' );
|
40 |
define( 'ADVADS_URL', 'https://wpadvancedads.com/' );
|
41 |
+
define( 'ADVADS_VERSION', '1.6.15' );
|
42 |
|
43 |
/*----------------------------------------------------------------------------*
|
44 |
* Autoloading, modules and functions
|
classes/ad-select.php
CHANGED
@@ -110,6 +110,10 @@ class Advanced_Ads_Select {
|
|
110 |
// get ad
|
111 |
$ad = new Advanced_Ads_Ad( (int) $args['id'], $args );
|
112 |
|
|
|
|
|
|
|
|
|
113 |
// check conditions
|
114 |
if ( $ad->can_display() ) {
|
115 |
return $ad->output();
|
@@ -128,7 +132,13 @@ class Advanced_Ads_Select {
|
|
128 |
// get ad
|
129 |
$id = (int) $args['id'];
|
130 |
$adgroup = new Advanced_Ads_Group( $id, $args );
|
131 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
}
|
133 |
|
134 |
// internal
|
110 |
// get ad
|
111 |
$ad = new Advanced_Ads_Ad( (int) $args['id'], $args );
|
112 |
|
113 |
+
if ( $override = apply_filters( 'advanced-ads-ad-select-override-by-ad', '', $ad, $args ) ) {
|
114 |
+
return $override;
|
115 |
+
}
|
116 |
+
|
117 |
// check conditions
|
118 |
if ( $ad->can_display() ) {
|
119 |
return $ad->output();
|
132 |
// get ad
|
133 |
$id = (int) $args['id'];
|
134 |
$adgroup = new Advanced_Ads_Group( $id, $args );
|
135 |
+
$ordered_ad_ids = $adgroup->get_ordered_ad_ids();
|
136 |
+
|
137 |
+
if ( $override = apply_filters( 'advanced-ads-ad-select-override-by-group', '', $adgroup, $ordered_ad_ids, $args ) ) {
|
138 |
+
return $override;
|
139 |
+
}
|
140 |
+
|
141 |
+
return $adgroup->output( $ordered_ad_ids );
|
142 |
}
|
143 |
|
144 |
// internal
|
classes/ad.php
CHANGED
@@ -641,9 +641,9 @@ class Advanced_Ads_Ad {
|
|
641 |
|
642 |
// create unique id if not yet given
|
643 |
if ( empty($wrapper_options['id']) ){
|
644 |
-
$wrapper_options['id'] = $this->create_wrapper_id();
|
645 |
}
|
646 |
-
|
647 |
// build the box
|
648 |
$wrapper = '<div';
|
649 |
foreach ( $wrapper_options as $_html_attr => $_values ){
|
641 |
|
642 |
// create unique id if not yet given
|
643 |
if ( empty($wrapper_options['id']) ){
|
644 |
+
$this->wrapper['id'] = $wrapper_options['id'] = $this->create_wrapper_id();
|
645 |
}
|
646 |
+
|
647 |
// build the box
|
648 |
$wrapper = '<div';
|
649 |
foreach ( $wrapper_options as $_html_attr => $_values ){
|
classes/ad_ajax_callbacks.php
CHANGED
@@ -24,11 +24,13 @@ class Advanced_Ads_Ad_Ajax_Callbacks {
|
|
24 |
add_action( 'wp_ajax_load_content_editor', array( $this, 'load_content_editor' ) );
|
25 |
add_action( 'wp_ajax_load_ad_parameters_metabox', array( $this, 'load_ad_parameters_metabox' ) );
|
26 |
add_action( 'wp_ajax_load_visitor_conditions_metabox', array( $this, 'load_visitor_condition' ) );
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
|
|
|
|
32 |
}
|
33 |
|
34 |
/**
|
@@ -180,4 +182,14 @@ class Advanced_Ads_Ad_Ajax_Callbacks {
|
|
180 |
|
181 |
die();
|
182 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
183 |
}
|
24 |
add_action( 'wp_ajax_load_content_editor', array( $this, 'load_content_editor' ) );
|
25 |
add_action( 'wp_ajax_load_ad_parameters_metabox', array( $this, 'load_ad_parameters_metabox' ) );
|
26 |
add_action( 'wp_ajax_load_visitor_conditions_metabox', array( $this, 'load_visitor_condition' ) );
|
27 |
+
add_action( 'wp_ajax_advads-terms-search', array( $this, 'search_terms' ) );
|
28 |
+
add_action( 'wp_ajax_advads-close-notice', array( $this, 'close_notice' ) );
|
29 |
+
add_action( 'wp_ajax_advads-subscribe-notice', array( $this, 'subscribe' ) );
|
30 |
+
add_action( 'wp_ajax_advads-activate-license', array( $this, 'activate_license' ) );
|
31 |
+
add_action( 'wp_ajax_advads-deactivate-license', array( $this, 'deactivate_license' ) );
|
32 |
+
add_action( 'wp_ajax_advads-adblock-rebuild-assets', array( $this, 'adblock_rebuild_assets' ) );
|
33 |
+
|
34 |
}
|
35 |
|
36 |
/**
|
182 |
|
183 |
die();
|
184 |
}
|
185 |
+
|
186 |
+
/**
|
187 |
+
* rebuild assets for ad-blocker module
|
188 |
+
*
|
189 |
+
*/
|
190 |
+
public function adblock_rebuild_assets(){
|
191 |
+
Advanced_Ads_Ad_Blocker_Admin::get_instance()->add_asset_rebuild_form();
|
192 |
+
exit();
|
193 |
+
}
|
194 |
+
|
195 |
}
|
classes/ad_group.php
CHANGED
@@ -159,10 +159,52 @@ class Advanced_Ads_Group {
|
|
159 |
* control the output of the group by type and amount of ads
|
160 |
*
|
161 |
* @since 1.4.8
|
|
|
162 |
* @return str $output output of ad(s) by ad
|
163 |
*/
|
164 |
-
public function output(){
|
|
|
|
|
|
|
|
|
|
|
165 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
166 |
if ( ! $this->id ) {
|
167 |
return;
|
168 |
}
|
@@ -202,37 +244,8 @@ class Advanced_Ads_Group {
|
|
202 |
$ordered_ad_ids = $this->shuffle_ads($ads, $weights);
|
203 |
}
|
204 |
|
205 |
-
|
206 |
-
|
207 |
-
// load the ad output
|
208 |
-
$output = array();
|
209 |
-
$ads_displayed = 0;
|
210 |
-
$ad_count = apply_filters( 'advanced-ads-group-ad-count', $this->ad_count, $this );
|
211 |
-
|
212 |
-
$ad_select = Advanced_Ads_Select::get_instance();
|
213 |
-
foreach ( $ordered_ad_ids as $_ad_id ) {
|
214 |
-
// load the ad object
|
215 |
-
$ad = $ad_select->get_ad_by_method( $_ad_id, Advanced_Ads_Select::AD, $this->ad_args );
|
216 |
-
if ( $ad !== null ) {
|
217 |
-
$output[] = $ad;
|
218 |
-
$ads_displayed++;
|
219 |
-
// break the loop when maximum ads are reached
|
220 |
-
if( $ads_displayed === $ad_count ) {
|
221 |
-
break;
|
222 |
-
}
|
223 |
-
}
|
224 |
-
}
|
225 |
-
|
226 |
-
// add the group to the global output array
|
227 |
-
$advads = Advanced_Ads::get_instance();
|
228 |
-
$advads->current_ads[] = array('type' => 'group', 'id' => $this->id, 'title' => $this->name);
|
229 |
-
|
230 |
-
// filter grouped ads output
|
231 |
-
$output_string = implode( '', apply_filters( 'advanced-ads-group-output-array', $output, $this ) );
|
232 |
-
|
233 |
-
// filter final group output
|
234 |
-
return apply_filters( 'advanced-ads-group-output', $output_string, $this );
|
235 |
-
}
|
236 |
|
237 |
/**
|
238 |
* return all ads from this group
|
159 |
* control the output of the group by type and amount of ads
|
160 |
*
|
161 |
* @since 1.4.8
|
162 |
+
* @param array/null ordered_ad_ids ordered ids of the ads that belong to the group
|
163 |
* @return str $output output of ad(s) by ad
|
164 |
*/
|
165 |
+
public function output( $ordered_ad_ids = false ) {
|
166 |
+
// if $ordered_ad_ids was not passed to the function, load it
|
167 |
+
$ordered_ad_ids = ( $ordered_ad_ids === false ) ? $this->get_ordered_ad_ids() : $ordered_ad_ids;
|
168 |
+
if ( $ordered_ad_ids === null ) {
|
169 |
+
return;
|
170 |
+
}
|
171 |
|
172 |
+
// load the ad output
|
173 |
+
$output = array();
|
174 |
+
$ads_displayed = 0;
|
175 |
+
$ad_count = apply_filters( 'advanced-ads-group-ad-count', $this->ad_count, $this );
|
176 |
+
|
177 |
+
$ad_select = Advanced_Ads_Select::get_instance();
|
178 |
+
foreach ( $ordered_ad_ids as $_ad_id ) {
|
179 |
+
// load the ad object
|
180 |
+
$ad = $ad_select->get_ad_by_method( $_ad_id, Advanced_Ads_Select::AD, $this->ad_args );
|
181 |
+
if ( $ad !== null ) {
|
182 |
+
$output[] = $ad;
|
183 |
+
$ads_displayed++;
|
184 |
+
// break the loop when maximum ads are reached
|
185 |
+
if( $ads_displayed === $ad_count ) {
|
186 |
+
break;
|
187 |
+
}
|
188 |
+
}
|
189 |
+
}
|
190 |
+
|
191 |
+
// add the group to the global output array
|
192 |
+
$advads = Advanced_Ads::get_instance();
|
193 |
+
$advads->current_ads[] = array('type' => 'group', 'id' => $this->id, 'title' => $this->name);
|
194 |
+
|
195 |
+
// filter grouped ads output
|
196 |
+
$output_string = implode( '', apply_filters( 'advanced-ads-group-output-array', $output, $this ) );
|
197 |
+
|
198 |
+
// filter final group output
|
199 |
+
return apply_filters( 'advanced-ads-group-output', $output_string, $this );
|
200 |
+
}
|
201 |
+
|
202 |
+
/**
|
203 |
+
* get ordered ids of the ads that belong to the group
|
204 |
+
*
|
205 |
+
* @return array/null ordered ad ads that belong to the group
|
206 |
+
*/
|
207 |
+
public function get_ordered_ad_ids() {
|
208 |
if ( ! $this->id ) {
|
209 |
return;
|
210 |
}
|
244 |
$ordered_ad_ids = $this->shuffle_ads($ads, $weights);
|
245 |
}
|
246 |
|
247 |
+
return apply_filters( 'advanced-ads-group-output-ad-ids', $ordered_ad_ids, $this->type, $ads, $weights );
|
248 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
249 |
|
250 |
/**
|
251 |
* return all ads from this group
|
classes/ad_placements.php
CHANGED
@@ -342,6 +342,9 @@ class Advanced_Ads_Placements {
|
|
342 |
$tag = isset($options['tag']) ? $options['tag'] : 'p';
|
343 |
$tag = preg_replace('/[^a-z0-9]/i', '', $tag); // simplify tag
|
344 |
|
|
|
|
|
|
|
345 |
// only has before and after
|
346 |
$before = isset($options['position']) && $options['position'] === 'before';
|
347 |
$paragraph_id = isset($options['index']) ? $options['index'] : 1;
|
342 |
$tag = isset($options['tag']) ? $options['tag'] : 'p';
|
343 |
$tag = preg_replace('/[^a-z0-9]/i', '', $tag); // simplify tag
|
344 |
|
345 |
+
// allow more complex xPath expression
|
346 |
+
$tag = apply_filters( 'advanced-ads-placement-content-injection-xpath', $tag, $options );
|
347 |
+
|
348 |
// only has before and after
|
349 |
$before = isset($options['position']) && $options['position'] === 'before';
|
350 |
$paragraph_id = isset($options['index']) ? $options['index'] : 1;
|
classes/ad_type_image.php
CHANGED
@@ -64,6 +64,7 @@ class Advanced_Ads_Ad_Type_Image extends Advanced_Ads_Ad_Type_Abstract{
|
|
64 |
if( ! defined( 'AAT_VERSION' )) : ?>
|
65 |
<p><label for="advads-url"><?php _e( 'url', ADVADS_SLUG ); ?></label><br/>
|
66 |
<input type="url" name="advanced_ad[url]" id="advads-url" value="<?php echo $url; ?>"/></p>
|
|
|
67 |
<?php endif;
|
68 |
}
|
69 |
|
64 |
if( ! defined( 'AAT_VERSION' )) : ?>
|
65 |
<p><label for="advads-url"><?php _e( 'url', ADVADS_SLUG ); ?></label><br/>
|
66 |
<input type="url" name="advanced_ad[url]" id="advads-url" value="<?php echo $url; ?>"/></p>
|
67 |
+
<p><?php printf(__( 'Pro: Open this url in a new window and track impressions and clicks with the <a href="%s" target="_blank">Tracking add-on</a>', ADVADS_SLUG ), ADVADS_URL . 'add-ons/tracking'); ?></p>
|
68 |
<?php endif;
|
69 |
}
|
70 |
|
classes/checks.php
CHANGED
@@ -83,21 +83,21 @@ class Advanced_Ads_Checks {
|
|
83 |
public static function licenses_invalid(){
|
84 |
|
85 |
$add_ons = apply_filters( 'advanced-ads-add-ons', array() );
|
86 |
-
|
87 |
if( $add_ons === array() ) {
|
88 |
return false;
|
89 |
}
|
90 |
|
91 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
92 |
-
$status =
|
93 |
-
|
94 |
// don’t check if license is valid
|
95 |
if( $status === 'valid' ) {
|
96 |
continue;
|
97 |
}
|
98 |
|
99 |
// retrieve our license key from the DB
|
100 |
-
$licenses =
|
101 |
|
102 |
$license_key = isset($licenses[$_add_on_key]) ? $licenses[$_add_on_key] : false;
|
103 |
|
@@ -128,11 +128,11 @@ class Advanced_Ads_Checks {
|
|
128 |
|
129 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
130 |
// don’t display error for invalid licenses
|
131 |
-
if(
|
132 |
continue;
|
133 |
}
|
134 |
|
135 |
-
$expiry_date =
|
136 |
|
137 |
if( $expiry_date ){
|
138 |
$expiry_date_t = strtotime( $expiry_date );
|
@@ -167,11 +167,11 @@ class Advanced_Ads_Checks {
|
|
167 |
|
168 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
169 |
// don’t display error for invalid licenses
|
170 |
-
if(
|
171 |
continue;
|
172 |
}
|
173 |
|
174 |
-
$expiry_date =
|
175 |
|
176 |
if( $expiry_date && strtotime( $expiry_date ) < $now ){
|
177 |
return true;
|
83 |
public static function licenses_invalid(){
|
84 |
|
85 |
$add_ons = apply_filters( 'advanced-ads-add-ons', array() );
|
86 |
+
|
87 |
if( $add_ons === array() ) {
|
88 |
return false;
|
89 |
}
|
90 |
|
91 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
92 |
+
$status = Advanced_Ads_Admin::get_instance()->get_license_status( $_add_on['options_slug'] );
|
93 |
+
|
94 |
// don’t check if license is valid
|
95 |
if( $status === 'valid' ) {
|
96 |
continue;
|
97 |
}
|
98 |
|
99 |
// retrieve our license key from the DB
|
100 |
+
$licenses = Advanced_Ads_Admin::get_instance()->get_licenses();
|
101 |
|
102 |
$license_key = isset($licenses[$_add_on_key]) ? $licenses[$_add_on_key] : false;
|
103 |
|
128 |
|
129 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
130 |
// don’t display error for invalid licenses
|
131 |
+
if( Advanced_Ads_Admin::get_instance()->get_license_status( $_add_on['options_slug'] ) === 'invalid' ) {
|
132 |
continue;
|
133 |
}
|
134 |
|
135 |
+
$expiry_date = Advanced_Ads_Admin::get_instance()->get_license_expires( $_add_on['options_slug'] );
|
136 |
|
137 |
if( $expiry_date ){
|
138 |
$expiry_date_t = strtotime( $expiry_date );
|
167 |
|
168 |
foreach( $add_ons as $_add_on_key => $_add_on ){
|
169 |
// don’t display error for invalid licenses
|
170 |
+
if( Advanced_Ads_Admin::get_instance()->get_license_status( $_add_on['options_slug'] ) === 'invalid' ) {
|
171 |
continue;
|
172 |
}
|
173 |
|
174 |
+
$expiry_date = Advanced_Ads_Admin::get_instance()->get_license_expires( $_add_on['options_slug'] );
|
175 |
|
176 |
if( $expiry_date && strtotime( $expiry_date ) < $now ){
|
177 |
return true;
|
classes/visitor-conditions.php
CHANGED
@@ -31,7 +31,7 @@ class Advanced_Ads_Visitor_Conditions {
|
|
31 |
'mobile' => array( // type of the condition
|
32 |
'label' => __( 'mobile device', 'advanced-ads' ),
|
33 |
'description' => __( 'Display ads only on mobile devices or hide them.', 'advanced-ads' ),
|
34 |
-
'metabox' => array( 'Advanced_Ads_Visitor_Conditions', '
|
35 |
'check' => array( 'Advanced_Ads_Visitor_Conditions', 'check_mobile' ) // callback for frontend check
|
36 |
),
|
37 |
'loggedin' => array(
|
@@ -58,6 +58,21 @@ class Advanced_Ads_Visitor_Conditions {
|
|
58 |
return self::$instance;
|
59 |
}
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
/**
|
62 |
* callback to display the "is not" condition
|
63 |
*
|
31 |
'mobile' => array( // type of the condition
|
32 |
'label' => __( 'mobile device', 'advanced-ads' ),
|
33 |
'description' => __( 'Display ads only on mobile devices or hide them.', 'advanced-ads' ),
|
34 |
+
'metabox' => array( 'Advanced_Ads_Visitor_Conditions', 'mobile_is_or_not' ), // callback to generate the metabox
|
35 |
'check' => array( 'Advanced_Ads_Visitor_Conditions', 'check_mobile' ) // callback for frontend check
|
36 |
),
|
37 |
'loggedin' => array(
|
58 |
return self::$instance;
|
59 |
}
|
60 |
|
61 |
+
/**
|
62 |
+
* callback to render the mobile condition using the "is not" condition
|
63 |
+
*
|
64 |
+
* @param arr $options options of the condition
|
65 |
+
* @param int $index index of the condition
|
66 |
+
*/
|
67 |
+
static function mobile_is_or_not( $options, $index = 0 ){
|
68 |
+
|
69 |
+
self::metabox_is_or_not($options, $index);
|
70 |
+
|
71 |
+
if( ! defined( 'AAR_SLUG' ) ){
|
72 |
+
echo '<p>' . sprintf(__( 'Pro: Display ads by the available space on the device using the <a href="%s" target="_blank">Responsive add-on</a>', ADVADS_SLUG ), ADVADS_URL . 'add-ons/responsive-ads') . '</p>';
|
73 |
+
}
|
74 |
+
}
|
75 |
+
|
76 |
/**
|
77 |
* callback to display the "is not" condition
|
78 |
*
|
languages/advanced-ads-de_DE.mo
CHANGED
Binary file
|
languages/advanced-ads-de_DE.po
CHANGED
@@ -3,7 +3,7 @@ msgstr ""
|
|
3 |
"Project-Id-Version: Advanved Ads\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
5 |
"POT-Creation-Date: 2015-01-27 16:47+0100\n"
|
6 |
-
"PO-Revision-Date:
|
7 |
"Last-Translator: admin <post@webzunft.de>\n"
|
8 |
"Language-Team: webgilde <thomas.maier@webgilde.com>\n"
|
9 |
"Language: German\n"
|
@@ -26,43 +26,23 @@ msgstr ""
|
|
26 |
"X-Textdomain-Support: yes\n"
|
27 |
"X-Loco-Target-Locale: de_DE"
|
28 |
|
29 |
-
#: ../
|
30 |
-
msgid "Allow editors to manage ads"
|
31 |
-
msgstr "Redakteure können Anzeigen verwalten"
|
32 |
-
|
33 |
-
#: ../admin/class-advanced-ads-admin.php:1155
|
34 |
-
msgid "Allow editors to also manage and publish ads."
|
35 |
-
msgstr "Redakteuren erlauben, Anzeigen zu verwalten und zu veröffentlichen."
|
36 |
-
|
37 |
-
#: ../admin/includes/class-ad-groups-list.php:171 ../admin/views/ad-list-timing-
|
38 |
-
#: column.php:9
|
39 |
#, php-format
|
40 |
-
msgid "
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
#: ../admin/views/ad-list-filters.php:5
|
48 |
-
msgid "all ad sizes"
|
49 |
-
msgstr "alle Größen"
|
50 |
-
|
51 |
-
#: ../admin/views/ad-list-filters.php:8
|
52 |
-
msgid "all ad dates"
|
53 |
-
msgstr "jedes Datum"
|
54 |
-
|
55 |
-
#: ../admin/views/ad-list-filters.php:10
|
56 |
-
msgid "any expiry date"
|
57 |
-
msgstr "mit Ablaufdatum"
|
58 |
-
|
59 |
-
#: ../admin/views/ad-list-filters.php:11
|
60 |
-
msgid "planned"
|
61 |
-
msgstr "geplant"
|
62 |
|
63 |
-
#: ../
|
64 |
-
|
65 |
-
|
|
|
|
|
|
|
|
|
|
|
66 |
|
67 |
#. Name of the plugin
|
68 |
msgid "Advanced Ads"
|
@@ -292,6 +272,10 @@ msgstr "ID Präfix"
|
|
292 |
msgid "Remove Widget ID"
|
293 |
msgstr "ID des Widget entfernen"
|
294 |
|
|
|
|
|
|
|
|
|
295 |
#: ../admin/class-advanced-ads-admin.php:1004
|
296 |
msgid "(display to all)"
|
297 |
msgstr "(für alle sichtbar)"
|
@@ -423,6 +407,10 @@ msgstr ""
|
|
423 |
"ID-Attribut des Anzeigenwidgets entfernen, damit Ad-Blocker hier keinen "
|
424 |
"Ansatz haben es zu blockieren."
|
425 |
|
|
|
|
|
|
|
|
|
426 |
#: ../admin/class-advanced-ads-admin.php:1224
|
427 |
msgid "Ad Details"
|
428 |
msgstr "Anzeigeneinstellungen"
|
@@ -505,6 +493,12 @@ msgstr "Start %s"
|
|
505 |
msgid "expires %s"
|
506 |
msgstr "Ende %s"
|
507 |
|
|
|
|
|
|
|
|
|
|
|
|
|
508 |
#: ../admin/includes/class-ad-groups-list.php:184
|
509 |
msgid "all published ads are displayed"
|
510 |
msgstr "Alle veröffentlichten Anzeigen werden dargestellt"
|
@@ -1405,10 +1399,34 @@ msgstr "Beschreibung angeben"
|
|
1405 |
msgid "Internal description or your own notes about this ad."
|
1406 |
msgstr "Eigene Beschreibung und Notizen zu dieser Anzeige."
|
1407 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1408 |
#: ../admin/views/ad-list-filters.php:9
|
1409 |
msgid "expired"
|
1410 |
msgstr "abgelaufen"
|
1411 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1412 |
#: ../admin/views/ad-main-metabox.php:3
|
1413 |
msgid "No ad types defined"
|
1414 |
msgstr "Keine Anzeigentypen definiert"
|
@@ -2035,11 +2053,11 @@ msgstr "Mögliche Probleme"
|
|
2035 |
|
2036 |
#: ../admin/views/support.php:19
|
2037 |
msgid ""
|
2038 |
-
"Please fix the issues
|
2039 |
-
"contacting support."
|
2040 |
msgstr ""
|
2041 |
-
"Bitte lösen Sie die
|
2042 |
-
"Ursache aus, bevor Sie den Support kontaktieren."
|
2043 |
|
2044 |
#: ../admin/views/support.php:23
|
2045 |
#, php-format
|
@@ -2349,63 +2367,63 @@ msgstr ""
|
|
2349 |
"Anzeigen nur für angemeldete Nutzer anzeigen oder verstecken\n"
|
2350 |
"\n"
|
2351 |
|
2352 |
-
#: ../classes/visitor-conditions.php:
|
2353 |
msgid "is"
|
2354 |
msgstr "ist"
|
2355 |
|
2356 |
-
#: ../classes/visitor-conditions.php:
|
2357 |
msgid "is not"
|
2358 |
msgstr "ist nicht"
|
2359 |
|
2360 |
-
#: ../classes/visitor-conditions.php:
|
2361 |
msgid "equal"
|
2362 |
msgstr "ist gleich"
|
2363 |
|
2364 |
-
#: ../classes/visitor-conditions.php:
|
2365 |
msgid "equal or higher"
|
2366 |
msgstr "gleich oder höher"
|
2367 |
|
2368 |
-
#: ../classes/visitor-conditions.php:
|
2369 |
msgid "equal or lower"
|
2370 |
msgstr "gleich oder niedriger"
|
2371 |
|
2372 |
-
#: ../classes/visitor-conditions.php:
|
2373 |
msgid "contains"
|
2374 |
msgstr "enthält"
|
2375 |
|
2376 |
-
#: ../classes/visitor-conditions.php:
|
2377 |
msgid "starts with"
|
2378 |
msgstr "beginnt mit"
|
2379 |
|
2380 |
-
#: ../classes/visitor-conditions.php:
|
2381 |
msgid "ends with"
|
2382 |
msgstr "endet mit"
|
2383 |
|
2384 |
-
#: ../classes/visitor-conditions.php:
|
2385 |
msgid "matches"
|
2386 |
msgstr "entspricht"
|
2387 |
|
2388 |
-
#: ../classes/visitor-conditions.php:
|
2389 |
msgid "matches regex"
|
2390 |
msgstr "regulärer Ausdruck"
|
2391 |
|
2392 |
-
#: ../classes/visitor-conditions.php:
|
2393 |
msgid "does not contain"
|
2394 |
msgstr "enthält nicht"
|
2395 |
|
2396 |
-
#: ../classes/visitor-conditions.php:
|
2397 |
msgid "does not start with"
|
2398 |
msgstr "beginnt nicht mit"
|
2399 |
|
2400 |
-
#: ../classes/visitor-conditions.php:
|
2401 |
msgid "does not end with"
|
2402 |
msgstr "endet nicht mit"
|
2403 |
|
2404 |
-
#: ../classes/visitor-conditions.php:
|
2405 |
msgid "does not match"
|
2406 |
msgstr "entspricht nicht"
|
2407 |
|
2408 |
-
#: ../classes/visitor-conditions.php:
|
2409 |
msgid "does not match regex"
|
2410 |
msgstr "entspricht nicht reg. Ausdruck"
|
2411 |
|
3 |
"Project-Id-Version: Advanved Ads\n"
|
4 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
5 |
"POT-Creation-Date: 2015-01-27 16:47+0100\n"
|
6 |
+
"PO-Revision-Date: Thu Dec 10 2015 18:01:22 GMT+0100 (CET)\n"
|
7 |
"Last-Translator: admin <post@webzunft.de>\n"
|
8 |
"Language-Team: webgilde <thomas.maier@webgilde.com>\n"
|
9 |
"Language: German\n"
|
26 |
"X-Textdomain-Support: yes\n"
|
27 |
"X-Loco-Target-Locale: de_DE"
|
28 |
|
29 |
+
#: ../classes/ad_type_image.php:67
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
#, php-format
|
31 |
+
msgid ""
|
32 |
+
"Pro: Open this url in a new window and track impressions and clicks with the "
|
33 |
+
"<a href=\"%s\" target=\"_blank\">Tracking add-on</a>"
|
34 |
+
msgstr ""
|
35 |
+
"Pro: Link in neuem Fenster öffnen oder Impressionen und Klicks zählen geht "
|
36 |
+
"einfach mit der <a href=\"%s\" target=\"_blank\">Tracking-Erweiterung</a>."
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
|
38 |
+
#: ../classes/visitor-conditions.php:72
|
39 |
+
#, php-format
|
40 |
+
msgid ""
|
41 |
+
"Pro: Display ads by the available space on the device using the <a href=\"%s\" "
|
42 |
+
"target=\"_blank\">Responsive add-on</a>"
|
43 |
+
msgstr ""
|
44 |
+
"Pro: Anzeigen nach verfügbarer Fläche anzeigen ist einfach mit der <a "
|
45 |
+
"href=\"%s\" target=\"_blank\">Responsive–Erweiterung</a>."
|
46 |
|
47 |
#. Name of the plugin
|
48 |
msgid "Advanced Ads"
|
272 |
msgid "Remove Widget ID"
|
273 |
msgstr "ID des Widget entfernen"
|
274 |
|
275 |
+
#: ../admin/class-advanced-ads-admin.php:929
|
276 |
+
msgid "Allow editors to manage ads"
|
277 |
+
msgstr "Redakteure können Anzeigen verwalten"
|
278 |
+
|
279 |
#: ../admin/class-advanced-ads-admin.php:1004
|
280 |
msgid "(display to all)"
|
281 |
msgstr "(für alle sichtbar)"
|
407 |
"ID-Attribut des Anzeigenwidgets entfernen, damit Ad-Blocker hier keinen "
|
408 |
"Ansatz haben es zu blockieren."
|
409 |
|
410 |
+
#: ../admin/class-advanced-ads-admin.php:1155
|
411 |
+
msgid "Allow editors to also manage and publish ads."
|
412 |
+
msgstr "Redakteuren erlauben, Anzeigen zu verwalten und zu veröffentlichen."
|
413 |
+
|
414 |
#: ../admin/class-advanced-ads-admin.php:1224
|
415 |
msgid "Ad Details"
|
416 |
msgstr "Anzeigeneinstellungen"
|
493 |
msgid "expires %s"
|
494 |
msgstr "Ende %s"
|
495 |
|
496 |
+
#: ../admin/includes/class-ad-groups-list.php:171 ../admin/views/ad-list-timing-
|
497 |
+
#: column.php:9
|
498 |
+
#, php-format
|
499 |
+
msgid "<strong>expired</strong> %s"
|
500 |
+
msgstr "<strong>abgelaufen</strong> %s"
|
501 |
+
|
502 |
#: ../admin/includes/class-ad-groups-list.php:184
|
503 |
msgid "all published ads are displayed"
|
504 |
msgstr "Alle veröffentlichten Anzeigen werden dargestellt"
|
1399 |
msgid "Internal description or your own notes about this ad."
|
1400 |
msgstr "Eigene Beschreibung und Notizen zu dieser Anzeige."
|
1401 |
|
1402 |
+
#: ../admin/views/ad-list-filters.php:2
|
1403 |
+
msgid "all ad types"
|
1404 |
+
msgstr "alle Typen"
|
1405 |
+
|
1406 |
+
#: ../admin/views/ad-list-filters.php:5
|
1407 |
+
msgid "all ad sizes"
|
1408 |
+
msgstr "alle Größen"
|
1409 |
+
|
1410 |
+
#: ../admin/views/ad-list-filters.php:8
|
1411 |
+
msgid "all ad dates"
|
1412 |
+
msgstr "jedes Datum"
|
1413 |
+
|
1414 |
#: ../admin/views/ad-list-filters.php:9
|
1415 |
msgid "expired"
|
1416 |
msgstr "abgelaufen"
|
1417 |
|
1418 |
+
#: ../admin/views/ad-list-filters.php:10
|
1419 |
+
msgid "any expiry date"
|
1420 |
+
msgstr "mit Ablaufdatum"
|
1421 |
+
|
1422 |
+
#: ../admin/views/ad-list-filters.php:11
|
1423 |
+
msgid "planned"
|
1424 |
+
msgstr "geplant"
|
1425 |
+
|
1426 |
+
#: ../admin/views/ad-list-filters.php:14
|
1427 |
+
msgid "all ad groups"
|
1428 |
+
msgstr "alle Gruppen"
|
1429 |
+
|
1430 |
#: ../admin/views/ad-main-metabox.php:3
|
1431 |
msgid "No ad types defined"
|
1432 |
msgstr "Keine Anzeigentypen definiert"
|
2053 |
|
2054 |
#: ../admin/views/support.php:19
|
2055 |
msgid ""
|
2056 |
+
"Please fix the red highlighted issues on this page or try to understand "
|
2057 |
+
"their consequences before contacting support."
|
2058 |
msgstr ""
|
2059 |
+
"Bitte lösen Sie die auf dieser Seite genannten Probleme oder schließen diese "
|
2060 |
+
"als Ursache aus, bevor Sie den Support kontaktieren."
|
2061 |
|
2062 |
#: ../admin/views/support.php:23
|
2063 |
#, php-format
|
2367 |
"Anzeigen nur für angemeldete Nutzer anzeigen oder verstecken\n"
|
2368 |
"\n"
|
2369 |
|
2370 |
+
#: ../classes/visitor-conditions.php:102
|
2371 |
msgid "is"
|
2372 |
msgstr "ist"
|
2373 |
|
2374 |
+
#: ../classes/visitor-conditions.php:103
|
2375 |
msgid "is not"
|
2376 |
msgstr "ist nicht"
|
2377 |
|
2378 |
+
#: ../classes/visitor-conditions.php:135
|
2379 |
msgid "equal"
|
2380 |
msgstr "ist gleich"
|
2381 |
|
2382 |
+
#: ../classes/visitor-conditions.php:136
|
2383 |
msgid "equal or higher"
|
2384 |
msgstr "gleich oder höher"
|
2385 |
|
2386 |
+
#: ../classes/visitor-conditions.php:137
|
2387 |
msgid "equal or lower"
|
2388 |
msgstr "gleich oder niedriger"
|
2389 |
|
2390 |
+
#: ../classes/visitor-conditions.php:169
|
2391 |
msgid "contains"
|
2392 |
msgstr "enthält"
|
2393 |
|
2394 |
+
#: ../classes/visitor-conditions.php:170
|
2395 |
msgid "starts with"
|
2396 |
msgstr "beginnt mit"
|
2397 |
|
2398 |
+
#: ../classes/visitor-conditions.php:171
|
2399 |
msgid "ends with"
|
2400 |
msgstr "endet mit"
|
2401 |
|
2402 |
+
#: ../classes/visitor-conditions.php:172
|
2403 |
msgid "matches"
|
2404 |
msgstr "entspricht"
|
2405 |
|
2406 |
+
#: ../classes/visitor-conditions.php:173
|
2407 |
msgid "matches regex"
|
2408 |
msgstr "regulärer Ausdruck"
|
2409 |
|
2410 |
+
#: ../classes/visitor-conditions.php:174
|
2411 |
msgid "does not contain"
|
2412 |
msgstr "enthält nicht"
|
2413 |
|
2414 |
+
#: ../classes/visitor-conditions.php:175
|
2415 |
msgid "does not start with"
|
2416 |
msgstr "beginnt nicht mit"
|
2417 |
|
2418 |
+
#: ../classes/visitor-conditions.php:176
|
2419 |
msgid "does not end with"
|
2420 |
msgstr "endet nicht mit"
|
2421 |
|
2422 |
+
#: ../classes/visitor-conditions.php:177
|
2423 |
msgid "does not match"
|
2424 |
msgstr "entspricht nicht"
|
2425 |
|
2426 |
+
#: ../classes/visitor-conditions.php:178
|
2427 |
msgid "does not match regex"
|
2428 |
msgstr "entspricht nicht reg. Ausdruck"
|
2429 |
|
languages/advanced-ads.mo
CHANGED
Binary file
|
languages/advanced-ads.po
ADDED
@@ -0,0 +1,2604 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Advanved Ads\n"
|
4 |
+
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
5 |
+
"POT-Creation-Date: 2015-01-28 20:07+0100\n"
|
6 |
+
"PO-Revision-Date: Wed Dec 16 2015 17:36:31 GMT+0100 (CET)\n"
|
7 |
+
"Last-Translator: admin <post@webzunft.de>\n"
|
8 |
+
"Language-Team: webgilde <thomas.maier@webgilde.com>\n"
|
9 |
+
"Language: Unknown locale\n"
|
10 |
+
"Plural-Forms: nplurals=2; plural=n != 1\n"
|
11 |
+
"MIME-Version: 1.0\n"
|
12 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
13 |
+
"Content-Transfer-Encoding: 8bit\n"
|
14 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
15 |
+
"X-Generator: Loco - https://localise.biz/\n"
|
16 |
+
"X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
|
17 |
+
"__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
|
18 |
+
"_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
|
19 |
+
"esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
|
20 |
+
"esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
|
21 |
+
"X-Poedit-Basepath: ../\n"
|
22 |
+
"X-Poedit-SearchPath-0: .\n"
|
23 |
+
"X-Loco-Target-Locale: ads_GB"
|
24 |
+
|
25 |
+
#. Name of the plugin
|
26 |
+
msgid "Advanced Ads"
|
27 |
+
msgstr ""
|
28 |
+
|
29 |
+
#. URI of the plugin
|
30 |
+
msgid "https://wpadvancedads.com"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#. Description of the plugin
|
34 |
+
msgid "Manage and optimize your ads in WordPress"
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#. Author of the plugin
|
38 |
+
msgid "Thomas Maier"
|
39 |
+
msgstr ""
|
40 |
+
|
41 |
+
#. Author URI of the plugin
|
42 |
+
msgid "http://webgilde.com"
|
43 |
+
msgstr ""
|
44 |
+
|
45 |
+
#: ../admin/class-advanced-ads-admin.php:255
|
46 |
+
msgid "Overview"
|
47 |
+
msgstr ""
|
48 |
+
|
49 |
+
#: ../admin/class-advanced-ads-admin.php:259 ../admin/class-advanced-ads-admin.
|
50 |
+
#: php:259 ../admin/includes/class-shortcode-creator.php:77 ../admin/views/ad-
|
51 |
+
#: group-list-form-row.php:28 ../admin/views/ad-group-list-header.php:5 ..
|
52 |
+
#: /admin/views/placements.php:80 ../admin/views/placements.php:184 ..
|
53 |
+
#: /classes/widget.php:89 ../public/class-advanced-ads.php:563
|
54 |
+
msgid "Ads"
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
+
#: ../admin/class-advanced-ads-admin.php:263 ../admin/includes/class-shortcode-
|
58 |
+
#: creator.php:84 ../admin/views/placements.php:73 ../admin/views/placements.php:
|
59 |
+
#: 177 ../classes/widget.php:82
|
60 |
+
msgid "Ad Groups"
|
61 |
+
msgstr ""
|
62 |
+
|
63 |
+
#: ../admin/class-advanced-ads-admin.php:263 ../public/class-advanced-ads.php:536
|
64 |
+
msgid "Groups"
|
65 |
+
msgstr ""
|
66 |
+
|
67 |
+
#: ../admin/class-advanced-ads-admin.php:268 ../admin/views/debug.php:14
|
68 |
+
msgid "Ad Placements"
|
69 |
+
msgstr ""
|
70 |
+
|
71 |
+
#: ../admin/class-advanced-ads-admin.php:268 ../admin/includes/class-shortcode-
|
72 |
+
#: creator.php:91 ../admin/views/placements.php:18 ../classes/widget.php:75
|
73 |
+
msgid "Placements"
|
74 |
+
msgstr ""
|
75 |
+
|
76 |
+
#: ../admin/class-advanced-ads-admin.php:272
|
77 |
+
msgid "Advanced Ads Settings"
|
78 |
+
msgstr ""
|
79 |
+
|
80 |
+
#: ../admin/class-advanced-ads-admin.php:272 ../admin/class-advanced-ads-admin.
|
81 |
+
#: php:499 ../admin/views/debug.php:11
|
82 |
+
msgid "Settings"
|
83 |
+
msgstr ""
|
84 |
+
|
85 |
+
#: ../admin/class-advanced-ads-admin.php:275
|
86 |
+
msgid "Advanced Ads Debugging"
|
87 |
+
msgstr ""
|
88 |
+
|
89 |
+
#: ../admin/class-advanced-ads-admin.php:275
|
90 |
+
msgid "Debug"
|
91 |
+
msgstr ""
|
92 |
+
|
93 |
+
#: ../admin/class-advanced-ads-admin.php:279 ../admin/class-advanced-ads-admin.
|
94 |
+
#: php:279
|
95 |
+
msgid "Advanced Ads Intro"
|
96 |
+
msgstr ""
|
97 |
+
|
98 |
+
#: ../admin/class-advanced-ads-admin.php:283 ../admin/class-advanced-ads-admin.
|
99 |
+
#: php:283
|
100 |
+
msgid "Support"
|
101 |
+
msgstr ""
|
102 |
+
|
103 |
+
#: ../admin/class-advanced-ads-admin.php:413 ../admin/class-advanced-ads-admin.
|
104 |
+
#: php:440
|
105 |
+
msgid "Sorry, you are not allowed to access this feature."
|
106 |
+
msgstr ""
|
107 |
+
|
108 |
+
#: ../admin/class-advanced-ads-admin.php:426
|
109 |
+
msgid ""
|
110 |
+
"You attempted to edit an ad group that doesn’t exist. Perhaps it was "
|
111 |
+
"deleted?"
|
112 |
+
msgstr ""
|
113 |
+
|
114 |
+
#: ../admin/class-advanced-ads-admin.php:541
|
115 |
+
msgid "Ad Type"
|
116 |
+
msgstr ""
|
117 |
+
|
118 |
+
#: ../admin/class-advanced-ads-admin.php:544
|
119 |
+
msgid "Ad Parameters"
|
120 |
+
msgstr ""
|
121 |
+
|
122 |
+
#: ../admin/class-advanced-ads-admin.php:547
|
123 |
+
msgid "Layout / Output"
|
124 |
+
msgstr ""
|
125 |
+
|
126 |
+
#: ../admin/class-advanced-ads-admin.php:553
|
127 |
+
msgid "Visitor Conditions"
|
128 |
+
msgstr ""
|
129 |
+
|
130 |
+
#: ../admin/class-advanced-ads-admin.php:764 ../admin/class-advanced-ads-admin.
|
131 |
+
#: php:765
|
132 |
+
msgid "Ad updated."
|
133 |
+
msgstr ""
|
134 |
+
|
135 |
+
#. translators: %s: date and time of the revision
|
136 |
+
#: ../admin/class-advanced-ads-admin.php:767
|
137 |
+
#, php-format
|
138 |
+
msgid "Ad restored to revision from %s"
|
139 |
+
msgstr ""
|
140 |
+
|
141 |
+
#: ../admin/class-advanced-ads-admin.php:768
|
142 |
+
msgid "Ad published."
|
143 |
+
msgstr ""
|
144 |
+
|
145 |
+
#: ../admin/class-advanced-ads-admin.php:769
|
146 |
+
msgid "Ad saved."
|
147 |
+
msgstr ""
|
148 |
+
|
149 |
+
#: ../admin/class-advanced-ads-admin.php:770
|
150 |
+
msgid "Ad submitted."
|
151 |
+
msgstr ""
|
152 |
+
|
153 |
+
#: ../admin/class-advanced-ads-admin.php:772
|
154 |
+
#, php-format
|
155 |
+
msgid "Ad scheduled for: <strong>%1$s</strong>."
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#. translators: Publish box date format, see http://php.net/date
|
159 |
+
#: ../admin/class-advanced-ads-admin.php:774
|
160 |
+
msgid "M j, Y @ G:i"
|
161 |
+
msgstr ""
|
162 |
+
|
163 |
+
#: ../admin/class-advanced-ads-admin.php:776
|
164 |
+
msgid "Ad draft updated."
|
165 |
+
msgstr ""
|
166 |
+
|
167 |
+
#: ../admin/class-advanced-ads-admin.php:795
|
168 |
+
#, php-format
|
169 |
+
msgid "%s ad updated."
|
170 |
+
msgid_plural "%s ads updated."
|
171 |
+
msgstr[0] ""
|
172 |
+
msgstr[1] ""
|
173 |
+
|
174 |
+
#: ../admin/class-advanced-ads-admin.php:796
|
175 |
+
#, php-format
|
176 |
+
msgid "%s ad not updated, somebody is editing it."
|
177 |
+
msgid_plural "%s ads not updated, somebody is editing them."
|
178 |
+
msgstr[0] ""
|
179 |
+
msgstr[1] ""
|
180 |
+
|
181 |
+
#: ../admin/class-advanced-ads-admin.php:797
|
182 |
+
#, php-format
|
183 |
+
msgid "%s ad permanently deleted."
|
184 |
+
msgid_plural "%s ads permanently deleted."
|
185 |
+
msgstr[0] ""
|
186 |
+
msgstr[1] ""
|
187 |
+
|
188 |
+
#: ../admin/class-advanced-ads-admin.php:798
|
189 |
+
#, php-format
|
190 |
+
msgid "%s ad moved to the Trash."
|
191 |
+
msgid_plural "%s ads moved to the Trash."
|
192 |
+
msgstr[0] ""
|
193 |
+
msgstr[1] ""
|
194 |
+
|
195 |
+
#: ../admin/class-advanced-ads-admin.php:799
|
196 |
+
#, php-format
|
197 |
+
msgid "%s ad restored from the Trash."
|
198 |
+
msgid_plural "%s ads restored from the Trash."
|
199 |
+
msgstr[0] ""
|
200 |
+
msgstr[1] ""
|
201 |
+
|
202 |
+
#: ../admin/class-advanced-ads-admin.php:834 ../admin/views/settings.php:12
|
203 |
+
msgid "General"
|
204 |
+
msgstr ""
|
205 |
+
|
206 |
+
#: ../admin/class-advanced-ads-admin.php:846 ../admin/class-advanced-ads-admin.
|
207 |
+
#: php:950
|
208 |
+
msgid "Licenses"
|
209 |
+
msgstr ""
|
210 |
+
|
211 |
+
#: ../admin/class-advanced-ads-admin.php:857
|
212 |
+
msgid "Disable ads"
|
213 |
+
msgstr ""
|
214 |
+
|
215 |
+
#: ../admin/class-advanced-ads-admin.php:865
|
216 |
+
msgid "Hide ads for logged in users"
|
217 |
+
msgstr ""
|
218 |
+
|
219 |
+
#: ../admin/class-advanced-ads-admin.php:873
|
220 |
+
msgid "Use advanced JavaScript"
|
221 |
+
msgstr ""
|
222 |
+
|
223 |
+
#: ../admin/class-advanced-ads-admin.php:881
|
224 |
+
msgid "Unlimited ad injection"
|
225 |
+
msgstr ""
|
226 |
+
|
227 |
+
#: ../admin/class-advanced-ads-admin.php:889
|
228 |
+
msgid "Priority of content injection filter"
|
229 |
+
msgstr ""
|
230 |
+
|
231 |
+
#: ../admin/class-advanced-ads-admin.php:897
|
232 |
+
msgid "Hide ads from bots"
|
233 |
+
msgstr ""
|
234 |
+
|
235 |
+
#: ../admin/class-advanced-ads-admin.php:905
|
236 |
+
msgid "Disable notices"
|
237 |
+
msgstr ""
|
238 |
+
|
239 |
+
#: ../admin/class-advanced-ads-admin.php:913
|
240 |
+
msgid "ID prefix"
|
241 |
+
msgstr ""
|
242 |
+
|
243 |
+
#: ../admin/class-advanced-ads-admin.php:921
|
244 |
+
msgid "Remove Widget ID"
|
245 |
+
msgstr ""
|
246 |
+
|
247 |
+
#: ../admin/class-advanced-ads-admin.php:929
|
248 |
+
msgid "Allow editors to manage ads"
|
249 |
+
msgstr ""
|
250 |
+
|
251 |
+
#: ../admin/class-advanced-ads-admin.php:1005
|
252 |
+
msgid "Subscriber"
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#: ../admin/class-advanced-ads-admin.php:1006
|
256 |
+
msgid "Contributor"
|
257 |
+
msgstr ""
|
258 |
+
|
259 |
+
#: ../admin/class-advanced-ads-admin.php:1007
|
260 |
+
msgid "Author"
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: ../admin/class-advanced-ads-admin.php:1008
|
264 |
+
msgid "Editor"
|
265 |
+
msgstr ""
|
266 |
+
|
267 |
+
#: ../admin/class-advanced-ads-admin.php:1009
|
268 |
+
msgid "Admin"
|
269 |
+
msgstr ""
|
270 |
+
|
271 |
+
#: ../admin/class-advanced-ads-admin.php:1017
|
272 |
+
msgid "Choose the lowest role a user must have in order to not see any ads."
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: ../admin/class-advanced-ads-admin.php:1031
|
276 |
+
msgid ""
|
277 |
+
"<strong>notice: </strong>the file is currently enabled by an add-on that "
|
278 |
+
"needs it."
|
279 |
+
msgstr ""
|
280 |
+
|
281 |
+
#: ../admin/class-advanced-ads-admin.php:1034
|
282 |
+
#, php-format
|
283 |
+
msgid ""
|
284 |
+
"Enable advanced JavaScript functions (<a href=\"%s\" target=\"_blank\">here</a>)."
|
285 |
+
" Some features and add-ons might override this setting if they need features "
|
286 |
+
"from this file."
|
287 |
+
msgstr ""
|
288 |
+
|
289 |
+
#: ../admin/class-advanced-ads-admin.php:1047
|
290 |
+
msgid ""
|
291 |
+
"Some plugins and themes trigger ad injection where it shouldn’t happen. "
|
292 |
+
"Therefore, Advanced Ads ignores injected placements on non-singular pages "
|
293 |
+
"and outside the loop. However, this can cause problems with some themes. You "
|
294 |
+
"can enable this option if you don’t see ads or want to enable ad injections "
|
295 |
+
"on archive pages AT YOUR OWN RISK."
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: ../admin/class-advanced-ads-admin.php:1063
|
299 |
+
msgid ""
|
300 |
+
"Please check your post content. A priority of 10 and below might cause "
|
301 |
+
"issues (wpautop function might run twice)."
|
302 |
+
msgstr ""
|
303 |
+
|
304 |
+
#: ../admin/class-advanced-ads-admin.php:1065
|
305 |
+
msgid ""
|
306 |
+
"Play with this value in order to change the priority of the injected ads "
|
307 |
+
"compared to other auto injected elements in the post content."
|
308 |
+
msgstr ""
|
309 |
+
|
310 |
+
#: ../admin/class-advanced-ads-admin.php:1079
|
311 |
+
#, php-format
|
312 |
+
msgid ""
|
313 |
+
"Hide ads from crawlers, bots and empty user agents. Also prevents counting "
|
314 |
+
"impressions for bots when using the <a href=\"%s\" target=\"_blank\">Tracking "
|
315 |
+
"Add-On</a>."
|
316 |
+
msgstr ""
|
317 |
+
|
318 |
+
#: ../admin/class-advanced-ads-admin.php:1080
|
319 |
+
msgid ""
|
320 |
+
"Disabling this option only makes sense if your ads contain content you want "
|
321 |
+
"to display to bots (like search engines) or your site is cached and bots "
|
322 |
+
"could create a cached version without the ads."
|
323 |
+
msgstr ""
|
324 |
+
|
325 |
+
#: ../admin/class-advanced-ads-admin.php:1093
|
326 |
+
msgid ""
|
327 |
+
"Disable internal notices like tips, tutorials, email newsletters and update "
|
328 |
+
"notices. Disabling notices is recommended if you run multiple blogs with "
|
329 |
+
"Advanced Ads already."
|
330 |
+
msgstr ""
|
331 |
+
|
332 |
+
#: ../admin/class-advanced-ads-admin.php:1115
|
333 |
+
msgid ""
|
334 |
+
"Prefix of class or id attributes in the frontend. Change it if you don’t "
|
335 |
+
"want <strong>ad blockers</strong> to mark these blocks as ads.<br/>You might "
|
336 |
+
"need to <strong>rewrite css rules afterwards</strong>."
|
337 |
+
msgstr ""
|
338 |
+
|
339 |
+
#: ../admin/class-advanced-ads-admin.php:1136
|
340 |
+
msgid ""
|
341 |
+
"Remove the ID attribute from widgets in order to not make them an easy "
|
342 |
+
"target of ad blockers."
|
343 |
+
msgstr ""
|
344 |
+
|
345 |
+
#: ../admin/class-advanced-ads-admin.php:1155
|
346 |
+
msgid "Allow editors to also manage and publish ads."
|
347 |
+
msgstr ""
|
348 |
+
|
349 |
+
#: ../admin/class-advanced-ads-admin.php:1224
|
350 |
+
msgid "Ad Details"
|
351 |
+
msgstr ""
|
352 |
+
|
353 |
+
#: ../admin/class-advanced-ads-admin.php:1225
|
354 |
+
msgid "Ad Planning"
|
355 |
+
msgstr ""
|
356 |
+
|
357 |
+
#: ../admin/class-advanced-ads-admin.php:1360
|
358 |
+
msgid "Ad Settings"
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: ../admin/class-advanced-ads-admin.php:1439 ../admin/views/overview.php:23
|
362 |
+
msgid "Ads Dashboard"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: ../admin/class-advanced-ads-admin.php:1451
|
366 |
+
msgid "From the ad optimization universe"
|
367 |
+
msgstr ""
|
368 |
+
|
369 |
+
#: ../admin/class-advanced-ads-admin.php:1460
|
370 |
+
msgid "Advanced Ads Tutorials"
|
371 |
+
msgstr ""
|
372 |
+
|
373 |
+
#: ../admin/class-advanced-ads-admin.php:1471
|
374 |
+
#, php-format
|
375 |
+
msgid "%d ads – <a href=\"%s\">manage</a> - <a href=\"%s\">new</a>"
|
376 |
+
msgstr ""
|
377 |
+
|
378 |
+
#: ../admin/class-advanced-ads-admin.php:1482
|
379 |
+
msgid "plugin manual and homepage"
|
380 |
+
msgstr ""
|
381 |
+
|
382 |
+
#: ../admin/class-advanced-ads-admin.php:1489
|
383 |
+
msgid "Get the tutorial via email"
|
384 |
+
msgstr ""
|
385 |
+
|
386 |
+
#: ../admin/class-advanced-ads-admin.php:1496
|
387 |
+
msgid "Get AdSense tips via email"
|
388 |
+
msgstr ""
|
389 |
+
|
390 |
+
#: ../admin/class-advanced-ads-admin.php:1577
|
391 |
+
msgid "Error while trying to register the license. Please contact support."
|
392 |
+
msgstr ""
|
393 |
+
|
394 |
+
#: ../admin/class-advanced-ads-admin.php:1583
|
395 |
+
msgid "Please enter and save a valid license key first."
|
396 |
+
msgstr ""
|
397 |
+
|
398 |
+
#: ../admin/class-advanced-ads-admin.php:1609
|
399 |
+
#, php-format
|
400 |
+
msgid "License is invalid. Reason: %s"
|
401 |
+
msgstr ""
|
402 |
+
|
403 |
+
#: ../admin/class-advanced-ads-admin.php:1627
|
404 |
+
msgid "Error while trying to disable the license. Please contact support."
|
405 |
+
msgstr ""
|
406 |
+
|
407 |
+
#: ../admin/class-advanced-ads-admin.php:1658
|
408 |
+
msgid "License couldn’t be deactivated. Please try again later or contact support."
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: ../admin/includes/class-ad-groups-list.php:156
|
412 |
+
msgid "Ad weight"
|
413 |
+
msgstr ""
|
414 |
+
|
415 |
+
#: ../admin/includes/class-ad-groups-list.php:164 ../admin/views/ad-list-timing-
|
416 |
+
#: column.php:4
|
417 |
+
#, php-format
|
418 |
+
msgid "starts %s"
|
419 |
+
msgstr ""
|
420 |
+
|
421 |
+
#: ../admin/includes/class-ad-groups-list.php:169 ../admin/views/ad-list-timing-
|
422 |
+
#: column.php:7
|
423 |
+
#, php-format
|
424 |
+
msgid "expires %s"
|
425 |
+
msgstr ""
|
426 |
+
|
427 |
+
#: ../admin/includes/class-ad-groups-list.php:171 ../admin/views/ad-list-timing-
|
428 |
+
#: column.php:9
|
429 |
+
#, php-format
|
430 |
+
msgid "<strong>expired</strong> %s"
|
431 |
+
msgstr ""
|
432 |
+
|
433 |
+
#: ../admin/includes/class-ad-groups-list.php:184
|
434 |
+
msgid "all published ads are displayed"
|
435 |
+
msgstr ""
|
436 |
+
|
437 |
+
#: ../admin/includes/class-ad-groups-list.php:186
|
438 |
+
#, php-format
|
439 |
+
msgid "up to %d ads displayed"
|
440 |
+
msgstr ""
|
441 |
+
|
442 |
+
#: ../admin/includes/class-ad-groups-list.php:189 ../admin/views/ad-group-list-
|
443 |
+
#: form-row.php:37
|
444 |
+
msgid "No ads assigned"
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: ../admin/includes/class-ad-groups-list.php:237
|
448 |
+
msgid "Random ads"
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
+
#: ../admin/includes/class-ad-groups-list.php:238
|
452 |
+
msgid "Display random ads based on ad weight"
|
453 |
+
msgstr ""
|
454 |
+
|
455 |
+
#: ../admin/includes/class-ad-groups-list.php:241
|
456 |
+
msgid "Ordered ads"
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: ../admin/includes/class-ad-groups-list.php:242
|
460 |
+
msgid "Display ads with the highest ad weight first"
|
461 |
+
msgstr ""
|
462 |
+
|
463 |
+
#: ../admin/includes/class-ad-groups-list.php:261 ../public/class-advanced-ads.
|
464 |
+
#: php:567
|
465 |
+
msgid "Edit"
|
466 |
+
msgstr ""
|
467 |
+
|
468 |
+
#: ../admin/includes/class-ad-groups-list.php:262
|
469 |
+
msgid "Usage"
|
470 |
+
msgstr ""
|
471 |
+
|
472 |
+
#: ../admin/includes/class-ad-groups-list.php:271
|
473 |
+
msgid "Delete"
|
474 |
+
msgstr ""
|
475 |
+
|
476 |
+
#: ../admin/includes/class-ad-groups-list.php:292
|
477 |
+
msgid "Invalid Ad Group"
|
478 |
+
msgstr ""
|
479 |
+
|
480 |
+
#: ../admin/includes/class-ad-groups-list.php:297
|
481 |
+
msgid "You don’t have permission to change the ad groups"
|
482 |
+
msgstr ""
|
483 |
+
|
484 |
+
#: ../admin/includes/class-display-condition-callbacks.php:28
|
485 |
+
msgid "Display on all public <strong>post types</strong>."
|
486 |
+
msgstr ""
|
487 |
+
|
488 |
+
#: ../admin/includes/class-display-condition-callbacks.php:31 ..
|
489 |
+
#: /includes/array_ad_conditions.php:39
|
490 |
+
msgid "Choose the public post types on which to display the ad."
|
491 |
+
msgstr ""
|
492 |
+
|
493 |
+
#: ../admin/includes/class-display-condition-callbacks.php:86
|
494 |
+
msgid "Display for all <strong>categories, tags and taxonomies</strong>."
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: ../admin/includes/class-display-condition-callbacks.php:87
|
498 |
+
msgid ""
|
499 |
+
"Choose terms from public categories, tags and other taxonomies a post must "
|
500 |
+
"belong to in order to have ads."
|
501 |
+
msgstr ""
|
502 |
+
|
503 |
+
#: ../admin/includes/class-display-condition-callbacks.php:104 ..
|
504 |
+
#: /admin/includes/class-display-condition-callbacks.php:217
|
505 |
+
msgid "Hide from here"
|
506 |
+
msgstr ""
|
507 |
+
|
508 |
+
#: ../admin/includes/class-display-condition-callbacks.php:104
|
509 |
+
msgid ""
|
510 |
+
"Choose the terms from public categories, tags and other taxonomies a post "
|
511 |
+
"must belong to hide the ad from it."
|
512 |
+
msgstr ""
|
513 |
+
|
514 |
+
#: ../admin/includes/class-display-condition-callbacks.php:149
|
515 |
+
msgctxt "display the terms search field on ad edit page"
|
516 |
+
msgid "add more terms"
|
517 |
+
msgstr ""
|
518 |
+
|
519 |
+
#: ../admin/includes/class-display-condition-callbacks.php:150
|
520 |
+
msgid "add more terms"
|
521 |
+
msgstr ""
|
522 |
+
|
523 |
+
#: ../admin/includes/class-display-condition-callbacks.php:153
|
524 |
+
msgid "term name or id"
|
525 |
+
msgstr ""
|
526 |
+
|
527 |
+
#: ../admin/includes/class-display-condition-callbacks.php:197
|
528 |
+
msgid "Display on all <strong>category archive pages</strong>."
|
529 |
+
msgstr ""
|
530 |
+
|
531 |
+
#: ../admin/includes/class-display-condition-callbacks.php:200
|
532 |
+
msgid ""
|
533 |
+
"Choose the terms from public categories, tags and other taxonomies on "
|
534 |
+
"which's archive page ads can appear"
|
535 |
+
msgstr ""
|
536 |
+
|
537 |
+
#: ../admin/includes/class-display-condition-callbacks.php:217
|
538 |
+
msgid ""
|
539 |
+
"Choose the terms from public categories, tags and other taxonomies on "
|
540 |
+
"which's archive pages ads are hidden."
|
541 |
+
msgstr ""
|
542 |
+
|
543 |
+
#: ../admin/includes/class-display-condition-callbacks.php:239
|
544 |
+
msgid ""
|
545 |
+
"Display an all <strong>individual posts, pages</strong> and public post type "
|
546 |
+
"pages"
|
547 |
+
msgstr ""
|
548 |
+
|
549 |
+
#: ../admin/includes/class-display-condition-callbacks.php:242 ..
|
550 |
+
#: /includes/array_ad_conditions.php:57
|
551 |
+
msgid ""
|
552 |
+
"Choose on which individual posts, pages and public post type pages you want "
|
553 |
+
"to display or hide ads."
|
554 |
+
msgstr ""
|
555 |
+
|
556 |
+
#: ../admin/includes/class-display-condition-callbacks.php:259
|
557 |
+
msgid "What should happen with ads on the list of individual posts below?"
|
558 |
+
msgstr ""
|
559 |
+
|
560 |
+
#: ../admin/includes/class-display-condition-callbacks.php:260
|
561 |
+
msgid "ignore the list"
|
562 |
+
msgstr ""
|
563 |
+
|
564 |
+
#: ../admin/includes/class-display-condition-callbacks.php:261
|
565 |
+
msgid "display the ad only there"
|
566 |
+
msgstr ""
|
567 |
+
|
568 |
+
#: ../admin/includes/class-display-condition-callbacks.php:262
|
569 |
+
msgid "hide the ad here"
|
570 |
+
msgstr ""
|
571 |
+
|
572 |
+
#: ../admin/includes/class-display-condition-callbacks.php:270
|
573 |
+
msgid "Update warning"
|
574 |
+
msgstr ""
|
575 |
+
|
576 |
+
#: ../admin/includes/class-display-condition-callbacks.php:271
|
577 |
+
msgid ""
|
578 |
+
"Due to some conflicts before version 1.2.6, it is from now on only possible "
|
579 |
+
"to choose either individual pages to include or exclude an ad, but not both "
|
580 |
+
"with mixed settings. It seems you are still using mixed settings on this "
|
581 |
+
"page. Please consider changing your setup for this ad."
|
582 |
+
msgstr ""
|
583 |
+
|
584 |
+
#: ../admin/includes/class-display-condition-callbacks.php:272
|
585 |
+
msgid "Your old values are:"
|
586 |
+
msgstr ""
|
587 |
+
|
588 |
+
#: ../admin/includes/class-display-condition-callbacks.php:273
|
589 |
+
msgid "Post IDs the ad is displayed on:"
|
590 |
+
msgstr ""
|
591 |
+
|
592 |
+
#: ../admin/includes/class-display-condition-callbacks.php:274
|
593 |
+
msgid "Post IDs the ad is hidden from:"
|
594 |
+
msgstr ""
|
595 |
+
|
596 |
+
#: ../admin/includes/class-display-condition-callbacks.php:275
|
597 |
+
msgid ""
|
598 |
+
"Below you find the pages the ad is displayed on. If this is ok, just save "
|
599 |
+
"the ad. If not, please update your settings."
|
600 |
+
msgstr ""
|
601 |
+
|
602 |
+
#: ../admin/includes/class-display-condition-callbacks.php:318
|
603 |
+
msgid "new"
|
604 |
+
msgstr ""
|
605 |
+
|
606 |
+
#: ../admin/includes/class-display-condition-callbacks.php:320
|
607 |
+
msgid "type the title"
|
608 |
+
msgstr ""
|
609 |
+
|
610 |
+
#: ../admin/includes/class-notices.php:359
|
611 |
+
#, php-format
|
612 |
+
msgid ""
|
613 |
+
"You don’t seem to have an email address. Please use <a href=\"%s\" "
|
614 |
+
"target=\"_blank\">this form</a> to sign up."
|
615 |
+
msgstr ""
|
616 |
+
|
617 |
+
#: ../admin/includes/class-notices.php:377
|
618 |
+
msgid "How embarrassing. The email server seems to be down. Please try again later."
|
619 |
+
msgstr ""
|
620 |
+
|
621 |
+
#: ../admin/includes/class-notices.php:382
|
622 |
+
#, php-format
|
623 |
+
msgid ""
|
624 |
+
"Please check your email (%s) for the confirmation message. If you didn’t "
|
625 |
+
"receive one or want to use another email address then please use <a "
|
626 |
+
"href=\"%s\" target=\"_blank\">this form</a> to sign up."
|
627 |
+
msgstr ""
|
628 |
+
|
629 |
+
#: ../admin/includes/class-overview-widgets.php:45
|
630 |
+
msgid "Tips and Tutorials"
|
631 |
+
msgstr ""
|
632 |
+
|
633 |
+
#: ../admin/includes/class-overview-widgets.php:47
|
634 |
+
msgid "Setup and Optimization Help"
|
635 |
+
msgstr ""
|
636 |
+
|
637 |
+
#: ../admin/includes/class-overview-widgets.php:49
|
638 |
+
msgid "Manual and Support"
|
639 |
+
msgstr ""
|
640 |
+
|
641 |
+
#: ../admin/includes/class-overview-widgets.php:53
|
642 |
+
msgid "Advanced Ads Pro"
|
643 |
+
msgstr ""
|
644 |
+
|
645 |
+
#: ../admin/includes/class-overview-widgets.php:55
|
646 |
+
msgid "Tracking and Stats"
|
647 |
+
msgstr ""
|
648 |
+
|
649 |
+
#: ../admin/includes/class-overview-widgets.php:57
|
650 |
+
msgid "Responsive and Mobile ads"
|
651 |
+
msgstr ""
|
652 |
+
|
653 |
+
#: ../admin/includes/class-overview-widgets.php:59
|
654 |
+
msgid "Sticky ads"
|
655 |
+
msgstr ""
|
656 |
+
|
657 |
+
#: ../admin/includes/class-overview-widgets.php:61
|
658 |
+
msgid "PopUps and Layers"
|
659 |
+
msgstr ""
|
660 |
+
|
661 |
+
#: ../admin/includes/class-overview-widgets.php:63
|
662 |
+
msgid "Ad Slider"
|
663 |
+
msgstr ""
|
664 |
+
|
665 |
+
#: ../admin/includes/class-overview-widgets.php:81
|
666 |
+
msgid "Get 2 <strong>free add-ons</strong> for joining the newsletter."
|
667 |
+
msgstr ""
|
668 |
+
|
669 |
+
#: ../admin/includes/class-overview-widgets.php:82
|
670 |
+
msgid "Join now"
|
671 |
+
msgstr ""
|
672 |
+
|
673 |
+
#: ../admin/includes/class-overview-widgets.php:89
|
674 |
+
msgid ""
|
675 |
+
"Learn more about how and <strong>how much you can earn with AdSense</strong> "
|
676 |
+
"and Advanced Ads from the dedicated newsletter group."
|
677 |
+
msgstr ""
|
678 |
+
|
679 |
+
#: ../admin/includes/class-overview-widgets.php:90 ../admin/includes/notices.php:
|
680 |
+
#: 32 ../admin/views/intro.php:73 ../admin/views/notices/inline.php:3 ..
|
681 |
+
#: /admin/views/notices/subscribe.php:3
|
682 |
+
msgid "Subscribe me now"
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
#: ../admin/includes/class-overview-widgets.php:97
|
686 |
+
msgid "Get the first steps and more tutorials to your inbox."
|
687 |
+
msgstr ""
|
688 |
+
|
689 |
+
#: ../admin/includes/class-overview-widgets.php:98
|
690 |
+
msgid "Send it now"
|
691 |
+
msgstr ""
|
692 |
+
|
693 |
+
#: ../admin/includes/class-overview-widgets.php:121 ../admin/views/intro.php:78
|
694 |
+
msgid "Create your first ad"
|
695 |
+
msgstr ""
|
696 |
+
|
697 |
+
#: ../admin/includes/class-overview-widgets.php:124
|
698 |
+
msgid ""
|
699 |
+
"Ad Groups contain ads and are currently used to rotate multiple ads on a "
|
700 |
+
"single spot."
|
701 |
+
msgstr ""
|
702 |
+
|
703 |
+
#: ../admin/includes/class-overview-widgets.php:126
|
704 |
+
msgid "Create your first group"
|
705 |
+
msgstr ""
|
706 |
+
|
707 |
+
#: ../admin/includes/class-overview-widgets.php:129
|
708 |
+
msgid "Ad Placements are the best way to manage where to display ads and groups."
|
709 |
+
msgstr ""
|
710 |
+
|
711 |
+
#: ../admin/includes/class-overview-widgets.php:131
|
712 |
+
msgid "Create your first placement"
|
713 |
+
msgstr ""
|
714 |
+
|
715 |
+
#: ../admin/includes/class-overview-widgets.php:136
|
716 |
+
msgid "Next steps"
|
717 |
+
msgstr ""
|
718 |
+
|
719 |
+
#: ../admin/includes/class-overview-widgets.php:148
|
720 |
+
#, php-format
|
721 |
+
msgid "<a href=\"%s\" target=\"_blank\">Plugin Homepage</a>"
|
722 |
+
msgstr ""
|
723 |
+
|
724 |
+
#: ../admin/includes/class-overview-widgets.php:149
|
725 |
+
#, php-format
|
726 |
+
msgid "<a href=\"%s\" target=\"_blank\">Manual</a>"
|
727 |
+
msgstr ""
|
728 |
+
|
729 |
+
#: ../admin/includes/class-overview-widgets.php:150
|
730 |
+
#, php-format
|
731 |
+
msgid "Ask other users in the <a href=\"%s\" target=\"_blank\">wordpress.org forum</a>"
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: ../admin/includes/class-overview-widgets.php:151
|
735 |
+
#, php-format
|
736 |
+
msgid "Vote for a <a href=\"%s\" target=\"_blank\">feature</a>"
|
737 |
+
msgstr ""
|
738 |
+
|
739 |
+
#: ../admin/includes/class-overview-widgets.php:152
|
740 |
+
#, php-format
|
741 |
+
msgid ""
|
742 |
+
"Thank the developer with a ★★★★★ review on <a "
|
743 |
+
"href=\"%s\" target=\"_blank\">wordpress.org</a>"
|
744 |
+
msgstr ""
|
745 |
+
|
746 |
+
#: ../admin/includes/class-overview-widgets.php:161
|
747 |
+
msgid ""
|
748 |
+
"Need help to set up and optimize your ads? Need custom coding on your site? "
|
749 |
+
"Ask me for a quote."
|
750 |
+
msgstr ""
|
751 |
+
|
752 |
+
#: ../admin/includes/class-overview-widgets.php:162
|
753 |
+
#, php-format
|
754 |
+
msgid "Help with ads on %s"
|
755 |
+
msgstr ""
|
756 |
+
|
757 |
+
#: ../admin/includes/class-overview-widgets.php:163
|
758 |
+
msgid "Get an offer"
|
759 |
+
msgstr ""
|
760 |
+
|
761 |
+
#: ../admin/includes/class-overview-widgets.php:171
|
762 |
+
msgid "Ad management for advanced websites."
|
763 |
+
msgstr ""
|
764 |
+
|
765 |
+
#: ../admin/includes/class-overview-widgets.php:172
|
766 |
+
msgid "Cache-busting"
|
767 |
+
msgstr ""
|
768 |
+
|
769 |
+
#: ../admin/includes/class-overview-widgets.php:173
|
770 |
+
msgid "Advanced visitor conditions"
|
771 |
+
msgstr ""
|
772 |
+
|
773 |
+
#: ../admin/includes/class-overview-widgets.php:174
|
774 |
+
msgid "Flash ads with fallback"
|
775 |
+
msgstr ""
|
776 |
+
|
777 |
+
#: ../admin/includes/class-overview-widgets.php:176
|
778 |
+
msgid "Get Pro"
|
779 |
+
msgstr ""
|
780 |
+
|
781 |
+
#: ../admin/includes/class-overview-widgets.php:184
|
782 |
+
msgid "Track the impressions of and clicks on your ads."
|
783 |
+
msgstr ""
|
784 |
+
|
785 |
+
#: ../admin/includes/class-overview-widgets.php:185
|
786 |
+
msgid "2 methods to count impressions"
|
787 |
+
msgstr ""
|
788 |
+
|
789 |
+
#: ../admin/includes/class-overview-widgets.php:186
|
790 |
+
msgid "beautiful stats for all or single ads"
|
791 |
+
msgstr ""
|
792 |
+
|
793 |
+
#: ../admin/includes/class-overview-widgets.php:187
|
794 |
+
msgid "get stats for predefined and custom persiods"
|
795 |
+
msgstr ""
|
796 |
+
|
797 |
+
#: ../admin/includes/class-overview-widgets.php:188
|
798 |
+
msgid "group stats by day, week or month"
|
799 |
+
msgstr ""
|
800 |
+
|
801 |
+
#: ../admin/includes/class-overview-widgets.php:190
|
802 |
+
msgid "Get the Tracking add-on"
|
803 |
+
msgstr ""
|
804 |
+
|
805 |
+
#: ../admin/includes/class-overview-widgets.php:198
|
806 |
+
msgid "Display ads based on the size of your visitor’s browser or device."
|
807 |
+
msgstr ""
|
808 |
+
|
809 |
+
#: ../admin/includes/class-overview-widgets.php:199
|
810 |
+
msgid "set a range (from … to …) pixels for the browser size"
|
811 |
+
msgstr ""
|
812 |
+
|
813 |
+
#: ../admin/includes/class-overview-widgets.php:200
|
814 |
+
msgid "set custom sizes for AdSense responsive ads"
|
815 |
+
msgstr ""
|
816 |
+
|
817 |
+
#: ../admin/includes/class-overview-widgets.php:201
|
818 |
+
msgid "list all ads by their responsive settings"
|
819 |
+
msgstr ""
|
820 |
+
|
821 |
+
#: ../admin/includes/class-overview-widgets.php:203
|
822 |
+
msgid "Get the Responsive add-on"
|
823 |
+
msgstr ""
|
824 |
+
|
825 |
+
#: ../admin/includes/class-overview-widgets.php:211 ../admin/views/ad-info-top.
|
826 |
+
#: php:30
|
827 |
+
msgid ""
|
828 |
+
"Fix ads to the browser while users are scrolling and create best performing "
|
829 |
+
"anchor ads."
|
830 |
+
msgstr ""
|
831 |
+
|
832 |
+
#: ../admin/includes/class-overview-widgets.php:212
|
833 |
+
msgid "position ads that don’t scroll with the screen"
|
834 |
+
msgstr ""
|
835 |
+
|
836 |
+
#: ../admin/includes/class-overview-widgets.php:213
|
837 |
+
msgid "build anchor ads not only on mobile devices"
|
838 |
+
msgstr ""
|
839 |
+
|
840 |
+
#: ../admin/includes/class-overview-widgets.php:215 ../admin/views/ad-info-top.
|
841 |
+
#: php:32
|
842 |
+
msgid "Get the Sticky add-on"
|
843 |
+
msgstr ""
|
844 |
+
|
845 |
+
#: ../admin/includes/class-overview-widgets.php:223 ../admin/views/ad-info-top.
|
846 |
+
#: php:37
|
847 |
+
msgid "Display content and ads in layers and popups on custom events."
|
848 |
+
msgstr ""
|
849 |
+
|
850 |
+
#: ../admin/includes/class-overview-widgets.php:224
|
851 |
+
msgid "display a popup after a user interaction like scrolling"
|
852 |
+
msgstr ""
|
853 |
+
|
854 |
+
#: ../admin/includes/class-overview-widgets.php:225
|
855 |
+
msgid "optional backgroup overlay"
|
856 |
+
msgstr ""
|
857 |
+
|
858 |
+
#: ../admin/includes/class-overview-widgets.php:226
|
859 |
+
msgid "allow users to close the popup"
|
860 |
+
msgstr ""
|
861 |
+
|
862 |
+
#: ../admin/includes/class-overview-widgets.php:228 ../admin/views/ad-info-top.
|
863 |
+
#: php:39
|
864 |
+
msgid "Get the PopUp and Layer add-on"
|
865 |
+
msgstr ""
|
866 |
+
|
867 |
+
#: ../admin/includes/class-overview-widgets.php:236
|
868 |
+
msgid "Create a beautiful and simple slider from your ads."
|
869 |
+
msgstr ""
|
870 |
+
|
871 |
+
#: ../admin/includes/class-overview-widgets.php:238
|
872 |
+
msgid "Get the Slider add-on"
|
873 |
+
msgstr ""
|
874 |
+
|
875 |
+
#: ../admin/includes/class-shortcode-creator.php:75 ../classes/widget.php:73
|
876 |
+
msgid "--empty--"
|
877 |
+
msgstr ""
|
878 |
+
|
879 |
+
#: ../admin/includes/notices.php:14
|
880 |
+
#, php-format
|
881 |
+
msgid ""
|
882 |
+
"Advanced Ads successfully installed. Take a look at the <a href=\"%s\">First "
|
883 |
+
"Steps</a>."
|
884 |
+
msgstr ""
|
885 |
+
|
886 |
+
#: ../admin/includes/notices.php:19
|
887 |
+
msgid ""
|
888 |
+
"Thank you for activating <strong>Advanced Ads</strong>. Would you like to "
|
889 |
+
"receive the first steps via email?"
|
890 |
+
msgstr ""
|
891 |
+
|
892 |
+
#: ../admin/includes/notices.php:20
|
893 |
+
msgid "Yes, send it"
|
894 |
+
msgstr ""
|
895 |
+
|
896 |
+
#: ../admin/includes/notices.php:25
|
897 |
+
msgid ""
|
898 |
+
"Thank you for using <strong>Advanced Ads</strong>. Stay informed and receive "
|
899 |
+
"<strong>2 free add-ons</strong> for joining the newsletter."
|
900 |
+
msgstr ""
|
901 |
+
|
902 |
+
#: ../admin/includes/notices.php:26
|
903 |
+
msgid "Add me now"
|
904 |
+
msgstr ""
|
905 |
+
|
906 |
+
#: ../admin/includes/notices.php:31
|
907 |
+
msgid ""
|
908 |
+
"Learn more about how and <strong>how much you can earn with AdSense</strong> "
|
909 |
+
"and Advanced Ads from my dedicated newsletter."
|
910 |
+
msgstr ""
|
911 |
+
|
912 |
+
#: ../admin/includes/notices.php:52
|
913 |
+
msgid ""
|
914 |
+
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
915 |
+
"missing</strong>."
|
916 |
+
msgstr ""
|
917 |
+
|
918 |
+
#: ../admin/includes/notices.php:52
|
919 |
+
#, php-format
|
920 |
+
msgid "Please add valid license keys <a href=\"%s\">here</a>."
|
921 |
+
msgstr ""
|
922 |
+
|
923 |
+
#: ../admin/includes/notices.php:57
|
924 |
+
#, php-format
|
925 |
+
msgid ""
|
926 |
+
"One or more licenses for your <strong>Advanced Ads add-ons are expiring "
|
927 |
+
"soon</strong>. Don’t risk to lose support and updates and renew your license "
|
928 |
+
"before it expires with a significant discount on <a href=\"%s\" "
|
929 |
+
"target=\"_blank\">the add-on page</a>."
|
930 |
+
msgstr ""
|
931 |
+
|
932 |
+
#: ../admin/includes/notices.php:62 ../admin/views/support.php:38
|
933 |
+
#, php-format
|
934 |
+
msgid ""
|
935 |
+
"<strong>Advanced Ads</strong> license(s) expired. Support and updates are "
|
936 |
+
"disabled. Please visit <a href=\"%s\"> the license page</a> for more "
|
937 |
+
"information."
|
938 |
+
msgstr ""
|
939 |
+
|
940 |
+
#: ../admin/includes/shortcode-creator-l10n.php:10
|
941 |
+
msgctxt "shortcode creator"
|
942 |
+
msgid "Add an ad"
|
943 |
+
msgstr ""
|
944 |
+
|
945 |
+
#: ../admin/includes/shortcode-creator-l10n.php:11
|
946 |
+
msgctxt "shortcode creator"
|
947 |
+
msgid "Add shortcode"
|
948 |
+
msgstr ""
|
949 |
+
|
950 |
+
#: ../admin/includes/shortcode-creator-l10n.php:12
|
951 |
+
msgctxt "shortcode creator"
|
952 |
+
msgid "Cancel"
|
953 |
+
msgstr ""
|
954 |
+
|
955 |
+
#: ../admin/views/ad-display-metabox.php:8
|
956 |
+
msgid "Choose where to display the ad and where to hide it."
|
957 |
+
msgstr ""
|
958 |
+
|
959 |
+
#: ../admin/views/ad-display-metabox.php:10
|
960 |
+
msgid "Display ad everywhere"
|
961 |
+
msgstr ""
|
962 |
+
|
963 |
+
#: ../admin/views/ad-display-metabox.php:11
|
964 |
+
msgid "Set display conditions"
|
965 |
+
msgstr ""
|
966 |
+
|
967 |
+
#: ../admin/views/ad-display-metabox.php:15
|
968 |
+
msgid "If you want to display the ad everywhere, don't do anything here. "
|
969 |
+
msgstr ""
|
970 |
+
|
971 |
+
#: ../admin/views/ad-display-metabox.php:16
|
972 |
+
msgid "The fewer conditions you enter, the better the performance will be."
|
973 |
+
msgstr ""
|
974 |
+
|
975 |
+
#: ../admin/views/ad-display-metabox.php:17
|
976 |
+
#, php-format
|
977 |
+
msgid ""
|
978 |
+
"Learn more about display conditions from the <a href=\"%s\" "
|
979 |
+
"target=\"_blank\">manual</a>."
|
980 |
+
msgstr ""
|
981 |
+
|
982 |
+
#: ../admin/views/ad-display-metabox.php:34
|
983 |
+
msgid "Other conditions"
|
984 |
+
msgstr ""
|
985 |
+
|
986 |
+
#: ../admin/views/ad-display-metabox.php:52
|
987 |
+
msgctxt "button label"
|
988 |
+
msgid "on"
|
989 |
+
msgstr ""
|
990 |
+
|
991 |
+
#: ../admin/views/ad-display-metabox.php:56
|
992 |
+
msgctxt "button label"
|
993 |
+
msgid "off"
|
994 |
+
msgstr ""
|
995 |
+
|
996 |
+
#: ../admin/views/ad-display-metabox.php:71
|
997 |
+
msgid "show debug output"
|
998 |
+
msgstr ""
|
999 |
+
|
1000 |
+
#: ../admin/views/ad-display-metabox.php:72
|
1001 |
+
msgid "Values saved for this ad in the database (post metas)"
|
1002 |
+
msgstr ""
|
1003 |
+
|
1004 |
+
#: ../admin/views/ad-group-edit.php:14
|
1005 |
+
msgid "You did not select an item for editing."
|
1006 |
+
msgstr ""
|
1007 |
+
|
1008 |
+
#: ../admin/views/ad-group-edit.php:33
|
1009 |
+
msgctxt "Taxonomy Name"
|
1010 |
+
msgid "Name"
|
1011 |
+
msgstr ""
|
1012 |
+
|
1013 |
+
#: ../admin/views/ad-group-edit.php:38
|
1014 |
+
msgctxt "Taxonomy Slug"
|
1015 |
+
msgid "Slug"
|
1016 |
+
msgstr ""
|
1017 |
+
|
1018 |
+
#: ../admin/views/ad-group-edit.php:40
|
1019 |
+
msgid "An id-like string with only letters in lower case, numbers, and hyphens."
|
1020 |
+
msgstr ""
|
1021 |
+
|
1022 |
+
#: ../admin/views/ad-group-edit.php:45
|
1023 |
+
msgctxt "Taxonomy Description"
|
1024 |
+
msgid "Description"
|
1025 |
+
msgstr ""
|
1026 |
+
|
1027 |
+
#: ../admin/views/ad-group-edit.php:57
|
1028 |
+
msgid "Create new Ad Group"
|
1029 |
+
msgstr ""
|
1030 |
+
|
1031 |
+
#: ../admin/views/ad-group-edit.php:59
|
1032 |
+
msgid "Update"
|
1033 |
+
msgstr ""
|
1034 |
+
|
1035 |
+
#: ../admin/views/ad-group-list-form-row.php:3 ../admin/views/placements.php:24
|
1036 |
+
msgid "Name"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
+
#: ../admin/views/ad-group-list-form-row.php:5
|
1040 |
+
msgid "Description"
|
1041 |
+
msgstr ""
|
1042 |
+
|
1043 |
+
#: ../admin/views/ad-group-list-form-row.php:7 ../admin/views/placements.php:23 ..
|
1044 |
+
#: /modules/gadsense/admin/views/adsense-ad-parameters.php:48
|
1045 |
+
msgid "Type"
|
1046 |
+
msgstr ""
|
1047 |
+
|
1048 |
+
#: ../admin/views/ad-group-list-form-row.php:16
|
1049 |
+
msgid "Number of visible ads"
|
1050 |
+
msgstr ""
|
1051 |
+
|
1052 |
+
#: ../admin/views/ad-group-list-form-row.php:22
|
1053 |
+
msgctxt "option to display all ads in an ad groups"
|
1054 |
+
msgid "all"
|
1055 |
+
msgstr ""
|
1056 |
+
|
1057 |
+
#: ../admin/views/ad-group-list-form-row.php:25
|
1058 |
+
msgid "Number of ads that are visible at the same time"
|
1059 |
+
msgstr ""
|
1060 |
+
|
1061 |
+
#: ../admin/views/ad-group-list-form-row.php:31 ../public/class-advanced-ads.php:
|
1062 |
+
#: 564
|
1063 |
+
msgid "Ad"
|
1064 |
+
msgstr ""
|
1065 |
+
|
1066 |
+
#: ../admin/views/ad-group-list-form-row.php:32
|
1067 |
+
msgid "weight"
|
1068 |
+
msgstr ""
|
1069 |
+
|
1070 |
+
#: ../admin/views/ad-group-list-header.php:3
|
1071 |
+
msgid "Ad Group"
|
1072 |
+
msgstr ""
|
1073 |
+
|
1074 |
+
#: ../admin/views/ad-group-list-header.php:4
|
1075 |
+
msgid "Details"
|
1076 |
+
msgstr ""
|
1077 |
+
|
1078 |
+
#: ../admin/views/ad-group-list-row.php:8 ../admin/views/ad-group.php:63 ..
|
1079 |
+
#: /admin/views/ad-info.php:3 ../admin/views/placements.php:58
|
1080 |
+
msgid "shortcode"
|
1081 |
+
msgstr ""
|
1082 |
+
|
1083 |
+
#: ../admin/views/ad-group-list-row.php:11 ../admin/views/ad-group.php:66 ..
|
1084 |
+
#: /admin/views/placements.php:61
|
1085 |
+
msgid "template"
|
1086 |
+
msgstr ""
|
1087 |
+
|
1088 |
+
#: ../admin/views/ad-group-list-row.php:14
|
1089 |
+
#, php-format
|
1090 |
+
msgid "Learn more about using groups in the <a href=\"%s\" target=\"_blank\">manual</a>."
|
1091 |
+
msgstr ""
|
1092 |
+
|
1093 |
+
#: ../admin/views/ad-group-list-row.php:19
|
1094 |
+
#, php-format
|
1095 |
+
msgid "Type: %s"
|
1096 |
+
msgstr ""
|
1097 |
+
|
1098 |
+
#: ../admin/views/ad-group-list-row.php:20
|
1099 |
+
#, php-format
|
1100 |
+
msgid "ID: %s"
|
1101 |
+
msgstr ""
|
1102 |
+
|
1103 |
+
#: ../admin/views/ad-group.php:18
|
1104 |
+
msgid "Ad Groups successfully updated"
|
1105 |
+
msgstr ""
|
1106 |
+
|
1107 |
+
#: ../admin/views/ad-group.php:46
|
1108 |
+
#, php-format
|
1109 |
+
msgid "Search results for “%s”"
|
1110 |
+
msgstr ""
|
1111 |
+
|
1112 |
+
#: ../admin/views/ad-group.php:52
|
1113 |
+
msgid ""
|
1114 |
+
"Ad Groups are a very flexible method to bundle ads. You can use them to "
|
1115 |
+
"display random ads in the frontend or run split tests, but also just for "
|
1116 |
+
"informational purposes. Not only can an Ad Groups have multiple ads, but an "
|
1117 |
+
"ad can belong to multiple ad groups."
|
1118 |
+
msgstr ""
|
1119 |
+
|
1120 |
+
#: ../admin/views/ad-group.php:60
|
1121 |
+
msgid "How to display an Ad Group?"
|
1122 |
+
msgstr ""
|
1123 |
+
|
1124 |
+
#: ../admin/views/ad-group.php:62
|
1125 |
+
#, php-format
|
1126 |
+
msgid ""
|
1127 |
+
"Examples on how to display an ad group? Find more help and examples in the "
|
1128 |
+
"<a href=\"%s\" target=\"_blank\">manual</a>"
|
1129 |
+
msgstr ""
|
1130 |
+
|
1131 |
+
#: ../admin/views/ad-group.php:64
|
1132 |
+
msgid "To display an ad group with the ID 6 in content fields"
|
1133 |
+
msgstr ""
|
1134 |
+
|
1135 |
+
#: ../admin/views/ad-group.php:67
|
1136 |
+
msgid "To display an ad group with the ID 6 in template files"
|
1137 |
+
msgstr ""
|
1138 |
+
|
1139 |
+
#: ../admin/views/ad-group.php:87
|
1140 |
+
msgid "Update Groups"
|
1141 |
+
msgstr ""
|
1142 |
+
|
1143 |
+
#: ../admin/views/ad-info-top.php:4
|
1144 |
+
msgid "Cool, you just published an ad. What now?"
|
1145 |
+
msgstr ""
|
1146 |
+
|
1147 |
+
#: ../admin/views/ad-info-top.php:5
|
1148 |
+
msgid "Display the ad in …"
|
1149 |
+
msgstr ""
|
1150 |
+
|
1151 |
+
#: ../admin/views/ad-info-top.php:7
|
1152 |
+
msgid "… every post or page"
|
1153 |
+
msgstr ""
|
1154 |
+
|
1155 |
+
#: ../admin/views/ad-info-top.php:9
|
1156 |
+
msgid "Use placements to inject the ad automatically into posts and pages."
|
1157 |
+
msgstr ""
|
1158 |
+
|
1159 |
+
#: ../admin/views/ad-info-top.php:10
|
1160 |
+
msgid "Configure Placements"
|
1161 |
+
msgstr ""
|
1162 |
+
|
1163 |
+
#: ../admin/views/ad-info-top.php:12
|
1164 |
+
msgid "… Sidebar or Widget Area"
|
1165 |
+
msgstr ""
|
1166 |
+
|
1167 |
+
#: ../admin/views/ad-info-top.php:14
|
1168 |
+
msgid "Use the <em>Advanced Ads</em> Widget to display ads in your sidebars."
|
1169 |
+
msgstr ""
|
1170 |
+
|
1171 |
+
#: ../admin/views/ad-info-top.php:15
|
1172 |
+
msgid "Configure a Widget"
|
1173 |
+
msgstr ""
|
1174 |
+
|
1175 |
+
#: ../admin/views/ad-info-top.php:17
|
1176 |
+
msgid "… a few hand selected posts or pages"
|
1177 |
+
msgstr ""
|
1178 |
+
|
1179 |
+
#: ../admin/views/ad-info-top.php:19
|
1180 |
+
msgid ""
|
1181 |
+
"Use the shortcode below to manually place the ad in the content editor of "
|
1182 |
+
"posts and pages."
|
1183 |
+
msgstr ""
|
1184 |
+
|
1185 |
+
#: ../admin/views/ad-info-top.php:22
|
1186 |
+
msgid "… in a custom position in your theme"
|
1187 |
+
msgstr ""
|
1188 |
+
|
1189 |
+
#: ../admin/views/ad-info-top.php:24
|
1190 |
+
msgid ""
|
1191 |
+
"Use the function below to manually place the ad into your template files. "
|
1192 |
+
"This method is needed for more advanced placements like in the header of "
|
1193 |
+
"your theme."
|
1194 |
+
msgstr ""
|
1195 |
+
|
1196 |
+
#: ../admin/views/ad-info-top.php:27
|
1197 |
+
msgid "… in an anchor ad or pop-up"
|
1198 |
+
msgstr ""
|
1199 |
+
|
1200 |
+
#: ../admin/views/ad-info-top.php:34
|
1201 |
+
msgid "You find the settings for the Sticky Ads below."
|
1202 |
+
msgstr ""
|
1203 |
+
|
1204 |
+
#: ../admin/views/ad-info-top.php:41
|
1205 |
+
msgid "You find the settings for the Layer and PopUp effects below."
|
1206 |
+
msgstr ""
|
1207 |
+
|
1208 |
+
#: ../admin/views/ad-info-top.php:46
|
1209 |
+
#, php-format
|
1210 |
+
msgid ""
|
1211 |
+
"Learn more about your choices to display an ad in the <a href=\"%s\" "
|
1212 |
+
"target=\"_blank\">manual</a>"
|
1213 |
+
msgstr ""
|
1214 |
+
|
1215 |
+
#: ../admin/views/ad-info.php:2
|
1216 |
+
#, php-format
|
1217 |
+
msgid "Ad Id: %s"
|
1218 |
+
msgstr ""
|
1219 |
+
|
1220 |
+
#: ../admin/views/ad-info.php:5
|
1221 |
+
msgid "theme function"
|
1222 |
+
msgstr ""
|
1223 |
+
|
1224 |
+
#: ../admin/views/ad-info.php:7
|
1225 |
+
#, php-format
|
1226 |
+
msgid "Find more display options in the <a href=\"%s\" target=\"_blank\">manual</a>."
|
1227 |
+
msgstr ""
|
1228 |
+
|
1229 |
+
#: ../admin/views/ad-info.php:12
|
1230 |
+
msgid "click to change"
|
1231 |
+
msgstr ""
|
1232 |
+
|
1233 |
+
#: ../admin/views/ad-info.php:16
|
1234 |
+
msgid "Add a description"
|
1235 |
+
msgstr ""
|
1236 |
+
|
1237 |
+
#: ../admin/views/ad-info.php:19
|
1238 |
+
msgid "Internal description or your own notes about this ad."
|
1239 |
+
msgstr ""
|
1240 |
+
|
1241 |
+
#: ../admin/views/ad-list-filters.php:2
|
1242 |
+
msgid "all ad types"
|
1243 |
+
msgstr ""
|
1244 |
+
|
1245 |
+
#: ../admin/views/ad-list-filters.php:5
|
1246 |
+
msgid "all ad sizes"
|
1247 |
+
msgstr ""
|
1248 |
+
|
1249 |
+
#: ../admin/views/ad-list-filters.php:8
|
1250 |
+
msgid "all ad dates"
|
1251 |
+
msgstr ""
|
1252 |
+
|
1253 |
+
#: ../admin/views/ad-list-filters.php:9
|
1254 |
+
msgid "expired"
|
1255 |
+
msgstr ""
|
1256 |
+
|
1257 |
+
#: ../admin/views/ad-list-filters.php:10
|
1258 |
+
msgid "any expiry date"
|
1259 |
+
msgstr ""
|
1260 |
+
|
1261 |
+
#: ../admin/views/ad-list-filters.php:11
|
1262 |
+
msgid "planned"
|
1263 |
+
msgstr ""
|
1264 |
+
|
1265 |
+
#: ../admin/views/ad-list-filters.php:14
|
1266 |
+
msgid "all ad groups"
|
1267 |
+
msgstr ""
|
1268 |
+
|
1269 |
+
#: ../admin/views/ad-main-metabox.php:3
|
1270 |
+
msgid "No ad types defined"
|
1271 |
+
msgstr ""
|
1272 |
+
|
1273 |
+
#: ../admin/views/ad-output-metabox.php:1
|
1274 |
+
msgid "Everything connected to the ads layout and output."
|
1275 |
+
msgstr ""
|
1276 |
+
|
1277 |
+
#: ../admin/views/ad-output-metabox.php:5
|
1278 |
+
msgid "Position"
|
1279 |
+
msgstr ""
|
1280 |
+
|
1281 |
+
#: ../admin/views/ad-output-metabox.php:6
|
1282 |
+
msgid "- default -"
|
1283 |
+
msgstr ""
|
1284 |
+
|
1285 |
+
#: ../admin/views/ad-output-metabox.php:7 ../admin/views/placements.php:51
|
1286 |
+
msgid "default"
|
1287 |
+
msgstr ""
|
1288 |
+
|
1289 |
+
#: ../admin/views/ad-output-metabox.php:8
|
1290 |
+
msgid "left"
|
1291 |
+
msgstr ""
|
1292 |
+
|
1293 |
+
#: ../admin/views/ad-output-metabox.php:11
|
1294 |
+
msgid "center"
|
1295 |
+
msgstr ""
|
1296 |
+
|
1297 |
+
#: ../admin/views/ad-output-metabox.php:14
|
1298 |
+
msgid "right"
|
1299 |
+
msgstr ""
|
1300 |
+
|
1301 |
+
#: ../admin/views/ad-output-metabox.php:19
|
1302 |
+
msgid ""
|
1303 |
+
"Check this if you don't want the following elements to float around the ad. "
|
1304 |
+
"(adds a clearfix)"
|
1305 |
+
msgstr ""
|
1306 |
+
|
1307 |
+
#: ../admin/views/ad-output-metabox.php:22
|
1308 |
+
msgid "Margin"
|
1309 |
+
msgstr ""
|
1310 |
+
|
1311 |
+
#: ../admin/views/ad-output-metabox.php:23
|
1312 |
+
msgid "top:"
|
1313 |
+
msgstr ""
|
1314 |
+
|
1315 |
+
#: ../admin/views/ad-output-metabox.php:25
|
1316 |
+
msgid "right:"
|
1317 |
+
msgstr ""
|
1318 |
+
|
1319 |
+
#: ../admin/views/ad-output-metabox.php:27
|
1320 |
+
msgid "bottom:"
|
1321 |
+
msgstr ""
|
1322 |
+
|
1323 |
+
#: ../admin/views/ad-output-metabox.php:29
|
1324 |
+
msgid "left:"
|
1325 |
+
msgstr ""
|
1326 |
+
|
1327 |
+
#: ../admin/views/ad-output-metabox.php:31
|
1328 |
+
msgid "tip: use this to add a margin around the ad"
|
1329 |
+
msgstr ""
|
1330 |
+
|
1331 |
+
#: ../admin/views/ad-output-metabox.php:33
|
1332 |
+
msgid "container id"
|
1333 |
+
msgstr ""
|
1334 |
+
|
1335 |
+
#: ../admin/views/ad-output-metabox.php:36
|
1336 |
+
msgid "Specify the id of the ad container. Leave blank for random or no id."
|
1337 |
+
msgstr ""
|
1338 |
+
|
1339 |
+
#: ../admin/views/ad-output-metabox.php:38
|
1340 |
+
msgid "container classes"
|
1341 |
+
msgstr ""
|
1342 |
+
|
1343 |
+
#: ../admin/views/ad-output-metabox.php:41
|
1344 |
+
msgid ""
|
1345 |
+
"Specify one or more classes for the container. Separate multiple classes "
|
1346 |
+
"with a space"
|
1347 |
+
msgstr ""
|
1348 |
+
|
1349 |
+
#: ../admin/views/ad-parameters-metabox.php:25 ../classes/ad_ajax_callbacks.php:54
|
1350 |
+
msgid "size:"
|
1351 |
+
msgstr ""
|
1352 |
+
|
1353 |
+
#: ../admin/views/ad-parameters-metabox.php:26 ../classes/ad_ajax_callbacks.php:55
|
1354 |
+
msgid "width"
|
1355 |
+
msgstr ""
|
1356 |
+
|
1357 |
+
#: ../admin/views/ad-parameters-metabox.php:27 ../classes/ad_ajax_callbacks.php:56
|
1358 |
+
msgid "height"
|
1359 |
+
msgstr ""
|
1360 |
+
|
1361 |
+
#: ../admin/views/ad-submitbox-meta.php:4
|
1362 |
+
msgid "Set expiry date"
|
1363 |
+
msgstr ""
|
1364 |
+
|
1365 |
+
#: ../admin/views/ad-submitbox-meta.php:10
|
1366 |
+
msgid "Month"
|
1367 |
+
msgstr ""
|
1368 |
+
|
1369 |
+
#: ../admin/views/ad-submitbox-meta.php:14
|
1370 |
+
#, php-format
|
1371 |
+
msgctxt "1: month number (01, 02, etc.), 2: month abbreviation"
|
1372 |
+
msgid "%1$s-%2$s"
|
1373 |
+
msgstr ""
|
1374 |
+
|
1375 |
+
#: ../admin/views/ad-submitbox-meta.php:19
|
1376 |
+
msgid "Day"
|
1377 |
+
msgstr ""
|
1378 |
+
|
1379 |
+
#: ../admin/views/ad-submitbox-meta.php:20
|
1380 |
+
msgid "Year"
|
1381 |
+
msgstr ""
|
1382 |
+
|
1383 |
+
#: ../admin/views/ad-submitbox-meta.php:21
|
1384 |
+
msgid "Hour"
|
1385 |
+
msgstr ""
|
1386 |
+
|
1387 |
+
#: ../admin/views/ad-submitbox-meta.php:22
|
1388 |
+
msgid "Minute"
|
1389 |
+
msgstr ""
|
1390 |
+
|
1391 |
+
#: ../admin/views/ad-submitbox-meta.php:27
|
1392 |
+
#, php-format
|
1393 |
+
msgctxt "order of expiry date fields 1: month, 2: day, 3: year, 4: hour, 5: minute"
|
1394 |
+
msgid "%1$s %2$s, %3$s @ %4$s %5$s"
|
1395 |
+
msgstr ""
|
1396 |
+
|
1397 |
+
#: ../admin/views/ad-visitor-metabox.php:4
|
1398 |
+
msgid ""
|
1399 |
+
"Display conditions that are based on the user. Use with caution on cached "
|
1400 |
+
"websites."
|
1401 |
+
msgstr ""
|
1402 |
+
|
1403 |
+
#: ../admin/views/ad-visitor-metabox.php:28
|
1404 |
+
msgid ""
|
1405 |
+
"Visitor conditions limit the number of users who can see your ad. There is "
|
1406 |
+
"no need to set visitor conditions if you want all users to see the ad."
|
1407 |
+
msgstr ""
|
1408 |
+
|
1409 |
+
#: ../admin/views/ad-visitor-metabox.php:30
|
1410 |
+
#, php-format
|
1411 |
+
msgid ""
|
1412 |
+
"Check out cache-busting in <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> "
|
1413 |
+
"if dynamic features get cached."
|
1414 |
+
msgstr ""
|
1415 |
+
|
1416 |
+
#: ../admin/views/ad-visitor-metabox.php:34
|
1417 |
+
msgid "New condition"
|
1418 |
+
msgstr ""
|
1419 |
+
|
1420 |
+
#: ../admin/views/ad-visitor-metabox.php:37
|
1421 |
+
msgctxt "visitor condition connector"
|
1422 |
+
msgid "and"
|
1423 |
+
msgstr ""
|
1424 |
+
|
1425 |
+
#: ../admin/views/ad-visitor-metabox.php:38
|
1426 |
+
msgctxt "visitor condition connector"
|
1427 |
+
msgid "or"
|
1428 |
+
msgstr ""
|
1429 |
+
|
1430 |
+
#: ../admin/views/ad-visitor-metabox.php:41
|
1431 |
+
msgid "-- choose a condition --"
|
1432 |
+
msgstr ""
|
1433 |
+
|
1434 |
+
#: ../admin/views/ad-visitor-metabox.php:46
|
1435 |
+
msgid "add"
|
1436 |
+
msgstr ""
|
1437 |
+
|
1438 |
+
#: ../admin/views/ad-visitor-metabox.php:50
|
1439 |
+
#, php-format
|
1440 |
+
msgid ""
|
1441 |
+
"Define the exact browser width for which an ad should be visible using the "
|
1442 |
+
"<a href=\"%s\" target=\"_blank\">Responsive add-on</a>."
|
1443 |
+
msgstr ""
|
1444 |
+
|
1445 |
+
#: ../admin/views/ad-visitor-metabox.php:108
|
1446 |
+
msgid ""
|
1447 |
+
"The visitor conditions below are deprecated. Please use the new version of "
|
1448 |
+
"visitor conditions to replace it."
|
1449 |
+
msgstr ""
|
1450 |
+
|
1451 |
+
#: ../admin/views/ad-visitor-metabox.php:114
|
1452 |
+
msgid "Display on all devices"
|
1453 |
+
msgstr ""
|
1454 |
+
|
1455 |
+
#: ../admin/views/ad-visitor-metabox.php:118
|
1456 |
+
msgid "only on mobile devices"
|
1457 |
+
msgstr ""
|
1458 |
+
|
1459 |
+
#: ../admin/views/ad-visitor-metabox.php:122
|
1460 |
+
msgid "not on mobile devices"
|
1461 |
+
msgstr ""
|
1462 |
+
|
1463 |
+
#: ../admin/views/debug.php:6 ../admin/views/settings.php:45
|
1464 |
+
msgid "Debug Page"
|
1465 |
+
msgstr ""
|
1466 |
+
|
1467 |
+
#: ../admin/views/debug.php:7
|
1468 |
+
msgid "Work in progress"
|
1469 |
+
msgstr ""
|
1470 |
+
|
1471 |
+
#: ../admin/views/debug.php:8
|
1472 |
+
msgid ""
|
1473 |
+
"This screen is work in progress. You can use the information if you "
|
1474 |
+
"understand them, but there is nothing to do here yet."
|
1475 |
+
msgstr ""
|
1476 |
+
|
1477 |
+
#: ../admin/views/intro.php:18
|
1478 |
+
msgid "5-Star Usability"
|
1479 |
+
msgstr ""
|
1480 |
+
|
1481 |
+
#: ../admin/views/intro.php:19
|
1482 |
+
msgid ""
|
1483 |
+
"Advanced Ads is powerful and easy to use, because it is build on WordPress "
|
1484 |
+
"standards. If you know how to publish a post then you know how to create an "
|
1485 |
+
"ad."
|
1486 |
+
msgstr ""
|
1487 |
+
|
1488 |
+
#: ../admin/views/intro.php:23
|
1489 |
+
msgid "5-Star Support"
|
1490 |
+
msgstr ""
|
1491 |
+
|
1492 |
+
#: ../admin/views/intro.php:24
|
1493 |
+
msgid ""
|
1494 |
+
"I promise you the best supported ad management plugin for WordPress. Whether "
|
1495 |
+
"a pro user or not, you can reach me easily through the support page, in the "
|
1496 |
+
"chat on the homepage or replying to a newsletter."
|
1497 |
+
msgstr ""
|
1498 |
+
|
1499 |
+
#: ../admin/views/intro.php:28
|
1500 |
+
msgid "5-Star Experience"
|
1501 |
+
msgstr ""
|
1502 |
+
|
1503 |
+
#: ../admin/views/intro.php:29
|
1504 |
+
msgid ""
|
1505 |
+
"Advanced Ads was built out of my own experience. I am personally using it to "
|
1506 |
+
"serve millions of ad impressions per month and constantly test new ways to "
|
1507 |
+
"optimize ad settings."
|
1508 |
+
msgstr ""
|
1509 |
+
|
1510 |
+
#: ../admin/views/intro.php:34
|
1511 |
+
msgid "Welcome to <strong>Advanced Ads</strong>"
|
1512 |
+
msgstr ""
|
1513 |
+
|
1514 |
+
#: ../admin/views/intro.php:36
|
1515 |
+
msgid "Let me give you an introduction into your future ad management solution."
|
1516 |
+
msgstr ""
|
1517 |
+
|
1518 |
+
#: ../admin/views/intro.php:61
|
1519 |
+
msgid "Next Steps"
|
1520 |
+
msgstr ""
|
1521 |
+
|
1522 |
+
#: ../admin/views/intro.php:64
|
1523 |
+
msgid "Subscribe to the Mailing List"
|
1524 |
+
msgstr ""
|
1525 |
+
|
1526 |
+
#: ../admin/views/intro.php:65
|
1527 |
+
msgid "Subscribe to the newsletter and instantly"
|
1528 |
+
msgstr ""
|
1529 |
+
|
1530 |
+
#: ../admin/views/intro.php:67
|
1531 |
+
msgid "get 2 free add-ons."
|
1532 |
+
msgstr ""
|
1533 |
+
|
1534 |
+
#: ../admin/views/intro.php:68
|
1535 |
+
msgid "reply to the welcome message with a question."
|
1536 |
+
msgstr ""
|
1537 |
+
|
1538 |
+
#: ../admin/views/intro.php:69
|
1539 |
+
msgid "subscribe to a dedicated group for the tutorial or AdSense tips."
|
1540 |
+
msgstr ""
|
1541 |
+
|
1542 |
+
#: ../admin/views/intro.php:79
|
1543 |
+
#, php-format
|
1544 |
+
msgid ""
|
1545 |
+
"Get started by creating an ad <a href=\"$1%s\" target=\"blank\">right now</a> or "
|
1546 |
+
"watch the <a href=\"$2%s\" target=\"blank\">tutorial video (3:29min)</a> first."
|
1547 |
+
msgstr ""
|
1548 |
+
|
1549 |
+
#: ../admin/views/intro.php:82
|
1550 |
+
msgid "Display your ad"
|
1551 |
+
msgstr ""
|
1552 |
+
|
1553 |
+
#: ../admin/views/intro.php:83
|
1554 |
+
msgid ""
|
1555 |
+
"You can display your ad using a shortcode, widget or one of the powerful "
|
1556 |
+
"placements. Placements help you to inject ads into the content or place them "
|
1557 |
+
"on your site without coding."
|
1558 |
+
msgstr ""
|
1559 |
+
|
1560 |
+
#: ../admin/views/intro.php:85
|
1561 |
+
msgid "List of all available placements"
|
1562 |
+
msgstr ""
|
1563 |
+
|
1564 |
+
#: ../admin/views/intro.php:86
|
1565 |
+
msgid "Create a placement"
|
1566 |
+
msgstr ""
|
1567 |
+
|
1568 |
+
#: ../admin/views/placements.php:8
|
1569 |
+
msgid ""
|
1570 |
+
"Couldn’t create the new placement. Please check your form field and whether "
|
1571 |
+
"the name is already in use."
|
1572 |
+
msgstr ""
|
1573 |
+
|
1574 |
+
#: ../admin/views/placements.php:10
|
1575 |
+
msgid "Placements updated"
|
1576 |
+
msgstr ""
|
1577 |
+
|
1578 |
+
#: ../admin/views/placements.php:15
|
1579 |
+
msgid ""
|
1580 |
+
"Placements are physically places in your theme and posts. You can use them "
|
1581 |
+
"if you plan to change ads and ad groups on the same place without the need "
|
1582 |
+
"to change your templates."
|
1583 |
+
msgstr ""
|
1584 |
+
|
1585 |
+
#: ../admin/views/placements.php:16
|
1586 |
+
#, php-format
|
1587 |
+
msgid "See also the manual for more information on <a href=\"%s\">placements</a>."
|
1588 |
+
msgstr ""
|
1589 |
+
|
1590 |
+
#: ../admin/views/placements.php:25
|
1591 |
+
msgid "Options"
|
1592 |
+
msgstr ""
|
1593 |
+
|
1594 |
+
#: ../admin/views/placements.php:42
|
1595 |
+
#, php-format
|
1596 |
+
msgid ""
|
1597 |
+
"Placement type \"%s\" is missing and was reset to \"default\".<br/>Please check "
|
1598 |
+
"if the responsible add-on is activated."
|
1599 |
+
msgstr ""
|
1600 |
+
|
1601 |
+
#: ../admin/views/placements.php:57
|
1602 |
+
msgid "show usage"
|
1603 |
+
msgstr ""
|
1604 |
+
|
1605 |
+
#: ../admin/views/placements.php:69
|
1606 |
+
msgid "Item"
|
1607 |
+
msgstr ""
|
1608 |
+
|
1609 |
+
#: ../admin/views/placements.php:71 ../admin/views/placements.php:175
|
1610 |
+
msgid "--not selected--"
|
1611 |
+
msgstr ""
|
1612 |
+
|
1613 |
+
#: ../admin/views/placements.php:91
|
1614 |
+
msgid "Inject"
|
1615 |
+
msgstr ""
|
1616 |
+
|
1617 |
+
#: ../admin/views/placements.php:92
|
1618 |
+
msgid "after"
|
1619 |
+
msgstr ""
|
1620 |
+
|
1621 |
+
#: ../admin/views/placements.php:92
|
1622 |
+
msgid "before"
|
1623 |
+
msgstr ""
|
1624 |
+
|
1625 |
+
#: ../admin/views/placements.php:112
|
1626 |
+
msgid "start counting from bottom"
|
1627 |
+
msgstr ""
|
1628 |
+
|
1629 |
+
#: ../admin/views/placements.php:115
|
1630 |
+
msgid "Important Notice"
|
1631 |
+
msgstr ""
|
1632 |
+
|
1633 |
+
#: ../admin/views/placements.php:115
|
1634 |
+
msgid ""
|
1635 |
+
"Your server is missing an extension. This might break the content injection."
|
1636 |
+
"<br/>Ignore this warning if everything works fine or else ask your hosting "
|
1637 |
+
"provider to enable <em>mbstring</em>."
|
1638 |
+
msgstr ""
|
1639 |
+
|
1640 |
+
#: ../admin/views/placements.php:125
|
1641 |
+
msgid "advanced options"
|
1642 |
+
msgstr ""
|
1643 |
+
|
1644 |
+
#: ../admin/views/placements.php:133
|
1645 |
+
msgctxt "checkbox to remove placement"
|
1646 |
+
msgid "delete"
|
1647 |
+
msgstr ""
|
1648 |
+
|
1649 |
+
#: ../admin/views/placements.php:139
|
1650 |
+
msgid "Save Placements"
|
1651 |
+
msgstr ""
|
1652 |
+
|
1653 |
+
#: ../admin/views/placements.php:141
|
1654 |
+
msgid "Create a new placement"
|
1655 |
+
msgstr ""
|
1656 |
+
|
1657 |
+
#: ../admin/views/placements.php:142
|
1658 |
+
msgid "New Placement"
|
1659 |
+
msgstr ""
|
1660 |
+
|
1661 |
+
#: ../admin/views/placements.php:148
|
1662 |
+
msgid "Choose a placement type"
|
1663 |
+
msgstr ""
|
1664 |
+
|
1665 |
+
#: ../admin/views/placements.php:149
|
1666 |
+
#, php-format
|
1667 |
+
msgid ""
|
1668 |
+
"Placement types define where the ad is going to be displayed. Learn more "
|
1669 |
+
"about the different types from the <a href=\"%s\">manual</a>"
|
1670 |
+
msgstr ""
|
1671 |
+
|
1672 |
+
#: ../admin/views/placements.php:166
|
1673 |
+
msgid "Please select a placement type."
|
1674 |
+
msgstr ""
|
1675 |
+
|
1676 |
+
#: ../admin/views/placements.php:168
|
1677 |
+
msgid "Choose a Name"
|
1678 |
+
msgstr ""
|
1679 |
+
|
1680 |
+
#: ../admin/views/placements.php:169
|
1681 |
+
msgid ""
|
1682 |
+
"The name of the placement is only visible to you. Tip: choose a descriptive "
|
1683 |
+
"one, e.g. <em>Below Post Headline</em>."
|
1684 |
+
msgstr ""
|
1685 |
+
|
1686 |
+
#: ../admin/views/placements.php:170
|
1687 |
+
msgid "Placement Name"
|
1688 |
+
msgstr ""
|
1689 |
+
|
1690 |
+
#: ../admin/views/placements.php:171
|
1691 |
+
msgid "Please enter a name for your placement."
|
1692 |
+
msgstr ""
|
1693 |
+
|
1694 |
+
#: ../admin/views/placements.php:172
|
1695 |
+
msgid "Choose the Ad or Group"
|
1696 |
+
msgstr ""
|
1697 |
+
|
1698 |
+
#: ../admin/views/placements.php:173
|
1699 |
+
msgid "The ad or group that should be displayed."
|
1700 |
+
msgstr ""
|
1701 |
+
|
1702 |
+
#: ../admin/views/placements.php:192
|
1703 |
+
msgid "Save New Placement"
|
1704 |
+
msgstr ""
|
1705 |
+
|
1706 |
+
#: ../admin/views/post-ad-settings-metabox.php:3
|
1707 |
+
msgid "Disable ads on this page"
|
1708 |
+
msgstr ""
|
1709 |
+
|
1710 |
+
#: ../admin/views/setting-license.php:10
|
1711 |
+
#, php-format
|
1712 |
+
msgid ""
|
1713 |
+
"Your license expired. Please visit <a href=\"%s\" target=\"_blank\">the plugin "
|
1714 |
+
"page</a> to renew it."
|
1715 |
+
msgstr ""
|
1716 |
+
|
1717 |
+
#: ../admin/views/setting-license.php:14
|
1718 |
+
msgid "License key"
|
1719 |
+
msgstr ""
|
1720 |
+
|
1721 |
+
#: ../admin/views/setting-license.php:24
|
1722 |
+
msgid "Deactivate License"
|
1723 |
+
msgstr ""
|
1724 |
+
|
1725 |
+
#: ../admin/views/setting-license.php:32
|
1726 |
+
msgid "Activate License"
|
1727 |
+
msgstr ""
|
1728 |
+
|
1729 |
+
#: ../admin/views/setting-license.php:35
|
1730 |
+
msgid "Please enter a valid license key"
|
1731 |
+
msgstr ""
|
1732 |
+
|
1733 |
+
#: ../admin/views/setting-license.php:37
|
1734 |
+
msgid "License key invalid"
|
1735 |
+
msgstr ""
|
1736 |
+
|
1737 |
+
#: ../admin/views/setting-license.php:41
|
1738 |
+
msgid "active"
|
1739 |
+
msgstr ""
|
1740 |
+
|
1741 |
+
#: ../admin/views/setting-license.php:42
|
1742 |
+
#, php-format
|
1743 |
+
msgid "(%d days left)"
|
1744 |
+
msgstr ""
|
1745 |
+
|
1746 |
+
#: ../admin/views/setting-license.php:45
|
1747 |
+
msgid ""
|
1748 |
+
"1. enter the key and save options; 2. click the activate button behind the "
|
1749 |
+
"field"
|
1750 |
+
msgstr ""
|
1751 |
+
|
1752 |
+
#: ../admin/views/settings-disable-ads.php:3
|
1753 |
+
msgid "Disable all ads in frontend"
|
1754 |
+
msgstr ""
|
1755 |
+
|
1756 |
+
#: ../admin/views/settings-disable-ads.php:4
|
1757 |
+
msgid ""
|
1758 |
+
"Use this option to disable all ads in the frontend, but still be able to use "
|
1759 |
+
"the plugin."
|
1760 |
+
msgstr ""
|
1761 |
+
|
1762 |
+
#: ../admin/views/settings-disable-ads.php:8
|
1763 |
+
msgid "Disable ads on 404 error pages"
|
1764 |
+
msgstr ""
|
1765 |
+
|
1766 |
+
#: ../admin/views/settings-disable-ads.php:12
|
1767 |
+
msgid "Disable ads on non-singular pages"
|
1768 |
+
msgstr ""
|
1769 |
+
|
1770 |
+
#: ../admin/views/settings-disable-ads.php:13
|
1771 |
+
msgid "e.g. archive pages like categories, tags, authors, front page (if a list)"
|
1772 |
+
msgstr ""
|
1773 |
+
|
1774 |
+
#: ../admin/views/settings-disable-ads.php:16
|
1775 |
+
msgid "Disable ads on secondary queries"
|
1776 |
+
msgstr ""
|
1777 |
+
|
1778 |
+
#: ../admin/views/settings-disable-ads.php:17
|
1779 |
+
msgid ""
|
1780 |
+
"Secondary queries are custom queries of posts outside the main query of a "
|
1781 |
+
"page. Try this option if you see ads injected on places where they shouldn’t "
|
1782 |
+
"appear."
|
1783 |
+
msgstr ""
|
1784 |
+
|
1785 |
+
#: ../admin/views/settings.php:35
|
1786 |
+
msgid "Save settings on this page"
|
1787 |
+
msgstr ""
|
1788 |
+
|
1789 |
+
#: ../admin/views/settings.php:46
|
1790 |
+
msgid "Welcome Page"
|
1791 |
+
msgstr ""
|
1792 |
+
|
1793 |
+
#: ../admin/views/settings.php:47
|
1794 |
+
msgid "Advanced Ads on WordPress.org"
|
1795 |
+
msgstr ""
|
1796 |
+
|
1797 |
+
#: ../admin/views/settings.php:47
|
1798 |
+
msgid "Advanced Ads on wp.org"
|
1799 |
+
msgstr ""
|
1800 |
+
|
1801 |
+
#: ../admin/views/settings.php:48
|
1802 |
+
msgid "the company behind Advanced Ads"
|
1803 |
+
msgstr ""
|
1804 |
+
|
1805 |
+
#: ../admin/views/support.php:9
|
1806 |
+
msgid "Email was successfully sent."
|
1807 |
+
msgstr ""
|
1808 |
+
|
1809 |
+
#: ../admin/views/support.php:11
|
1810 |
+
msgid "Search"
|
1811 |
+
msgstr ""
|
1812 |
+
|
1813 |
+
#: ../admin/views/support.php:12
|
1814 |
+
msgid ""
|
1815 |
+
"Use the following form to search for solutions in the manual on "
|
1816 |
+
"wpadvancedads.com"
|
1817 |
+
msgstr ""
|
1818 |
+
|
1819 |
+
#: ../admin/views/support.php:15
|
1820 |
+
msgid "search"
|
1821 |
+
msgstr ""
|
1822 |
+
|
1823 |
+
#: ../admin/views/support.php:18
|
1824 |
+
msgid "Possible Issues"
|
1825 |
+
msgstr ""
|
1826 |
+
|
1827 |
+
#: ../admin/views/support.php:19
|
1828 |
+
msgid ""
|
1829 |
+
"Please fix the red highlighted issues on this page or try to understand "
|
1830 |
+
"their consequences before contacting support."
|
1831 |
+
msgstr ""
|
1832 |
+
|
1833 |
+
#: ../admin/views/support.php:23
|
1834 |
+
#, php-format
|
1835 |
+
msgid ""
|
1836 |
+
"Your <strong>PHP version (%s) is too low</strong>. Advanced Ads is built for "
|
1837 |
+
"PHP 5.3 and higher. It might work, but updating PHP is highly recommended. "
|
1838 |
+
"Please ask your hosting provider for more information."
|
1839 |
+
msgstr ""
|
1840 |
+
|
1841 |
+
#: ../admin/views/support.php:26
|
1842 |
+
#, php-format
|
1843 |
+
msgid ""
|
1844 |
+
"Your <strong>website uses cache</strong>. Some dynamic features like ad "
|
1845 |
+
"rotation or visitor conditions might not work properly. Use the cache-"
|
1846 |
+
"busting feature of <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> to load "
|
1847 |
+
"ads dynamically."
|
1848 |
+
msgstr ""
|
1849 |
+
|
1850 |
+
#: ../admin/views/support.php:29
|
1851 |
+
msgid "There is a <strong>new WordPress version available</strong>. Please update."
|
1852 |
+
msgstr ""
|
1853 |
+
|
1854 |
+
#: ../admin/views/support.php:32
|
1855 |
+
msgid "There are <strong>plugin updates available</strong>. Please update."
|
1856 |
+
msgstr ""
|
1857 |
+
|
1858 |
+
#: ../admin/views/support.php:35
|
1859 |
+
#, php-format
|
1860 |
+
msgid ""
|
1861 |
+
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
1862 |
+
"missing</strong>. Please add valid license keys <a href=\"%s\">here</a>."
|
1863 |
+
msgstr ""
|
1864 |
+
|
1865 |
+
#: ../admin/views/support.php:41
|
1866 |
+
#, php-format
|
1867 |
+
msgid ""
|
1868 |
+
"<strong>Autoptimize plugin detected</strong>. While this plugin is great for "
|
1869 |
+
"site performance, it is known to alter code, including scripts from ad "
|
1870 |
+
"networks. <a href=\"%s\" target=\"_blank\">Advanced Ads Pro</a> has a build-in "
|
1871 |
+
"support for Autoptimize."
|
1872 |
+
msgstr ""
|
1873 |
+
|
1874 |
+
#: ../admin/views/support.php:44
|
1875 |
+
#, php-format
|
1876 |
+
msgid ""
|
1877 |
+
"Plugins that are known to cause (partial) problems: <strong>%1$s</strong>. "
|
1878 |
+
"<a href=\"%2$s\" target=\"_blank\">Learn more</a>."
|
1879 |
+
msgstr ""
|
1880 |
+
|
1881 |
+
#: ../admin/views/support.php:48
|
1882 |
+
#, php-format
|
1883 |
+
msgid ""
|
1884 |
+
"Ads are disabled for all or some pages. See \"disabled ads\" in <a "
|
1885 |
+
"href=\"%s\">settings</a>."
|
1886 |
+
msgstr ""
|
1887 |
+
|
1888 |
+
#: ../admin/views/support.php:59
|
1889 |
+
msgid "Contact"
|
1890 |
+
msgstr ""
|
1891 |
+
|
1892 |
+
#: ../admin/views/support.php:60
|
1893 |
+
#, php-format
|
1894 |
+
msgid ""
|
1895 |
+
"Please search the manual for a solution and take a look at <a href=\"%s\" "
|
1896 |
+
"target=\"_blank\">Ads not showing up?</a> before contacting me for help."
|
1897 |
+
msgstr ""
|
1898 |
+
|
1899 |
+
#: ../admin/views/support.php:65
|
1900 |
+
msgid "your email"
|
1901 |
+
msgstr ""
|
1902 |
+
|
1903 |
+
#: ../admin/views/support.php:69
|
1904 |
+
msgid "your name"
|
1905 |
+
msgstr ""
|
1906 |
+
|
1907 |
+
#: ../admin/views/support.php:73
|
1908 |
+
msgid "your message"
|
1909 |
+
msgstr ""
|
1910 |
+
|
1911 |
+
#: ../admin/views/support.php:78
|
1912 |
+
msgid "send"
|
1913 |
+
msgstr ""
|
1914 |
+
|
1915 |
+
#: ../admin/views/notices/adblock.php:3
|
1916 |
+
msgid ""
|
1917 |
+
"Please disable your <strong>AdBlocker</strong> to prevent problems with your "
|
1918 |
+
"ad setup."
|
1919 |
+
msgstr ""
|
1920 |
+
|
1921 |
+
#: ../classes/ad_placements.php:31
|
1922 |
+
msgid "Manual Placement"
|
1923 |
+
msgstr ""
|
1924 |
+
|
1925 |
+
#: ../classes/ad_placements.php:32
|
1926 |
+
msgid "Manual placement to use as function or shortcode."
|
1927 |
+
msgstr ""
|
1928 |
+
|
1929 |
+
#: ../classes/ad_placements.php:36
|
1930 |
+
msgid "Header Code"
|
1931 |
+
msgstr ""
|
1932 |
+
|
1933 |
+
#: ../classes/ad_placements.php:37
|
1934 |
+
msgid "Injected in Header (before closing </head> Tag, often not visible)."
|
1935 |
+
msgstr ""
|
1936 |
+
|
1937 |
+
#: ../classes/ad_placements.php:41
|
1938 |
+
msgid "Footer Code"
|
1939 |
+
msgstr ""
|
1940 |
+
|
1941 |
+
#: ../classes/ad_placements.php:42
|
1942 |
+
msgid "Injected in Footer (before closing </body> Tag)."
|
1943 |
+
msgstr ""
|
1944 |
+
|
1945 |
+
#: ../classes/ad_placements.php:46
|
1946 |
+
msgid "Before Content"
|
1947 |
+
msgstr ""
|
1948 |
+
|
1949 |
+
#: ../classes/ad_placements.php:47
|
1950 |
+
msgid "Injected before the post content."
|
1951 |
+
msgstr ""
|
1952 |
+
|
1953 |
+
#: ../classes/ad_placements.php:51
|
1954 |
+
msgid "After Content"
|
1955 |
+
msgstr ""
|
1956 |
+
|
1957 |
+
#: ../classes/ad_placements.php:52
|
1958 |
+
msgid "Injected after the post content."
|
1959 |
+
msgstr ""
|
1960 |
+
|
1961 |
+
#: ../classes/ad_placements.php:56
|
1962 |
+
msgid "Post Content"
|
1963 |
+
msgstr ""
|
1964 |
+
|
1965 |
+
#: ../classes/ad_placements.php:57
|
1966 |
+
msgid ""
|
1967 |
+
"Injected into the post content. You can choose the paragraph after which the "
|
1968 |
+
"ad content is displayed."
|
1969 |
+
msgstr ""
|
1970 |
+
|
1971 |
+
#: ../classes/ad_placements.php:61
|
1972 |
+
msgid "Sidebar Widget"
|
1973 |
+
msgstr ""
|
1974 |
+
|
1975 |
+
#: ../classes/ad_placements.php:62
|
1976 |
+
msgid ""
|
1977 |
+
"Create a sidebar widget with an ad. Can be placed and used like any other "
|
1978 |
+
"widget."
|
1979 |
+
msgstr ""
|
1980 |
+
|
1981 |
+
#: ../classes/ad_placements.php:204
|
1982 |
+
#, php-format
|
1983 |
+
msgid "paragraph (%s)"
|
1984 |
+
msgstr ""
|
1985 |
+
|
1986 |
+
#: ../classes/ad_placements.php:205
|
1987 |
+
#, php-format
|
1988 |
+
msgid "headline 2 (%s)"
|
1989 |
+
msgstr ""
|
1990 |
+
|
1991 |
+
#: ../classes/ad_placements.php:206
|
1992 |
+
#, php-format
|
1993 |
+
msgid "headline 3 (%s)"
|
1994 |
+
msgstr ""
|
1995 |
+
|
1996 |
+
#: ../classes/ad_placements.php:207
|
1997 |
+
#, php-format
|
1998 |
+
msgid "headline 4 (%s)"
|
1999 |
+
msgstr ""
|
2000 |
+
|
2001 |
+
#: ../classes/ad_type_content.php:35
|
2002 |
+
msgid "Rich Content"
|
2003 |
+
msgstr ""
|
2004 |
+
|
2005 |
+
#: ../classes/ad_type_content.php:36
|
2006 |
+
msgid ""
|
2007 |
+
"The full content editor from WordPress with all features like shortcodes, "
|
2008 |
+
"image upload or styling, but also simple text/html mode for scripts and code."
|
2009 |
+
msgstr ""
|
2010 |
+
|
2011 |
+
#: ../classes/ad_type_image.php:34
|
2012 |
+
msgid "Image Ad"
|
2013 |
+
msgstr ""
|
2014 |
+
|
2015 |
+
#: ../classes/ad_type_image.php:35
|
2016 |
+
msgid "Ads in various image formats."
|
2017 |
+
msgstr ""
|
2018 |
+
|
2019 |
+
#: ../classes/ad_type_image.php:55
|
2020 |
+
msgid "Insert File"
|
2021 |
+
msgstr ""
|
2022 |
+
|
2023 |
+
#: ../classes/ad_type_image.php:55
|
2024 |
+
msgid "Insert"
|
2025 |
+
msgstr ""
|
2026 |
+
|
2027 |
+
#: ../classes/ad_type_image.php:55
|
2028 |
+
msgid "select image"
|
2029 |
+
msgstr ""
|
2030 |
+
|
2031 |
+
#: ../classes/ad_type_image.php:56
|
2032 |
+
msgid "edit"
|
2033 |
+
msgstr ""
|
2034 |
+
|
2035 |
+
#: ../classes/ad_type_image.php:65
|
2036 |
+
msgid "url"
|
2037 |
+
msgstr ""
|
2038 |
+
|
2039 |
+
#: ../classes/ad_type_image.php:67
|
2040 |
+
#, php-format
|
2041 |
+
msgid ""
|
2042 |
+
"Pro: Open this url in a new window and track impressions and clicks with the "
|
2043 |
+
"<a href=\"%s\" target=\"_blank\">Tracking add-on</a>"
|
2044 |
+
msgstr ""
|
2045 |
+
|
2046 |
+
#: ../classes/ad_type_plain.php:31
|
2047 |
+
msgid "Plain Text and Code"
|
2048 |
+
msgstr ""
|
2049 |
+
|
2050 |
+
#: ../classes/ad_type_plain.php:32
|
2051 |
+
msgid ""
|
2052 |
+
"Simple text editor without any filters. You might use it to display "
|
2053 |
+
"unfiltered content, php code or javascript. Shortcodes and other WordPress "
|
2054 |
+
"content field magic does not work here."
|
2055 |
+
msgstr ""
|
2056 |
+
|
2057 |
+
#: ../classes/ad_type_plain.php:67
|
2058 |
+
msgid "Insert plain text or code into this field."
|
2059 |
+
msgstr ""
|
2060 |
+
|
2061 |
+
#: ../classes/ad_type_plain.php:70
|
2062 |
+
msgid "Execute PHP code (wrapped in <code><?php ?></code>)"
|
2063 |
+
msgstr ""
|
2064 |
+
|
2065 |
+
#: ../classes/checks.php:223
|
2066 |
+
#, php-format
|
2067 |
+
msgid ""
|
2068 |
+
"Possible conflict between jQueryUI library, used by Advanced Ads and other "
|
2069 |
+
"libraries (probably <a href=\"%s\">Twitter Bootstrap</a>). This might lead to "
|
2070 |
+
"misfortunate formats in forms, but should not damage features."
|
2071 |
+
msgstr ""
|
2072 |
+
|
2073 |
+
#: ../classes/EDD_SL_Plugin_Updater.php:177
|
2074 |
+
#, php-format
|
2075 |
+
msgid ""
|
2076 |
+
"There is a new version of %1$s available. <a target=\"_blank\" "
|
2077 |
+
"class=\"thickbox\" href=\"%2$s\">View version %3$s details</a>."
|
2078 |
+
msgstr ""
|
2079 |
+
|
2080 |
+
#: ../classes/EDD_SL_Plugin_Updater.php:184
|
2081 |
+
#, php-format
|
2082 |
+
msgid ""
|
2083 |
+
"There is a new version of %1$s available. <a target=\"_blank\" "
|
2084 |
+
"class=\"thickbox\" href=\"%2$s\">View version %3$s details</a> or <a "
|
2085 |
+
"href=\"%4$s\">update now</a>."
|
2086 |
+
msgstr ""
|
2087 |
+
|
2088 |
+
#: ../classes/EDD_SL_Plugin_Updater.php:324
|
2089 |
+
msgid "You do not have permission to install plugin updates"
|
2090 |
+
msgstr ""
|
2091 |
+
|
2092 |
+
#: ../classes/EDD_SL_Plugin_Updater.php:324
|
2093 |
+
msgid "Error"
|
2094 |
+
msgstr ""
|
2095 |
+
|
2096 |
+
#: ../classes/visitor-conditions.php:32
|
2097 |
+
msgid "mobile device"
|
2098 |
+
msgstr ""
|
2099 |
+
|
2100 |
+
#: ../classes/visitor-conditions.php:33
|
2101 |
+
msgid "Display ads only on mobile devices or hide them."
|
2102 |
+
msgstr ""
|
2103 |
+
|
2104 |
+
#: ../classes/visitor-conditions.php:38
|
2105 |
+
msgid "logged in visitor"
|
2106 |
+
msgstr ""
|
2107 |
+
|
2108 |
+
#: ../classes/visitor-conditions.php:39
|
2109 |
+
msgid "Whether the visitor has to be logged in or not in order to see the ads."
|
2110 |
+
msgstr ""
|
2111 |
+
|
2112 |
+
#: ../classes/visitor-conditions.php:72
|
2113 |
+
#, php-format
|
2114 |
+
msgid ""
|
2115 |
+
"Pro: Display ads by the available space on the device using the <a href=\"%s\" "
|
2116 |
+
"target=\"_blank\">Responsive add-on</a>"
|
2117 |
+
msgstr ""
|
2118 |
+
|
2119 |
+
#: ../classes/visitor-conditions.php:102
|
2120 |
+
msgid "is"
|
2121 |
+
msgstr ""
|
2122 |
+
|
2123 |
+
#: ../classes/visitor-conditions.php:103
|
2124 |
+
msgid "is not"
|
2125 |
+
msgstr ""
|
2126 |
+
|
2127 |
+
#: ../classes/visitor-conditions.php:135
|
2128 |
+
msgid "equal"
|
2129 |
+
msgstr ""
|
2130 |
+
|
2131 |
+
#: ../classes/visitor-conditions.php:136
|
2132 |
+
msgid "equal or higher"
|
2133 |
+
msgstr ""
|
2134 |
+
|
2135 |
+
#: ../classes/visitor-conditions.php:137
|
2136 |
+
msgid "equal or lower"
|
2137 |
+
msgstr ""
|
2138 |
+
|
2139 |
+
#: ../classes/visitor-conditions.php:169
|
2140 |
+
msgid "contains"
|
2141 |
+
msgstr ""
|
2142 |
+
|
2143 |
+
#: ../classes/visitor-conditions.php:170
|
2144 |
+
msgid "starts with"
|
2145 |
+
msgstr ""
|
2146 |
+
|
2147 |
+
#: ../classes/visitor-conditions.php:171
|
2148 |
+
msgid "ends with"
|
2149 |
+
msgstr ""
|
2150 |
+
|
2151 |
+
#: ../classes/visitor-conditions.php:172
|
2152 |
+
msgid "matches"
|
2153 |
+
msgstr ""
|
2154 |
+
|
2155 |
+
#: ../classes/visitor-conditions.php:173
|
2156 |
+
msgid "matches regex"
|
2157 |
+
msgstr ""
|
2158 |
+
|
2159 |
+
#: ../classes/visitor-conditions.php:174
|
2160 |
+
msgid "does not contain"
|
2161 |
+
msgstr ""
|
2162 |
+
|
2163 |
+
#: ../classes/visitor-conditions.php:175
|
2164 |
+
msgid "does not start with"
|
2165 |
+
msgstr ""
|
2166 |
+
|
2167 |
+
#: ../classes/visitor-conditions.php:176
|
2168 |
+
msgid "does not end with"
|
2169 |
+
msgstr ""
|
2170 |
+
|
2171 |
+
#: ../classes/visitor-conditions.php:177
|
2172 |
+
msgid "does not match"
|
2173 |
+
msgstr ""
|
2174 |
+
|
2175 |
+
#: ../classes/visitor-conditions.php:178
|
2176 |
+
msgid "does not match regex"
|
2177 |
+
msgstr ""
|
2178 |
+
|
2179 |
+
#: ../classes/widget.php:25
|
2180 |
+
msgid "Display Ads and Ad Groups."
|
2181 |
+
msgstr ""
|
2182 |
+
|
2183 |
+
#: ../classes/widget.php:67
|
2184 |
+
msgid "Title:"
|
2185 |
+
msgstr ""
|
2186 |
+
|
2187 |
+
#: ../includes/array_ad_conditions.php:38
|
2188 |
+
msgid "Post Types"
|
2189 |
+
msgstr ""
|
2190 |
+
|
2191 |
+
#: ../includes/array_ad_conditions.php:44
|
2192 |
+
msgid "Categories, Tags and Taxonomies"
|
2193 |
+
msgstr ""
|
2194 |
+
|
2195 |
+
#: ../includes/array_ad_conditions.php:45
|
2196 |
+
msgid ""
|
2197 |
+
"Choose terms from public category, tag and other taxonomies a post must "
|
2198 |
+
"belong to in order to have ads."
|
2199 |
+
msgstr ""
|
2200 |
+
|
2201 |
+
#: ../includes/array_ad_conditions.php:50
|
2202 |
+
msgid "Category Archives"
|
2203 |
+
msgstr ""
|
2204 |
+
|
2205 |
+
#: ../includes/array_ad_conditions.php:51
|
2206 |
+
msgid "comma seperated IDs of category archives"
|
2207 |
+
msgstr ""
|
2208 |
+
|
2209 |
+
#: ../includes/array_ad_conditions.php:56
|
2210 |
+
msgid "Individual Posts, Pages and Public Post Types"
|
2211 |
+
msgstr ""
|
2212 |
+
|
2213 |
+
#: ../includes/array_ad_conditions.php:62
|
2214 |
+
msgid "Home Page"
|
2215 |
+
msgstr ""
|
2216 |
+
|
2217 |
+
#: ../includes/array_ad_conditions.php:63
|
2218 |
+
msgid "show on Home page"
|
2219 |
+
msgstr ""
|
2220 |
+
|
2221 |
+
#: ../includes/array_ad_conditions.php:67
|
2222 |
+
msgid "Singular Pages"
|
2223 |
+
msgstr ""
|
2224 |
+
|
2225 |
+
#: ../includes/array_ad_conditions.php:68
|
2226 |
+
msgid "show on singular pages/posts"
|
2227 |
+
msgstr ""
|
2228 |
+
|
2229 |
+
#: ../includes/array_ad_conditions.php:72
|
2230 |
+
msgid "Archive Pages"
|
2231 |
+
msgstr ""
|
2232 |
+
|
2233 |
+
#: ../includes/array_ad_conditions.php:73
|
2234 |
+
msgid "show on any type of archive page (category, tag, author and date)"
|
2235 |
+
msgstr ""
|
2236 |
+
|
2237 |
+
#: ../includes/array_ad_conditions.php:77
|
2238 |
+
msgid "Search Results"
|
2239 |
+
msgstr ""
|
2240 |
+
|
2241 |
+
#: ../includes/array_ad_conditions.php:78
|
2242 |
+
msgid "show on search result pages"
|
2243 |
+
msgstr ""
|
2244 |
+
|
2245 |
+
#: ../includes/array_ad_conditions.php:82
|
2246 |
+
msgid "404 Page"
|
2247 |
+
msgstr ""
|
2248 |
+
|
2249 |
+
#: ../includes/array_ad_conditions.php:83
|
2250 |
+
msgid "show on 404 error page"
|
2251 |
+
msgstr ""
|
2252 |
+
|
2253 |
+
#: ../includes/array_ad_conditions.php:87
|
2254 |
+
msgid "Attachment Pages"
|
2255 |
+
msgstr ""
|
2256 |
+
|
2257 |
+
#: ../includes/array_ad_conditions.php:88
|
2258 |
+
msgid "show on attachment pages"
|
2259 |
+
msgstr ""
|
2260 |
+
|
2261 |
+
#: ../includes/array_ad_conditions.php:92
|
2262 |
+
msgid "Secondary Queries"
|
2263 |
+
msgstr ""
|
2264 |
+
|
2265 |
+
#: ../includes/array_ad_conditions.php:93
|
2266 |
+
msgid "allow ads in secondary queries"
|
2267 |
+
msgstr ""
|
2268 |
+
|
2269 |
+
#: ../modules/ad-blocker/admin/admin.php:139
|
2270 |
+
msgid "The asset folder was rebuilt successfully"
|
2271 |
+
msgstr ""
|
2272 |
+
|
2273 |
+
#: ../modules/ad-blocker/admin/admin.php:261
|
2274 |
+
msgid "Ad blocker fix"
|
2275 |
+
msgstr ""
|
2276 |
+
|
2277 |
+
#: ../modules/ad-blocker/admin/admin.php:301
|
2278 |
+
msgid "There is no writable upload folder"
|
2279 |
+
msgstr ""
|
2280 |
+
|
2281 |
+
#: ../modules/ad-blocker/admin/admin.php:324
|
2282 |
+
#, php-format
|
2283 |
+
msgid "Unable to rename \"%s\" directory"
|
2284 |
+
msgstr ""
|
2285 |
+
|
2286 |
+
#: ../modules/ad-blocker/admin/admin.php:342 ../modules/ad-blocker/admin/admin.
|
2287 |
+
#: php:356 ../modules/ad-blocker/admin/admin.php:374
|
2288 |
+
#, php-format
|
2289 |
+
msgid "Unable to copy assets to the \"%s\" directory"
|
2290 |
+
msgstr ""
|
2291 |
+
|
2292 |
+
#: ../modules/ad-blocker/admin/admin.php:406 ../modules/ad-blocker/admin/admin.
|
2293 |
+
#: php:416
|
2294 |
+
#, php-format
|
2295 |
+
msgid "We do not have direct write access to the \"%s\" directory"
|
2296 |
+
msgstr ""
|
2297 |
+
|
2298 |
+
#: ../modules/ad-blocker/admin/admin.php:425
|
2299 |
+
msgid "There are no assets to copy"
|
2300 |
+
msgstr ""
|
2301 |
+
|
2302 |
+
#: ../modules/ad-blocker/admin/admin.php:481
|
2303 |
+
#, php-format
|
2304 |
+
msgid ""
|
2305 |
+
"Unable to create \"%s\" directory. Is its parent directory writable by the "
|
2306 |
+
"server?"
|
2307 |
+
msgstr ""
|
2308 |
+
|
2309 |
+
#: ../modules/ad-blocker/admin/admin.php:493
|
2310 |
+
#, php-format
|
2311 |
+
msgid "Unable to copy files to %s"
|
2312 |
+
msgstr ""
|
2313 |
+
|
2314 |
+
#: ../modules/ad-blocker/admin/admin.php:560
|
2315 |
+
msgid ""
|
2316 |
+
"Prevents ad block software from breaking your website when blocking asset "
|
2317 |
+
"files (.js, .css)."
|
2318 |
+
msgstr ""
|
2319 |
+
|
2320 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:1
|
2321 |
+
msgid "Ad blocker file folder"
|
2322 |
+
msgstr ""
|
2323 |
+
|
2324 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:10
|
2325 |
+
msgid "Upload folder is not writable"
|
2326 |
+
msgstr ""
|
2327 |
+
|
2328 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:23
|
2329 |
+
msgid "Asset path"
|
2330 |
+
msgstr ""
|
2331 |
+
|
2332 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:27
|
2333 |
+
msgid "Asset URL"
|
2334 |
+
msgstr ""
|
2335 |
+
|
2336 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:31
|
2337 |
+
msgid "Rename asset folder"
|
2338 |
+
msgstr ""
|
2339 |
+
|
2340 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:34
|
2341 |
+
msgid "Check if you want to change the name of the assets folder"
|
2342 |
+
msgstr ""
|
2343 |
+
|
2344 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:41
|
2345 |
+
#, php-format
|
2346 |
+
msgid ""
|
2347 |
+
"Please, rebuild the asset folder. The new folder will be located in "
|
2348 |
+
"<strong>%s</strong>"
|
2349 |
+
msgstr ""
|
2350 |
+
|
2351 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:44
|
2352 |
+
msgid "Rebuild asset folder"
|
2353 |
+
msgstr ""
|
2354 |
+
|
2355 |
+
#: ../modules/gadsense/main.php:19
|
2356 |
+
msgid " at "
|
2357 |
+
msgstr ""
|
2358 |
+
|
2359 |
+
#: ../modules/gadsense/admin/admin.php:26 ../modules/gadsense/admin/views/adsense-
|
2360 |
+
#: ad-parameters.php:51
|
2361 |
+
msgid "Responsive"
|
2362 |
+
msgstr ""
|
2363 |
+
|
2364 |
+
#: ../modules/gadsense/admin/admin.php:44
|
2365 |
+
msgid "The ad details couldn't be retrieved from the ad code"
|
2366 |
+
msgstr ""
|
2367 |
+
|
2368 |
+
#: ../modules/gadsense/admin/admin.php:45
|
2369 |
+
msgid ""
|
2370 |
+
"Warning : The AdSense account from this code does not match the one set with "
|
2371 |
+
"the Advanced Ads Plugin. This ad might cause troubles when used in the front "
|
2372 |
+
"end."
|
2373 |
+
msgstr ""
|
2374 |
+
|
2375 |
+
#: ../modules/gadsense/admin/admin.php:123 ../modules/gadsense/admin/admin.php:262
|
2376 |
+
msgid "AdSense"
|
2377 |
+
msgstr ""
|
2378 |
+
|
2379 |
+
#: ../modules/gadsense/admin/admin.php:131
|
2380 |
+
msgid "AdSense ID"
|
2381 |
+
msgstr ""
|
2382 |
+
|
2383 |
+
#: ../modules/gadsense/admin/admin.php:140
|
2384 |
+
msgid "Limit to 3 ads"
|
2385 |
+
msgstr ""
|
2386 |
+
|
2387 |
+
#: ../modules/gadsense/admin/admin.php:149
|
2388 |
+
msgid "Activate Page-Level ads"
|
2389 |
+
msgstr ""
|
2390 |
+
|
2391 |
+
#: ../modules/gadsense/admin/admin.php:169
|
2392 |
+
#, php-format
|
2393 |
+
msgid ""
|
2394 |
+
"Please enter your Publisher ID in order to use AdSense on your page. See the "
|
2395 |
+
"<a href=\"%s\" target=\"_blank\">manual</a> for more information."
|
2396 |
+
msgstr ""
|
2397 |
+
|
2398 |
+
#: ../modules/gadsense/admin/admin.php:183
|
2399 |
+
msgid "Your AdSense Publisher ID <em>(pub-xxxxxxxxxxxxxx)</em>"
|
2400 |
+
msgstr ""
|
2401 |
+
|
2402 |
+
#: ../modules/gadsense/admin/admin.php:195
|
2403 |
+
#, php-format
|
2404 |
+
msgid "Limit to %d AdSense ads"
|
2405 |
+
msgstr ""
|
2406 |
+
|
2407 |
+
#: ../modules/gadsense/admin/admin.php:199
|
2408 |
+
#, php-format
|
2409 |
+
msgid ""
|
2410 |
+
"Currently, Google AdSense <a target=\"_blank\" href=\"%s\" title=\"Terms Of "
|
2411 |
+
"Service\">TOS</a> imposes a limit of %d display ads per page. You can disable "
|
2412 |
+
"this limitation at your own risks."
|
2413 |
+
msgstr ""
|
2414 |
+
|
2415 |
+
#: ../modules/gadsense/admin/admin.php:202
|
2416 |
+
msgid "Notice: Advanced Ads only considers the AdSense ad type for this limit."
|
2417 |
+
msgstr ""
|
2418 |
+
|
2419 |
+
#: ../modules/gadsense/admin/admin.php:205
|
2420 |
+
msgid ""
|
2421 |
+
"Due to technical restrictions, the limit does not work on placements with "
|
2422 |
+
"cache-busting enabled."
|
2423 |
+
msgstr ""
|
2424 |
+
|
2425 |
+
#: ../modules/gadsense/admin/admin.php:219
|
2426 |
+
msgid "Insert Page-Level ads code on all pages."
|
2427 |
+
msgstr ""
|
2428 |
+
|
2429 |
+
#: ../modules/gadsense/admin/admin.php:221
|
2430 |
+
msgid ""
|
2431 |
+
"You still need to enable Page-Level ads in your AdSense account. See <a "
|
2432 |
+
"href=\"https://support.google.com/adsense/answer/6245304\" "
|
2433 |
+
"target=\"_blank\">AdSense Help</a> (requires AdSense-login) for more "
|
2434 |
+
"information"
|
2435 |
+
msgstr ""
|
2436 |
+
|
2437 |
+
#: ../modules/gadsense/admin/admin.php:240 ../modules/gadsense/includes/class-ad-
|
2438 |
+
#: type-adsense.php:73
|
2439 |
+
msgid "The Publisher ID has an incorrect format. (must start with \"pub-\")"
|
2440 |
+
msgstr ""
|
2441 |
+
|
2442 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:23
|
2443 |
+
msgid "Copy&Paste existing ad code"
|
2444 |
+
msgstr ""
|
2445 |
+
|
2446 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:29
|
2447 |
+
msgid "Ad Slot ID"
|
2448 |
+
msgstr ""
|
2449 |
+
|
2450 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:37
|
2451 |
+
#, php-format
|
2452 |
+
msgid "Publisher ID: %s"
|
2453 |
+
msgstr ""
|
2454 |
+
|
2455 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:44
|
2456 |
+
#, php-format
|
2457 |
+
msgid "Please <a href=\"%s\" target=\"_blank\">change it here</a>."
|
2458 |
+
msgstr ""
|
2459 |
+
|
2460 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:50
|
2461 |
+
msgid "Normal"
|
2462 |
+
msgstr ""
|
2463 |
+
|
2464 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:55
|
2465 |
+
#, php-format
|
2466 |
+
msgid ""
|
2467 |
+
"Use the <a href=\"%s\" target=\"_blank\">Responsive add-on</a> in order to "
|
2468 |
+
"define the exact creative for each browser width."
|
2469 |
+
msgstr ""
|
2470 |
+
|
2471 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:60
|
2472 |
+
msgid "Resizing"
|
2473 |
+
msgstr ""
|
2474 |
+
|
2475 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:72
|
2476 |
+
msgid "Copy the ad code from your AdSense account and paste it in the area below"
|
2477 |
+
msgstr ""
|
2478 |
+
|
2479 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:75
|
2480 |
+
msgid "Get details"
|
2481 |
+
msgstr ""
|
2482 |
+
|
2483 |
+
#: ../modules/gadsense/admin/views/adsense-ad-parameters.php:76
|
2484 |
+
msgid "Close"
|
2485 |
+
msgstr ""
|
2486 |
+
|
2487 |
+
#: ../modules/gadsense/includes/class-ad-type-adsense.php:35
|
2488 |
+
msgid "AdSense ad"
|
2489 |
+
msgstr ""
|
2490 |
+
|
2491 |
+
#: ../modules/gadsense/includes/class-ad-type-adsense.php:36
|
2492 |
+
msgid "Use ads from your Google AdSense account"
|
2493 |
+
msgstr ""
|
2494 |
+
|
2495 |
+
#: ../modules/gadsense/includes/class-ad-type-adsense.php:105
|
2496 |
+
msgid "Your AdSense Publisher ID is missing."
|
2497 |
+
msgstr ""
|
2498 |
+
|
2499 |
+
#: ../modules/gadsense/includes/class-gadsense-data.php:46
|
2500 |
+
msgid "Auto"
|
2501 |
+
msgstr ""
|
2502 |
+
|
2503 |
+
#: ../public/class-advanced-ads.php:295
|
2504 |
+
msgid "Advanced Ads Error following:"
|
2505 |
+
msgstr ""
|
2506 |
+
|
2507 |
+
#: ../public/class-advanced-ads.php:298
|
2508 |
+
#, php-format
|
2509 |
+
msgid "Advanced Ads Error: %s"
|
2510 |
+
msgstr ""
|
2511 |
+
|
2512 |
+
#: ../public/class-advanced-ads.php:526
|
2513 |
+
msgctxt "ad group general name"
|
2514 |
+
msgid "Ad Groups"
|
2515 |
+
msgstr ""
|
2516 |
+
|
2517 |
+
#: ../public/class-advanced-ads.php:527
|
2518 |
+
msgctxt "ad group singular name"
|
2519 |
+
msgid "Ad Group"
|
2520 |
+
msgstr ""
|
2521 |
+
|
2522 |
+
#: ../public/class-advanced-ads.php:528
|
2523 |
+
msgid "Search Ad Groups"
|
2524 |
+
msgstr ""
|
2525 |
+
|
2526 |
+
#: ../public/class-advanced-ads.php:529
|
2527 |
+
msgid "All Ad Groups"
|
2528 |
+
msgstr ""
|
2529 |
+
|
2530 |
+
#: ../public/class-advanced-ads.php:530
|
2531 |
+
msgid "Parent Ad Groups"
|
2532 |
+
msgstr ""
|
2533 |
+
|
2534 |
+
#: ../public/class-advanced-ads.php:531
|
2535 |
+
msgid "Parent Ad Groups:"
|
2536 |
+
msgstr ""
|
2537 |
+
|
2538 |
+
#: ../public/class-advanced-ads.php:532
|
2539 |
+
msgid "Edit Ad Group"
|
2540 |
+
msgstr ""
|
2541 |
+
|
2542 |
+
#: ../public/class-advanced-ads.php:533
|
2543 |
+
msgid "Update Ad Group"
|
2544 |
+
msgstr ""
|
2545 |
+
|
2546 |
+
#: ../public/class-advanced-ads.php:534
|
2547 |
+
msgid "Add New Ad Group"
|
2548 |
+
msgstr ""
|
2549 |
+
|
2550 |
+
#: ../public/class-advanced-ads.php:535
|
2551 |
+
msgid "New Ad Groups Name"
|
2552 |
+
msgstr ""
|
2553 |
+
|
2554 |
+
#: ../public/class-advanced-ads.php:537
|
2555 |
+
msgid "No Ad Group found"
|
2556 |
+
msgstr ""
|
2557 |
+
|
2558 |
+
#: ../public/class-advanced-ads.php:565 ../public/class-advanced-ads.php:569
|
2559 |
+
msgid "New Ad"
|
2560 |
+
msgstr ""
|
2561 |
+
|
2562 |
+
#: ../public/class-advanced-ads.php:566
|
2563 |
+
msgid "Add New Ad"
|
2564 |
+
msgstr ""
|
2565 |
+
|
2566 |
+
#: ../public/class-advanced-ads.php:568
|
2567 |
+
msgid "Edit Ad"
|
2568 |
+
msgstr ""
|
2569 |
+
|
2570 |
+
#: ../public/class-advanced-ads.php:570
|
2571 |
+
msgid "View"
|
2572 |
+
msgstr ""
|
2573 |
+
|
2574 |
+
#: ../public/class-advanced-ads.php:571
|
2575 |
+
msgid "View the Ad"
|
2576 |
+
msgstr ""
|
2577 |
+
|
2578 |
+
#: ../public/class-advanced-ads.php:572
|
2579 |
+
msgid "Search Ads"
|
2580 |
+
msgstr ""
|
2581 |
+
|
2582 |
+
#: ../public/class-advanced-ads.php:573
|
2583 |
+
msgid "No Ads found"
|
2584 |
+
msgstr ""
|
2585 |
+
|
2586 |
+
#: ../public/class-advanced-ads.php:574
|
2587 |
+
msgid "No Ads found in Trash"
|
2588 |
+
msgstr ""
|
2589 |
+
|
2590 |
+
#: ../public/class-advanced-ads.php:575
|
2591 |
+
msgid "Parent Ad"
|
2592 |
+
msgstr ""
|
2593 |
+
|
2594 |
+
#: ../admin/class-advanced-ads-admin.php:550
|
2595 |
+
msgid "Display Conditions"
|
2596 |
+
msgstr "Anzeigebedingungen"
|
2597 |
+
|
2598 |
+
#: ../admin/class-advanced-ads-admin.php:1004
|
2599 |
+
msgid "(display to all)"
|
2600 |
+
msgstr "(für alle anzeigen)"
|
2601 |
+
|
2602 |
+
#: ../admin/includes/class-display-condition-callbacks.php:87
|
2603 |
+
msgid "Display here"
|
2604 |
+
msgstr "Hier anzeigen"
|
languages/advanced-ads.pot
CHANGED
@@ -5,7 +5,7 @@ msgstr ""
|
|
5 |
"Project-Id-Version: Advanved Ads\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
7 |
"POT-Creation-Date: 2015-01-27 16:47+0100\n"
|
8 |
-
"POT-Revision-Date:
|
9 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
10 |
"Last-Translator: Thomas Maier <post@webzunft.de>\n"
|
11 |
"Language-Team: webgilde <thomas.maier@webgilde.com>\n"
|
@@ -923,11 +923,15 @@ msgid ""
|
|
923 |
"and Advanced Ads from my dedicated newsletter."
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: ../admin/includes/notices.php:52
|
927 |
-
#, php-format
|
928 |
msgid ""
|
929 |
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
930 |
-
"missing</strong>.
|
|
|
|
|
|
|
|
|
|
|
931 |
msgstr ""
|
932 |
|
933 |
#: ../admin/includes/notices.php:57
|
@@ -1356,15 +1360,15 @@ msgid ""
|
|
1356 |
"with a space"
|
1357 |
msgstr ""
|
1358 |
|
1359 |
-
#: ../admin/views/ad-parameters-metabox.php:25 ../classes/ad_ajax_callbacks.php:
|
1360 |
msgid "size:"
|
1361 |
msgstr ""
|
1362 |
|
1363 |
-
#: ../admin/views/ad-parameters-metabox.php:26 ../classes/ad_ajax_callbacks.php:
|
1364 |
msgid "width"
|
1365 |
msgstr ""
|
1366 |
|
1367 |
-
#: ../admin/views/ad-parameters-metabox.php:27 ../classes/ad_ajax_callbacks.php:
|
1368 |
msgid "height"
|
1369 |
msgstr ""
|
1370 |
|
@@ -1470,7 +1474,7 @@ msgstr ""
|
|
1470 |
msgid "not on mobile devices"
|
1471 |
msgstr ""
|
1472 |
|
1473 |
-
#: ../admin/views/debug.php:6 ../admin/views/settings.php:
|
1474 |
msgid "Debug Page"
|
1475 |
msgstr ""
|
1476 |
|
@@ -1792,23 +1796,23 @@ msgid ""
|
|
1792 |
"appear."
|
1793 |
msgstr ""
|
1794 |
|
1795 |
-
#: ../admin/views/settings.php:
|
1796 |
msgid "Save settings on this page"
|
1797 |
msgstr ""
|
1798 |
|
1799 |
-
#: ../admin/views/settings.php:
|
1800 |
msgid "Welcome Page"
|
1801 |
msgstr ""
|
1802 |
|
1803 |
-
#: ../admin/views/settings.php:
|
1804 |
msgid "Advanced Ads on WordPress.org"
|
1805 |
msgstr ""
|
1806 |
|
1807 |
-
#: ../admin/views/settings.php:
|
1808 |
msgid "Advanced Ads on wp.org"
|
1809 |
msgstr ""
|
1810 |
|
1811 |
-
#: ../admin/views/settings.php:
|
1812 |
msgid "the company behind Advanced Ads"
|
1813 |
msgstr ""
|
1814 |
|
@@ -1836,8 +1840,8 @@ msgstr ""
|
|
1836 |
|
1837 |
#: ../admin/views/support.php:19
|
1838 |
msgid ""
|
1839 |
-
"Please fix the issues
|
1840 |
-
"contacting support."
|
1841 |
msgstr ""
|
1842 |
|
1843 |
#: ../admin/views/support.php:23
|
@@ -1865,6 +1869,13 @@ msgstr ""
|
|
1865 |
msgid "There are <strong>plugin updates available</strong>. Please update."
|
1866 |
msgstr ""
|
1867 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1868 |
#: ../admin/views/support.php:41
|
1869 |
#, php-format
|
1870 |
msgid ""
|
@@ -1888,30 +1899,30 @@ msgid ""
|
|
1888 |
"href=\"%s\">settings</a>."
|
1889 |
msgstr ""
|
1890 |
|
1891 |
-
#: ../admin/views/support.php:
|
1892 |
msgid "Contact"
|
1893 |
msgstr ""
|
1894 |
|
1895 |
-
#: ../admin/views/support.php:
|
1896 |
#, php-format
|
1897 |
msgid ""
|
1898 |
"Please search the manual for a solution and take a look at <a href=\"%s\" "
|
1899 |
"target=\"_blank\">Ads not showing up?</a> before contacting me for help."
|
1900 |
msgstr ""
|
1901 |
|
1902 |
-
#: ../admin/views/support.php:
|
1903 |
msgid "your email"
|
1904 |
msgstr ""
|
1905 |
|
1906 |
-
#: ../admin/views/support.php:
|
1907 |
msgid "your name"
|
1908 |
msgstr ""
|
1909 |
|
1910 |
-
#: ../admin/views/support.php:
|
1911 |
msgid "your message"
|
1912 |
msgstr ""
|
1913 |
|
1914 |
-
#: ../admin/views/support.php:
|
1915 |
msgid "send"
|
1916 |
msgstr ""
|
1917 |
|
@@ -2039,6 +2050,13 @@ msgstr ""
|
|
2039 |
msgid "url"
|
2040 |
msgstr ""
|
2041 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2042 |
#: ../classes/ad_type_plain.php:31
|
2043 |
msgid "Plain Text and Code"
|
2044 |
msgstr ""
|
@@ -2105,63 +2123,70 @@ msgstr ""
|
|
2105 |
msgid "Whether the visitor has to be logged in or not in order to see the ads."
|
2106 |
msgstr ""
|
2107 |
|
2108 |
-
#: ../classes/visitor-conditions.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2109 |
msgid "is"
|
2110 |
msgstr ""
|
2111 |
|
2112 |
-
#: ../classes/visitor-conditions.php:
|
2113 |
msgid "is not"
|
2114 |
msgstr ""
|
2115 |
|
2116 |
-
#: ../classes/visitor-conditions.php:
|
2117 |
msgid "equal"
|
2118 |
msgstr ""
|
2119 |
|
2120 |
-
#: ../classes/visitor-conditions.php:
|
2121 |
msgid "equal or higher"
|
2122 |
msgstr ""
|
2123 |
|
2124 |
-
#: ../classes/visitor-conditions.php:
|
2125 |
msgid "equal or lower"
|
2126 |
msgstr ""
|
2127 |
|
2128 |
-
#: ../classes/visitor-conditions.php:
|
2129 |
msgid "contains"
|
2130 |
msgstr ""
|
2131 |
|
2132 |
-
#: ../classes/visitor-conditions.php:
|
2133 |
msgid "starts with"
|
2134 |
msgstr ""
|
2135 |
|
2136 |
-
#: ../classes/visitor-conditions.php:
|
2137 |
msgid "ends with"
|
2138 |
msgstr ""
|
2139 |
|
2140 |
-
#: ../classes/visitor-conditions.php:
|
2141 |
msgid "matches"
|
2142 |
msgstr ""
|
2143 |
|
2144 |
-
#: ../classes/visitor-conditions.php:
|
2145 |
msgid "matches regex"
|
2146 |
msgstr ""
|
2147 |
|
2148 |
-
#: ../classes/visitor-conditions.php:
|
2149 |
msgid "does not contain"
|
2150 |
msgstr ""
|
2151 |
|
2152 |
-
#: ../classes/visitor-conditions.php:
|
2153 |
msgid "does not start with"
|
2154 |
msgstr ""
|
2155 |
|
2156 |
-
#: ../classes/visitor-conditions.php:
|
2157 |
msgid "does not end with"
|
2158 |
msgstr ""
|
2159 |
|
2160 |
-
#: ../classes/visitor-conditions.php:
|
2161 |
msgid "does not match"
|
2162 |
msgstr ""
|
2163 |
|
2164 |
-
#: ../classes/visitor-conditions.php:
|
2165 |
msgid "does not match regex"
|
2166 |
msgstr ""
|
2167 |
|
@@ -2255,6 +2280,92 @@ msgstr ""
|
|
2255 |
msgid "allow ads in secondary queries"
|
2256 |
msgstr ""
|
2257 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2258 |
#: ../modules/gadsense/main.php:19
|
2259 |
msgid " at "
|
2260 |
msgstr ""
|
5 |
"Project-Id-Version: Advanved Ads\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/plugins/plugin-name\n"
|
7 |
"POT-Creation-Date: 2015-01-27 16:47+0100\n"
|
8 |
+
"POT-Revision-Date: Wed Dec 16 2015 17:36:23 GMT+0100 (CET)\n"
|
9 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
10 |
"Last-Translator: Thomas Maier <post@webzunft.de>\n"
|
11 |
"Language-Team: webgilde <thomas.maier@webgilde.com>\n"
|
923 |
"and Advanced Ads from my dedicated newsletter."
|
924 |
msgstr ""
|
925 |
|
926 |
+
#: ../admin/includes/notices.php:52
|
|
|
927 |
msgid ""
|
928 |
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
929 |
+
"missing</strong>."
|
930 |
+
msgstr ""
|
931 |
+
|
932 |
+
#: ../admin/includes/notices.php:52
|
933 |
+
#, php-format
|
934 |
+
msgid "Please add valid license keys <a href=\"%s\">here</a>."
|
935 |
msgstr ""
|
936 |
|
937 |
#: ../admin/includes/notices.php:57
|
1360 |
"with a space"
|
1361 |
msgstr ""
|
1362 |
|
1363 |
+
#: ../admin/views/ad-parameters-metabox.php:25 ../classes/ad_ajax_callbacks.php:54
|
1364 |
msgid "size:"
|
1365 |
msgstr ""
|
1366 |
|
1367 |
+
#: ../admin/views/ad-parameters-metabox.php:26 ../classes/ad_ajax_callbacks.php:55
|
1368 |
msgid "width"
|
1369 |
msgstr ""
|
1370 |
|
1371 |
+
#: ../admin/views/ad-parameters-metabox.php:27 ../classes/ad_ajax_callbacks.php:56
|
1372 |
msgid "height"
|
1373 |
msgstr ""
|
1374 |
|
1474 |
msgid "not on mobile devices"
|
1475 |
msgstr ""
|
1476 |
|
1477 |
+
#: ../admin/views/debug.php:6 ../admin/views/settings.php:45
|
1478 |
msgid "Debug Page"
|
1479 |
msgstr ""
|
1480 |
|
1796 |
"appear."
|
1797 |
msgstr ""
|
1798 |
|
1799 |
+
#: ../admin/views/settings.php:35
|
1800 |
msgid "Save settings on this page"
|
1801 |
msgstr ""
|
1802 |
|
1803 |
+
#: ../admin/views/settings.php:46
|
1804 |
msgid "Welcome Page"
|
1805 |
msgstr ""
|
1806 |
|
1807 |
+
#: ../admin/views/settings.php:47
|
1808 |
msgid "Advanced Ads on WordPress.org"
|
1809 |
msgstr ""
|
1810 |
|
1811 |
+
#: ../admin/views/settings.php:47
|
1812 |
msgid "Advanced Ads on wp.org"
|
1813 |
msgstr ""
|
1814 |
|
1815 |
+
#: ../admin/views/settings.php:48
|
1816 |
msgid "the company behind Advanced Ads"
|
1817 |
msgstr ""
|
1818 |
|
1840 |
|
1841 |
#: ../admin/views/support.php:19
|
1842 |
msgid ""
|
1843 |
+
"Please fix the red highlighted issues on this page or try to understand "
|
1844 |
+
"their consequences before contacting support."
|
1845 |
msgstr ""
|
1846 |
|
1847 |
#: ../admin/views/support.php:23
|
1869 |
msgid "There are <strong>plugin updates available</strong>. Please update."
|
1870 |
msgstr ""
|
1871 |
|
1872 |
+
#: ../admin/views/support.php:35
|
1873 |
+
#, php-format
|
1874 |
+
msgid ""
|
1875 |
+
"One or more license keys for <strong>Advanced Ads add-ons are invalid or "
|
1876 |
+
"missing</strong>. Please add valid license keys <a href=\"%s\">here</a>."
|
1877 |
+
msgstr ""
|
1878 |
+
|
1879 |
#: ../admin/views/support.php:41
|
1880 |
#, php-format
|
1881 |
msgid ""
|
1899 |
"href=\"%s\">settings</a>."
|
1900 |
msgstr ""
|
1901 |
|
1902 |
+
#: ../admin/views/support.php:59
|
1903 |
msgid "Contact"
|
1904 |
msgstr ""
|
1905 |
|
1906 |
+
#: ../admin/views/support.php:60
|
1907 |
#, php-format
|
1908 |
msgid ""
|
1909 |
"Please search the manual for a solution and take a look at <a href=\"%s\" "
|
1910 |
"target=\"_blank\">Ads not showing up?</a> before contacting me for help."
|
1911 |
msgstr ""
|
1912 |
|
1913 |
+
#: ../admin/views/support.php:65
|
1914 |
msgid "your email"
|
1915 |
msgstr ""
|
1916 |
|
1917 |
+
#: ../admin/views/support.php:69
|
1918 |
msgid "your name"
|
1919 |
msgstr ""
|
1920 |
|
1921 |
+
#: ../admin/views/support.php:73
|
1922 |
msgid "your message"
|
1923 |
msgstr ""
|
1924 |
|
1925 |
+
#: ../admin/views/support.php:78
|
1926 |
msgid "send"
|
1927 |
msgstr ""
|
1928 |
|
2050 |
msgid "url"
|
2051 |
msgstr ""
|
2052 |
|
2053 |
+
#: ../classes/ad_type_image.php:67
|
2054 |
+
#, php-format
|
2055 |
+
msgid ""
|
2056 |
+
"Pro: Open this url in a new window and track impressions and clicks with the "
|
2057 |
+
"<a href=\"%s\" target=\"_blank\">Tracking add-on</a>"
|
2058 |
+
msgstr ""
|
2059 |
+
|
2060 |
#: ../classes/ad_type_plain.php:31
|
2061 |
msgid "Plain Text and Code"
|
2062 |
msgstr ""
|
2123 |
msgid "Whether the visitor has to be logged in or not in order to see the ads."
|
2124 |
msgstr ""
|
2125 |
|
2126 |
+
#: ../classes/visitor-conditions.php:72
|
2127 |
+
#, php-format
|
2128 |
+
msgid ""
|
2129 |
+
"Pro: Display ads by the available space on the device using the <a href=\"%s\" "
|
2130 |
+
"target=\"_blank\">Responsive add-on</a>"
|
2131 |
+
msgstr ""
|
2132 |
+
|
2133 |
+
#: ../classes/visitor-conditions.php:102
|
2134 |
msgid "is"
|
2135 |
msgstr ""
|
2136 |
|
2137 |
+
#: ../classes/visitor-conditions.php:103
|
2138 |
msgid "is not"
|
2139 |
msgstr ""
|
2140 |
|
2141 |
+
#: ../classes/visitor-conditions.php:135
|
2142 |
msgid "equal"
|
2143 |
msgstr ""
|
2144 |
|
2145 |
+
#: ../classes/visitor-conditions.php:136
|
2146 |
msgid "equal or higher"
|
2147 |
msgstr ""
|
2148 |
|
2149 |
+
#: ../classes/visitor-conditions.php:137
|
2150 |
msgid "equal or lower"
|
2151 |
msgstr ""
|
2152 |
|
2153 |
+
#: ../classes/visitor-conditions.php:169
|
2154 |
msgid "contains"
|
2155 |
msgstr ""
|
2156 |
|
2157 |
+
#: ../classes/visitor-conditions.php:170
|
2158 |
msgid "starts with"
|
2159 |
msgstr ""
|
2160 |
|
2161 |
+
#: ../classes/visitor-conditions.php:171
|
2162 |
msgid "ends with"
|
2163 |
msgstr ""
|
2164 |
|
2165 |
+
#: ../classes/visitor-conditions.php:172
|
2166 |
msgid "matches"
|
2167 |
msgstr ""
|
2168 |
|
2169 |
+
#: ../classes/visitor-conditions.php:173
|
2170 |
msgid "matches regex"
|
2171 |
msgstr ""
|
2172 |
|
2173 |
+
#: ../classes/visitor-conditions.php:174
|
2174 |
msgid "does not contain"
|
2175 |
msgstr ""
|
2176 |
|
2177 |
+
#: ../classes/visitor-conditions.php:175
|
2178 |
msgid "does not start with"
|
2179 |
msgstr ""
|
2180 |
|
2181 |
+
#: ../classes/visitor-conditions.php:176
|
2182 |
msgid "does not end with"
|
2183 |
msgstr ""
|
2184 |
|
2185 |
+
#: ../classes/visitor-conditions.php:177
|
2186 |
msgid "does not match"
|
2187 |
msgstr ""
|
2188 |
|
2189 |
+
#: ../classes/visitor-conditions.php:178
|
2190 |
msgid "does not match regex"
|
2191 |
msgstr ""
|
2192 |
|
2280 |
msgid "allow ads in secondary queries"
|
2281 |
msgstr ""
|
2282 |
|
2283 |
+
#: ../modules/ad-blocker/admin/admin.php:139
|
2284 |
+
msgid "The asset folder was rebuilt successfully"
|
2285 |
+
msgstr ""
|
2286 |
+
|
2287 |
+
#: ../modules/ad-blocker/admin/admin.php:261
|
2288 |
+
msgid "Ad blocker fix"
|
2289 |
+
msgstr ""
|
2290 |
+
|
2291 |
+
#: ../modules/ad-blocker/admin/admin.php:301
|
2292 |
+
msgid "There is no writable upload folder"
|
2293 |
+
msgstr ""
|
2294 |
+
|
2295 |
+
#: ../modules/ad-blocker/admin/admin.php:324
|
2296 |
+
#, php-format
|
2297 |
+
msgid "Unable to rename \"%s\" directory"
|
2298 |
+
msgstr ""
|
2299 |
+
|
2300 |
+
#: ../modules/ad-blocker/admin/admin.php:342 ../modules/ad-blocker/admin/admin.
|
2301 |
+
#: php:356 ../modules/ad-blocker/admin/admin.php:374
|
2302 |
+
#, php-format
|
2303 |
+
msgid "Unable to copy assets to the \"%s\" directory"
|
2304 |
+
msgstr ""
|
2305 |
+
|
2306 |
+
#: ../modules/ad-blocker/admin/admin.php:406 ../modules/ad-blocker/admin/admin.
|
2307 |
+
#: php:416
|
2308 |
+
#, php-format
|
2309 |
+
msgid "We do not have direct write access to the \"%s\" directory"
|
2310 |
+
msgstr ""
|
2311 |
+
|
2312 |
+
#: ../modules/ad-blocker/admin/admin.php:425
|
2313 |
+
msgid "There are no assets to copy"
|
2314 |
+
msgstr ""
|
2315 |
+
|
2316 |
+
#: ../modules/ad-blocker/admin/admin.php:481
|
2317 |
+
#, php-format
|
2318 |
+
msgid ""
|
2319 |
+
"Unable to create \"%s\" directory. Is its parent directory writable by the "
|
2320 |
+
"server?"
|
2321 |
+
msgstr ""
|
2322 |
+
|
2323 |
+
#: ../modules/ad-blocker/admin/admin.php:493
|
2324 |
+
#, php-format
|
2325 |
+
msgid "Unable to copy files to %s"
|
2326 |
+
msgstr ""
|
2327 |
+
|
2328 |
+
#: ../modules/ad-blocker/admin/admin.php:560
|
2329 |
+
msgid ""
|
2330 |
+
"Prevents ad block software from breaking your website when blocking asset "
|
2331 |
+
"files (.js, .css)."
|
2332 |
+
msgstr ""
|
2333 |
+
|
2334 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:1
|
2335 |
+
msgid "Ad blocker file folder"
|
2336 |
+
msgstr ""
|
2337 |
+
|
2338 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:10
|
2339 |
+
msgid "Upload folder is not writable"
|
2340 |
+
msgstr ""
|
2341 |
+
|
2342 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:23
|
2343 |
+
msgid "Asset path"
|
2344 |
+
msgstr ""
|
2345 |
+
|
2346 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:27
|
2347 |
+
msgid "Asset URL"
|
2348 |
+
msgstr ""
|
2349 |
+
|
2350 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:31
|
2351 |
+
msgid "Rename asset folder"
|
2352 |
+
msgstr ""
|
2353 |
+
|
2354 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:34
|
2355 |
+
msgid "Check if you want to change the name of the assets folder"
|
2356 |
+
msgstr ""
|
2357 |
+
|
2358 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:41
|
2359 |
+
#, php-format
|
2360 |
+
msgid ""
|
2361 |
+
"Please, rebuild the asset folder. The new folder will be located in "
|
2362 |
+
"<strong>%s</strong>"
|
2363 |
+
msgstr ""
|
2364 |
+
|
2365 |
+
#: ../modules/ad-blocker/admin/views/rebuild_form.php:44
|
2366 |
+
msgid "Rebuild asset folder"
|
2367 |
+
msgstr ""
|
2368 |
+
|
2369 |
#: ../modules/gadsense/main.php:19
|
2370 |
msgid " at "
|
2371 |
msgstr ""
|
modules/ad-blocker/admin/admin.php
ADDED
@@ -0,0 +1,564 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Advanced_Ads_Ad_Blocker_Admin
|
3 |
+
{
|
4 |
+
/**
|
5 |
+
* Singleton instance of the plugin
|
6 |
+
*
|
7 |
+
* @var Advanced_Ads_Ad_Blocker_Admin
|
8 |
+
*/
|
9 |
+
protected static $instance;
|
10 |
+
|
11 |
+
/**
|
12 |
+
* module options
|
13 |
+
*
|
14 |
+
* @since 1.0.0
|
15 |
+
* @var array (if loaded)
|
16 |
+
*/
|
17 |
+
protected $options;
|
18 |
+
|
19 |
+
/**
|
20 |
+
* all assets from advanced-ads plugins
|
21 |
+
*
|
22 |
+
* @since 1.0.0
|
23 |
+
* @var array (filled when searching for assets)
|
24 |
+
*/
|
25 |
+
protected $assets = array();
|
26 |
+
|
27 |
+
/**
|
28 |
+
* pattern to search assets using preg_match
|
29 |
+
*
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
// the string does not contain 'vendor/composer' or '/admin/' and ends with .css/.js/.png/.gif
|
33 |
+
protected $search_pattern = '/^(?!.*(vendor\/composer|\/admin\/)).*\.(css|js|png|gif)$/';
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Array, containing path information on the currently configured uploads directory
|
37 |
+
*
|
38 |
+
* @var array
|
39 |
+
*/
|
40 |
+
protected $upload_dir;
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Error messages for user
|
44 |
+
*
|
45 |
+
* @var WP_Error
|
46 |
+
*/
|
47 |
+
protected $error_messages;
|
48 |
+
|
49 |
+
/**
|
50 |
+
* path where the rebuild_form is located
|
51 |
+
*
|
52 |
+
* @var string
|
53 |
+
*/
|
54 |
+
private $form_url = 'admin.php?page=advanced-ads-settings#top#general';
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Initialize the module
|
58 |
+
*
|
59 |
+
* @since 1.0.0
|
60 |
+
*/
|
61 |
+
public function __construct()
|
62 |
+
{
|
63 |
+
// Get the most recent options values
|
64 |
+
$this->options = Advanced_Ads_Ad_Blocker::get_instance()->options();
|
65 |
+
|
66 |
+
$this->upload_dir = Advanced_Ads_Ad_Blocker::get_instance()->get_upload_directory();
|
67 |
+
|
68 |
+
// add module settings to Advanced Ads settings page
|
69 |
+
add_action( 'advanced-ads-settings-init', array( $this, 'settings_init' ), 9, 1 );
|
70 |
+
// add rebuild asset form
|
71 |
+
add_filter( 'advanced-ads-settings-tab-after-form', array( $this, 'add_asset_rebuild_form_wrap' ) );
|
72 |
+
|
73 |
+
add_filter( "pre_update_option_" . ADVADS_AB_SLUG, array( $this, 'sanitize_settings' ), 10, 2 );
|
74 |
+
|
75 |
+
$this->error_messages = new WP_Error();
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* Return an instance of Advanced_Ads_Ad_Blocker
|
80 |
+
*
|
81 |
+
* @since 1.0.0
|
82 |
+
* @return Advanced_Ads_Ad_Blocker_Admin
|
83 |
+
*/
|
84 |
+
public static function get_instance()
|
85 |
+
{
|
86 |
+
// If the single instance hasn't been set, set it now.
|
87 |
+
if (null === self::$instance)
|
88 |
+
{
|
89 |
+
self::$instance = new self;
|
90 |
+
}
|
91 |
+
|
92 |
+
return self::$instance;
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Render the ad-blocker rebuild assets form wrapper with rebuild assets form inside
|
97 |
+
*
|
98 |
+
* @param str $_setting_tab_id - id of the tab
|
99 |
+
*/
|
100 |
+
public function add_asset_rebuild_form_wrap( $_setting_tab_id ) {
|
101 |
+
if ( $_setting_tab_id == 'general' ) {
|
102 |
+
$advads_options = Advanced_Ads::get_instance()->options();
|
103 |
+
$use_adblocker = isset( $advads_options['use-adblocker'] );
|
104 |
+
?>
|
105 |
+
<div id="advads-adblocker-wrapper" <?php if ( ! $use_adblocker ) { echo 'style="display:none"'; } ?>>
|
106 |
+
<?php
|
107 |
+
// not ajax yet, print the form
|
108 |
+
$button_attrs = array( 'disabled' => 'disabled', 'autocomplete' => 'off' );
|
109 |
+
include ADVADS_AB_BASE_PATH . 'admin/views/rebuild_form.php';
|
110 |
+
?>
|
111 |
+
</div>
|
112 |
+
<?php
|
113 |
+
}
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* Render the ad-blocker rebuild assets form
|
118 |
+
*
|
119 |
+
*/
|
120 |
+
public function add_asset_rebuild_form() {
|
121 |
+
$success = false;
|
122 |
+
$message = '';
|
123 |
+
// we already have similar check in the ad_ajax_callback.php, but this check is necessary if JS is disabled
|
124 |
+
if ( isset( $_POST['advads_ab_form_submit'] ) ) { //new submission
|
125 |
+
if ( false === ( $output = $this->process_form( $this->form_url ) ) ) {
|
126 |
+
//we are displaying credentials form - no need for further processing
|
127 |
+
return;
|
128 |
+
} elseif ( is_wp_error( $output ) ) {
|
129 |
+
$success = false;
|
130 |
+
$message = $output->get_error_message();
|
131 |
+
} else {
|
132 |
+
$success = true;
|
133 |
+
$message = __( 'The asset folder was rebuilt successfully', 'advanced-ads' );
|
134 |
+
}
|
135 |
+
|
136 |
+
include ADVADS_AB_BASE_PATH . 'admin/views/rebuild_form.php';
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
/**
|
141 |
+
* Perform processing of the rebuild_form, sent by user
|
142 |
+
*
|
143 |
+
* @param str $form_url - URL of the page to display request form
|
144 |
+
* @return true on success, false in case of wrong credentials, WP_Error in case of error
|
145 |
+
**/
|
146 |
+
function process_form( $form_url ){
|
147 |
+
check_ajax_referer( 'advads_ab_form_nonce', 'security' );
|
148 |
+
|
149 |
+
global $wp_filesystem;
|
150 |
+
//fields that should be preserved across screens (when ftp/ssh login screen appears)
|
151 |
+
$preserved_form_fields = array( 'advads_ab_form_submit', 'advads_ab_assign_new_folder', 'security', '_wp_http_referer' );
|
152 |
+
//leave this empty to perform test for 'direct' writing
|
153 |
+
$method = '';
|
154 |
+
//target folder
|
155 |
+
$context = $this->upload_dir['basedir'];
|
156 |
+
//page url with nonce value
|
157 |
+
$form_url = wp_nonce_url( $form_url, 'advads_ab_form_nonce', 'security' );
|
158 |
+
|
159 |
+
if ( ! $this->filesystem_init( $form_url, $method, $context, $preserved_form_fields ) ) {
|
160 |
+
return false; //stop further processing when request form is displaying
|
161 |
+
}
|
162 |
+
// at this point we do not need ftp/ssh credentials anymore
|
163 |
+
$form_post_fields = array_intersect_key( $_POST, array_flip( array( 'advads_ab_assign_new_folder' ) ) );
|
164 |
+
|
165 |
+
$this->create_dummy_plugin( $form_post_fields );
|
166 |
+
|
167 |
+
if ( $error_messages = $this->error_messages->get_error_messages() ) {
|
168 |
+
foreach ( $error_messages as $error_message ) {
|
169 |
+
error_log( __METHOD__ . ': ' . $error_message );
|
170 |
+
}
|
171 |
+
|
172 |
+
return $this->error_messages; // WP_Error object
|
173 |
+
}
|
174 |
+
|
175 |
+
return true;
|
176 |
+
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* Initialize Filesystem object
|
180 |
+
*
|
181 |
+
* @param str $form_url - URL of the page to display request form
|
182 |
+
* @param str $method - connection method
|
183 |
+
* @param str $context - destination folder
|
184 |
+
* @param array $fields - fileds of $_POST array that should be preserved between screens
|
185 |
+
* @return bool - false on failure, stored text on success
|
186 |
+
*
|
187 |
+
**/
|
188 |
+
function filesystem_init( $form_url, $method, $context, $fields = null ) {
|
189 |
+
global $wp_filesystem;
|
190 |
+
|
191 |
+
// first attempt to get credentials
|
192 |
+
if ( false === ( $creds = request_filesystem_credentials( $form_url, $method, false, $context, $fields ) ) ) {
|
193 |
+
// we don't have credentials, so the request for them is displaying, no need for further processing
|
194 |
+
return false;
|
195 |
+
}
|
196 |
+
|
197 |
+
// now we got some credentials - try to use them
|
198 |
+
if ( ! WP_Filesystem( $creds ) ) {
|
199 |
+
// incorrect connection data - ask for credentials again, now with error message
|
200 |
+
request_filesystem_credentials( $form_url, $method, true, $context, $fields );
|
201 |
+
return false;
|
202 |
+
}
|
203 |
+
|
204 |
+
return true; //filesystem object successfully initiated
|
205 |
+
}
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Return a hash based on the folder name and the version of the currently activated plugins
|
209 |
+
*
|
210 |
+
* @return md5 hash
|
211 |
+
*/
|
212 |
+
public function generate_plugins_hash() {
|
213 |
+
// Check if get_plugins() function exists. This is required on the front end of the
|
214 |
+
// site, since it is in a file that is normally only loaded in the admin.
|
215 |
+
if ( ! function_exists( 'get_plugins' ) ) {
|
216 |
+
require_once ABSPATH . 'wp-admin/includes/plugin.php';
|
217 |
+
}
|
218 |
+
// Get all plugins that are installed
|
219 |
+
$all_plugins = get_plugins();
|
220 |
+
// Get all activated plugins
|
221 |
+
$active_plugins = get_option('active_plugins');
|
222 |
+
// Set up an array to hold all active Advanced Ads plugins
|
223 |
+
$active_advads_plugins = array();
|
224 |
+
|
225 |
+
// Loop through all active plugins
|
226 |
+
foreach( $active_plugins as $plugin )
|
227 |
+
{
|
228 |
+
// Check if the current plugin is an Advanced Ads plugin
|
229 |
+
if( strpos( $plugin, 'advanced-ads' ) !== false )
|
230 |
+
{
|
231 |
+
// Get the folder name of this plugin
|
232 |
+
$folder = explode( '/', $plugin );
|
233 |
+
// Make an array holding both the folder name and the version of the currently installed plugin
|
234 |
+
$temp_plugin_data = array(
|
235 |
+
'name' => $folder[0],
|
236 |
+
'version' => $all_plugins[ $plugin ]['Version']
|
237 |
+
);
|
238 |
+
// Add it to the array
|
239 |
+
$active_advads_plugins[] = $temp_plugin_data;
|
240 |
+
}
|
241 |
+
}
|
242 |
+
|
243 |
+
return md5( serialize( $active_advads_plugins ) );
|
244 |
+
}
|
245 |
+
|
246 |
+
/**
|
247 |
+
* Add settings to settings page
|
248 |
+
*
|
249 |
+
* @since 1.0.0
|
250 |
+
* @param string $hook settings page hook
|
251 |
+
*/
|
252 |
+
public function settings_init( $hook )
|
253 |
+
{
|
254 |
+
//register_setting( ADVADS_AB_SLUG, ADVADS_AB_SLUG, array( $this, 'sanitize_settings' ) );
|
255 |
+
|
256 |
+
add_settings_field(
|
257 |
+
'use-adblocker',
|
258 |
+
__( 'Ad blocker fix', 'advanced-ads' ),
|
259 |
+
array( $this, 'render_settings_use_adblocker' ),
|
260 |
+
$hook,
|
261 |
+
'advanced_ads_setting_section'
|
262 |
+
);
|
263 |
+
}
|
264 |
+
|
265 |
+
/**
|
266 |
+
* Catch the update options before it's submitted to the database
|
267 |
+
*
|
268 |
+
* @param array $new_options new values that need to be saved
|
269 |
+
* @param array $old_options old values saved in database
|
270 |
+
* @return array - options to save
|
271 |
+
*/
|
272 |
+
public function sanitize_settings( $new_options, $old_options ) {
|
273 |
+
if ( is_array( $new_options ) ) {
|
274 |
+
$this->options = array_merge( $this->options, $new_options );
|
275 |
+
// Error, disable the ad-blocker script
|
276 |
+
if ( ! isset( $new_options['active_plugins_hash'] ) ) {
|
277 |
+
unset( $this->options['active_plugins_hash'] );
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
+
return $this->options;
|
282 |
+
}
|
283 |
+
|
284 |
+
|
285 |
+
/**
|
286 |
+
* Creates dummy plugin and return new options, that need to be stored in database
|
287 |
+
*
|
288 |
+
* @param array $form_post_fields options, POST data sent by user
|
289 |
+
* @return array $new_options - options, that need to be stored in database
|
290 |
+
*/
|
291 |
+
public function create_dummy_plugin( $form_post_fields ) {
|
292 |
+
global $wp_filesystem;
|
293 |
+
|
294 |
+
$need_assign_new_name = isset( $form_post_fields['advads_ab_assign_new_folder'] );
|
295 |
+
|
296 |
+
if ( ! $this->upload_dir ) {
|
297 |
+
$message = __( 'There is no writable upload folder', 'advanced-ads' );
|
298 |
+
$this->error_messages->add( 'create_dummy_1', $message);
|
299 |
+
return false;
|
300 |
+
}
|
301 |
+
|
302 |
+
$new_options = $new_options_error = array();
|
303 |
+
// Create a new hash to check against.
|
304 |
+
// $new_options_error does not have the 'active_plugins_hash' key - ad-blocker script will be inactive and the asset folder will be rebuilt next time
|
305 |
+
$new_options['active_plugins_hash'] = $this->generate_plugins_hash();
|
306 |
+
|
307 |
+
if ( ! empty( $this->options['folder_name'] ) ) {
|
308 |
+
$new_options['folder_name'] = $new_options_error['folder_name'] = $this->options['folder_name'];
|
309 |
+
|
310 |
+
$old_folder_normalized = $this->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $this->options['folder_name'] );
|
311 |
+
|
312 |
+
if ( $wp_filesystem->exists( $old_folder_normalized ) ) {
|
313 |
+
|
314 |
+
if ( $need_assign_new_name ) {
|
315 |
+
$new_folder_name = $this->generate_unique_name( array( $new_options['folder_name'] ) );
|
316 |
+
$new_folder_normalized = $this->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $new_folder_name );
|
317 |
+
|
318 |
+
if ( ! $wp_filesystem->move( $old_folder_normalized, $new_folder_normalized ) ) {
|
319 |
+
$message = sprintf( __( 'Unable to rename "%s" directory', 'advanced-ads' ), $old_folder_normalized );
|
320 |
+
$this->error_messages->add( 'create_dummy_2', $message);
|
321 |
+
return false;
|
322 |
+
}
|
323 |
+
$new_options['folder_name'] = $new_options_error['folder_name'] = $new_folder_name;
|
324 |
+
|
325 |
+
}
|
326 |
+
|
327 |
+
$is_rebuild_needed = ! isset( $this->options['active_plugins_hash'] ) || $this->options['active_plugins_hash'] != $new_options['active_plugins_hash'];
|
328 |
+
// we have an error while the method is being executed
|
329 |
+
update_option( ADVADS_AB_SLUG, $new_options_error );
|
330 |
+
|
331 |
+
if ( $is_rebuild_needed ) {
|
332 |
+
$lookup_table = $this->copy_assets( $new_options['folder_name'], true );
|
333 |
+
if ( ! $lookup_table ) {
|
334 |
+
$message = sprintf( __( 'Unable to copy assets to the "%s" directory', 'advanced-ads' ), $new_options['folder_name'] );
|
335 |
+
$this->error_messages->add( 'create_dummy_3', $message);
|
336 |
+
return false;
|
337 |
+
}
|
338 |
+
$new_options['lookup_table'] = $lookup_table;
|
339 |
+
}
|
340 |
+
|
341 |
+
} else {
|
342 |
+
// we have an error while the method is being executed
|
343 |
+
update_option( ADVADS_AB_SLUG, $new_options_error );
|
344 |
+
// old folder does not exist, let's create it
|
345 |
+
$lookup_table = $this->copy_assets( $new_options['folder_name'] );
|
346 |
+
if ( ! $lookup_table ) {
|
347 |
+
$message = sprintf( __( 'Unable to copy assets to the "%s" directory', 'advanced-ads' ), $new_options['folder_name'] );
|
348 |
+
$this->error_messages->add( 'create_dummy_4', $message);
|
349 |
+
return false;
|
350 |
+
}
|
351 |
+
$new_options['lookup_table'] = $lookup_table;
|
352 |
+
}
|
353 |
+
} else {
|
354 |
+
// It seems this is the first time this plugin was ran, let's create everything we need in order to
|
355 |
+
// have this plugin function normally.
|
356 |
+
$new_folder_name = $this->generate_unique_name();
|
357 |
+
// Create a unique folder name
|
358 |
+
$new_options['folder_name'] = $new_options_error['folder_name'] = $new_folder_name;
|
359 |
+
// we have an error while the method is being executed
|
360 |
+
update_option( ADVADS_AB_SLUG, $new_options_error );
|
361 |
+
// Copy the assets
|
362 |
+
$lookup_table = $this->copy_assets( $new_options['folder_name'] );
|
363 |
+
if ( ! $lookup_table ) {
|
364 |
+
$message = sprintf( __( 'Unable to copy assets to the "%s" directory', 'advanced-ads' ), $new_options['folder_name'] );
|
365 |
+
$this->error_messages->add( 'create_dummy_5', $message);
|
366 |
+
return false;
|
367 |
+
}
|
368 |
+
$new_options['lookup_table'] = $lookup_table;
|
369 |
+
}
|
370 |
+
// successful result, save options and rewrite previous error options
|
371 |
+
update_option( ADVADS_AB_SLUG, $new_options);
|
372 |
+
}
|
373 |
+
|
374 |
+
/**
|
375 |
+
* Copy all assets (JS/CSS) to the magic directory
|
376 |
+
*
|
377 |
+
* @since 1.0.0
|
378 |
+
* @param string $folder_name destination folder
|
379 |
+
* @return bool/array - bool false on failure, array lookup table on success
|
380 |
+
*/
|
381 |
+
public function copy_assets( $folder_name, $rebuild = false ) {
|
382 |
+
global $wp_filesystem;
|
383 |
+
|
384 |
+
// Are we completely rebuilding the assets folder?
|
385 |
+
$normalized_asset_path = $this->normalize_path( trailingslashit( $this->upload_dir['basedir'] ) . $folder_name );
|
386 |
+
$asset_path = trailingslashit( $this->upload_dir['basedir'] ) . $folder_name ;
|
387 |
+
if ( $rebuild ) {
|
388 |
+
// Check if there is a previous asset folder
|
389 |
+
if ( $wp_filesystem->exists( $normalized_asset_path ) ) {
|
390 |
+
// Remove the old directory and its contents
|
391 |
+
if ( ! $wp_filesystem->rmdir( trailingslashit( $normalized_asset_path ), true ) ) {
|
392 |
+
$message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $normalized_asset_path );
|
393 |
+
$this->error_messages->add( 'copy_assets_1', $message);
|
394 |
+
return false;
|
395 |
+
}
|
396 |
+
}
|
397 |
+
}
|
398 |
+
|
399 |
+
if ( ! $wp_filesystem->exists( $normalized_asset_path ) ) {
|
400 |
+
if ( ! $wp_filesystem->mkdir( $normalized_asset_path ) ) {
|
401 |
+
$message = sprintf( __( 'We do not have direct write access to the "%s" directory', 'advanced-ads' ), $this->upload_dir['basedir'] );
|
402 |
+
$this->error_messages->add( 'copy_assets_2', $message);
|
403 |
+
return false;
|
404 |
+
}
|
405 |
+
}
|
406 |
+
|
407 |
+
$this->recursive_search( trailingslashit( WP_PLUGIN_DIR ) . 'advanced-ads*', $this->search_pattern );
|
408 |
+
|
409 |
+
if ( ! $this->assets ) {
|
410 |
+
$message = __( 'There are no assets to copy', 'advanced-ads' );
|
411 |
+
$this->error_messages->add( 'copy_assets_3', $message);
|
412 |
+
return false;
|
413 |
+
}
|
414 |
+
|
415 |
+
// contains associations between the original path of the asset and it path within our magic folder
|
416 |
+
// i.e: [advanced-ads-layer/admin/assets/css/admin.css] => /12/34/56/78/1347107783.css
|
417 |
+
$lookup_table = array();
|
418 |
+
/* Do not rename directories. If, for example, some library uses in file.css something like this:
|
419 |
+
'background: url(/img/image.png)', you should add 'img') to this array */
|
420 |
+
$not_rename_dirs = array( 'public', 'assets', 'js', 'css', 'fancybox' );
|
421 |
+
//do not rename this files
|
422 |
+
$not_rename_files = array( 'advanced.js', 'jquery.fancybox-1.3.4.css' );
|
423 |
+
|
424 |
+
$rand_file_names = array();
|
425 |
+
$rand_folder_names = array();
|
426 |
+
// Loop through all the found assets
|
427 |
+
foreach( $this->assets as $file ) {
|
428 |
+
if ( ! file_exists( $file ) ) {
|
429 |
+
continue;
|
430 |
+
}
|
431 |
+
|
432 |
+
$first_cleanup = str_replace( WP_PLUGIN_DIR , '', $file );
|
433 |
+
$first_cleanup_dir = dirname( $first_cleanup );
|
434 |
+
$first_cleanup_filename = basename( $first_cleanup );
|
435 |
+
$first_cleanup_file_extension = pathinfo( $first_cleanup, PATHINFO_EXTENSION );
|
436 |
+
$path_components = preg_split('/\//', $first_cleanup_dir, -1, PREG_SPLIT_NO_EMPTY);
|
437 |
+
$path_components_new = array();
|
438 |
+
|
439 |
+
foreach ( $path_components as $k => $dir ) {
|
440 |
+
if ( in_array( $dir, $not_rename_dirs ) ) {
|
441 |
+
$path_components_new[ $k ] = $dir;
|
442 |
+
} elseif ( array_key_exists( $dir, $rand_folder_names ) ) {
|
443 |
+
$path_components_new[ $k ] = $rand_folder_names[ $dir ];
|
444 |
+
} else {
|
445 |
+
$new_rand_folder_name = $this->generate_unique_name( $rand_folder_names );
|
446 |
+
$path_components_new[ $k ] = $new_rand_folder_name;
|
447 |
+
$rand_folder_names[ $dir ] = $new_rand_folder_name;
|
448 |
+
}
|
449 |
+
}
|
450 |
+
|
451 |
+
$new_dir_full = trailingslashit( $asset_path ) . trailingslashit( implode( '/', $path_components_new ) );
|
452 |
+
$new_dir = trailingslashit( implode( '/', $path_components_new ) );
|
453 |
+
if ( ! in_array( $first_cleanup_filename, $not_rename_files ) && ( $first_cleanup_file_extension == 'js' || $first_cleanup_file_extension == 'css' ) ) {
|
454 |
+
$new_filename = $this->generate_unique_name( $rand_file_names ) . '.' . $first_cleanup_file_extension;
|
455 |
+
$rand_file_names[] = $new_filename;
|
456 |
+
$new_abs_file = $new_dir_full . $new_filename;
|
457 |
+
$new_rel_file = $new_dir . $new_filename;
|
458 |
+
} else {
|
459 |
+
$new_abs_file = $new_dir_full . $first_cleanup_filename;
|
460 |
+
$new_rel_file = $new_dir . $first_cleanup_filename;
|
461 |
+
}
|
462 |
+
|
463 |
+
if ( ! file_exists( $new_dir_full ) ) {
|
464 |
+
// Create the path if it doesn't exist (prevents the copy() function from failing)
|
465 |
+
if ( ! wp_mkdir_p( $new_dir_full ) ) {
|
466 |
+
$message = sprintf( __( 'Unable to create "%s" directory. Is its parent directory writable by the server?', 'advanced-ads' ), $asset_path );
|
467 |
+
$this->error_messages->add( 'copy_assets_4', $message);
|
468 |
+
return false;
|
469 |
+
}
|
470 |
+
}
|
471 |
+
|
472 |
+
$file = $this->normalize_path( $file );
|
473 |
+
$new_abs_file = $this->normalize_path( $new_abs_file );
|
474 |
+
|
475 |
+
// Copy the file to our new magic directory
|
476 |
+
if ( ! $wp_filesystem->copy( $file, $new_abs_file, false, FS_CHMOD_FILE ) ) {
|
477 |
+
$message = sprintf( __( 'Unable to copy files to %s', 'advanced-ads' ), $normalized_asset_path );
|
478 |
+
$this->error_messages->add( 'copy_assets_5', $message);
|
479 |
+
return false;
|
480 |
+
}
|
481 |
+
|
482 |
+
$lookup_table[ $first_cleanup ] = $new_rel_file;
|
483 |
+
}
|
484 |
+
return $lookup_table;
|
485 |
+
}
|
486 |
+
|
487 |
+
/**
|
488 |
+
* This function will recursively search for files with a certain extension within a given directory
|
489 |
+
*
|
490 |
+
* @since 1.0.0
|
491 |
+
* @param string $dir The directory to search in
|
492 |
+
* @param string $pattern pattern for preg_match function
|
493 |
+
*/
|
494 |
+
public function recursive_search( $dir, $pattern )
|
495 |
+
{
|
496 |
+
$tree = glob( rtrim( $dir, '/' ) . '/*' );
|
497 |
+
if ( is_array( $tree ) )
|
498 |
+
{
|
499 |
+
foreach( $tree as $file )
|
500 |
+
{
|
501 |
+
if ( is_dir( $file ) )
|
502 |
+
{
|
503 |
+
$this->recursive_search( $file, $pattern );
|
504 |
+
}
|
505 |
+
elseif ( is_file( $file ) )
|
506 |
+
{
|
507 |
+
if ( preg_match( $pattern, $file ) )
|
508 |
+
{
|
509 |
+
$this->assets[] = $file;
|
510 |
+
}
|
511 |
+
}
|
512 |
+
}
|
513 |
+
}
|
514 |
+
}
|
515 |
+
|
516 |
+
/**
|
517 |
+
* Replaces the 'direct' absolute path with the Filesystem API path. Useful only when the 'direct' method is not used.
|
518 |
+
* Check https://codex.wordpress.org/Filesystem_API for info
|
519 |
+
*
|
520 |
+
* @param string existing path
|
521 |
+
* @return string normalized path
|
522 |
+
*/
|
523 |
+
public function normalize_path( $path ) {
|
524 |
+
global $wp_filesystem;
|
525 |
+
return str_replace( ABSPATH, $wp_filesystem->abspath(), $path );
|
526 |
+
}
|
527 |
+
|
528 |
+
/**
|
529 |
+
* Renders the settings page for this module
|
530 |
+
*
|
531 |
+
* @since 1.0.0
|
532 |
+
*/
|
533 |
+
public function render_settings(){}
|
534 |
+
|
535 |
+
/**
|
536 |
+
* render setting to enable/disable adblocker
|
537 |
+
*
|
538 |
+
*/
|
539 |
+
public function render_settings_use_adblocker() {
|
540 |
+
$advads_options = Advanced_Ads::get_instance()->options();
|
541 |
+
$checked = ( ! empty( $advads_options['use-adblocker'] ) ) ? 1 : 0;
|
542 |
+
|
543 |
+
echo '<input id="advanced-ads-use-adblocker" type="checkbox" value="1" name="' . ADVADS_SLUG . '[use-adblocker]" ' . checked( $checked, 1, false ) . '>';
|
544 |
+
echo '<p class="description">' . __( 'Prevents ad block software from breaking your website when blocking asset files (.js, .css).', 'advanced-ads' ) . '</p>';
|
545 |
+
}
|
546 |
+
|
547 |
+
/**
|
548 |
+
* Generate unique name
|
549 |
+
*
|
550 |
+
* @param array $haystack array to check, that the returned string does not exist in this array
|
551 |
+
* @return string unique name
|
552 |
+
*/
|
553 |
+
function generate_unique_name( $haystack = false ) {
|
554 |
+
if ( $haystack ) {
|
555 |
+
while ( true ) {
|
556 |
+
$needle = mt_rand( 0, 999 );
|
557 |
+
if ( ! in_array( $needle, $haystack ) ) {
|
558 |
+
return $needle;
|
559 |
+
}
|
560 |
+
}
|
561 |
+
}
|
562 |
+
return mt_rand( 0, 999 );
|
563 |
+
}
|
564 |
+
}
|
modules/ad-blocker/admin/views/rebuild_form.php
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<h3 class="title"><?php _e( 'Ad blocker file folder', 'advanced-ads' ); ?></h3>
|
2 |
+
<?php
|
3 |
+
$button_attrs = ( isset( $button_attrs ) ) ? $button_attrs : array();
|
4 |
+
|
5 |
+
if ( ! empty( $message ) && isset( $success ) ): ?>
|
6 |
+
<div class="<?php echo $success ? 'updated' : 'error'; ?> notice is-dismissible"><p><?php echo $message;?></p></div>
|
7 |
+
<?php endif;
|
8 |
+
|
9 |
+
if ( ! $this->upload_dir ): ?>
|
10 |
+
<p class="advads-error-message"><?php _e( 'Upload folder is not writable', 'advanced-ads' ); ?></p>
|
11 |
+
<?php
|
12 |
+
else: ?>
|
13 |
+
<form method="post" action="">
|
14 |
+
<input type="hidden" name="advads_ab_form_submit" value="true">
|
15 |
+
<?php wp_nonce_field( 'advads_ab_form_nonce', 'security' );
|
16 |
+
if ( ! empty( $this->options['folder_name'] ) && ! empty( $this->options['active_plugins_hash'] ) ): ?>
|
17 |
+
<table class="form-table">
|
18 |
+
<tbody>
|
19 |
+
<?php
|
20 |
+
$folder = trailingslashit( $this->upload_dir['basedir'] ) . $this->options['folder_name'];
|
21 |
+
$url = trailingslashit( $this->upload_dir['baseurl'] ) . $this->options['folder_name']; ?>
|
22 |
+
<tr>
|
23 |
+
<th scope="row"><?php _e( 'Asset path', 'advanced-ads' ); ?></th>
|
24 |
+
<td><?php echo $folder; ?></td>
|
25 |
+
</tr>
|
26 |
+
<tr>
|
27 |
+
<th scope="row"><?php _e( 'Asset URL', 'advanced-ads' ); ?></th>
|
28 |
+
<td><?php echo $url; ?></td>
|
29 |
+
</tr>
|
30 |
+
<tr>
|
31 |
+
<th scope="row"><?php _e( 'Rename asset folder', 'advanced-ads' ); ?></th>
|
32 |
+
<td>
|
33 |
+
<input type="checkbox" name="advads_ab_assign_new_folder">
|
34 |
+
<p class="description"><?php _e( 'Check if you want to change the name of the assets folder', 'advanced-ads' ); ?></p>
|
35 |
+
</td>
|
36 |
+
</tr>
|
37 |
+
</tbody>
|
38 |
+
</table>
|
39 |
+
<?php
|
40 |
+
else: ?>
|
41 |
+
<p><?php printf( __( 'Please, rebuild the asset folder. The new folder will be located in <strong>%s</strong>', 'advanced-ads' ), $this->upload_dir['basedir'] ); ?></p>
|
42 |
+
<?php
|
43 |
+
endif;
|
44 |
+
submit_button( __( 'Rebuild asset folder', 'advanced-ads' ), 'primary', 'submit', true, $button_attrs ); ?>
|
45 |
+
</form>
|
46 |
+
<?php
|
47 |
+
endif; ?>
|
modules/ad-blocker/classes/plugin.php
ADDED
@@ -0,0 +1,162 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Advanced_Ads_Ad_Blocker
|
3 |
+
{
|
4 |
+
/**
|
5 |
+
* Singleton instance of the plugin
|
6 |
+
*
|
7 |
+
* @var Advanced_Ads_Ad_Blocker
|
8 |
+
*/
|
9 |
+
protected static $instance;
|
10 |
+
|
11 |
+
/**
|
12 |
+
* module options
|
13 |
+
*
|
14 |
+
* @since 1.0.0
|
15 |
+
* @var array (if loaded)
|
16 |
+
*/
|
17 |
+
protected $options;
|
18 |
+
|
19 |
+
/**
|
20 |
+
* upload directory
|
21 |
+
*
|
22 |
+
* @var array (if loaded), false on failure
|
23 |
+
*/
|
24 |
+
protected $upload_dir;
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Initialize the module
|
28 |
+
*
|
29 |
+
* @since 1.0.0
|
30 |
+
*/
|
31 |
+
private function __construct()
|
32 |
+
{
|
33 |
+
$advads_options = Advanced_Ads::get_instance()->options();
|
34 |
+
$options = $this->options();
|
35 |
+
if ( ! empty ( $advads_options['use-adblocker'] ) &&
|
36 |
+
! empty ( $this->options['folder_name'] ) &&
|
37 |
+
! empty ( $this->options['active_plugins_hash'] ) &&
|
38 |
+
$this->get_upload_directory()
|
39 |
+
) {
|
40 |
+
add_action( 'plugins_loaded', array( $this, 'wp_plugins_loaded' ) );
|
41 |
+
}
|
42 |
+
}
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Return an instance of Advanced_Ads_Ad_Blocker
|
46 |
+
*
|
47 |
+
* @return Advanced_Ads_Ad_Blocker
|
48 |
+
* @since 1.0.0
|
49 |
+
*/
|
50 |
+
public static function get_instance()
|
51 |
+
{
|
52 |
+
// If the single instance hasn't been set, set it now.
|
53 |
+
if ( null === self::$instance )
|
54 |
+
{
|
55 |
+
self::$instance = new self;
|
56 |
+
}
|
57 |
+
|
58 |
+
return self::$instance;
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Add actions/filters/hooks and localisation after module have been loaded
|
63 |
+
*
|
64 |
+
* @since 1.0.0
|
65 |
+
*/
|
66 |
+
public function wp_plugins_loaded()
|
67 |
+
{
|
68 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'edit_script_output' ), 101 );
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* Edit the script output (URL's) for all advanced-ads plugins
|
73 |
+
*
|
74 |
+
* @since 1.0.0
|
75 |
+
*/
|
76 |
+
public function edit_script_output()
|
77 |
+
{
|
78 |
+
global $wp_scripts, $wp_styles;
|
79 |
+
|
80 |
+
// Get all plugin options
|
81 |
+
$options = $this->options();
|
82 |
+
|
83 |
+
// Check if the asset folder is set (check if this is installed yet)
|
84 |
+
if( isset( $options['folder_name'] ) && $options['folder_name'] != '' )
|
85 |
+
{
|
86 |
+
// Loop through all script files and change the URL from which they are loaded
|
87 |
+
foreach( $wp_scripts->registered as $script )
|
88 |
+
{
|
89 |
+
if( strpos( $script->src, 'advanced-ads' ) !== false )
|
90 |
+
{
|
91 |
+
$script->src = $this->clean_up_filename( $script->src );
|
92 |
+
}
|
93 |
+
}
|
94 |
+
|
95 |
+
// Loop through all style files and change the URL from which they are loaded
|
96 |
+
foreach( $wp_styles->registered as $style )
|
97 |
+
{
|
98 |
+
if( strpos( $style->src, 'advanced-ads' ) !== false )
|
99 |
+
{
|
100 |
+
$style->src = $this->clean_up_filename( $style->src );
|
101 |
+
}
|
102 |
+
}
|
103 |
+
}
|
104 |
+
}
|
105 |
+
|
106 |
+
public function clean_up_filename( $file ) {
|
107 |
+
$options = $this->options();
|
108 |
+
$upload_dir = $this->get_upload_directory();
|
109 |
+
$url = str_replace( WP_PLUGIN_URL, '', $file );
|
110 |
+
if ( isset( $options['lookup_table'][ $url ] ) ) {
|
111 |
+
return trailingslashit( $upload_dir['baseurl'] ) . trailingslashit( $options['folder_name'] ) . $options['lookup_table'][ $url ];
|
112 |
+
}
|
113 |
+
return $file;
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* Return module options
|
118 |
+
*
|
119 |
+
* @since 1.0.0
|
120 |
+
* @return array $options
|
121 |
+
*/
|
122 |
+
public function options()
|
123 |
+
{
|
124 |
+
if ( ! isset( $this->options ) ) {
|
125 |
+
if ( function_exists( 'is_multisite' ) && is_multisite() ) {
|
126 |
+
$this->options = get_blog_option( BLOG_ID_CURRENT_SITE, ADVADS_AB_SLUG, array() );
|
127 |
+
} else {
|
128 |
+
$this->options = get_option( ADVADS_AB_SLUG, array() );
|
129 |
+
}
|
130 |
+
|
131 |
+
if ( ! $this->options ) {
|
132 |
+
$this->options = array();
|
133 |
+
}
|
134 |
+
}
|
135 |
+
return $this->options;
|
136 |
+
}
|
137 |
+
|
138 |
+
/**
|
139 |
+
* Return path information on the currently configured uploads directory
|
140 |
+
*
|
141 |
+
* @return array, that have indices 'basedir' and 'baseurl', or false on failure
|
142 |
+
*/
|
143 |
+
public function get_upload_directory()
|
144 |
+
{
|
145 |
+
if ( ! isset( $this->upload_dir ) ) {
|
146 |
+
if ( function_exists( 'is_multisite' ) && is_multisite() ) {
|
147 |
+
switch_to_blog( BLOG_ID_CURRENT_SITE );
|
148 |
+
$upload_dir = wp_upload_dir();
|
149 |
+
restore_current_blog();
|
150 |
+
} else {
|
151 |
+
$upload_dir = wp_upload_dir();
|
152 |
+
}
|
153 |
+
|
154 |
+
if ( $upload_dir['error'] ) {
|
155 |
+
$this->upload_dir = false;
|
156 |
+
} else {
|
157 |
+
$this->upload_dir = $upload_dir;
|
158 |
+
}
|
159 |
+
}
|
160 |
+
return $this->upload_dir;
|
161 |
+
}
|
162 |
+
}
|
modules/ad-blocker/config.php
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
// module configuration
|
4 |
+
|
5 |
+
$path = dirname( __FILE__ );
|
6 |
+
|
7 |
+
return array(
|
8 |
+
'classmap' => array(
|
9 |
+
'Advanced_Ads_Ad_Blocker' => $path . '/classes/plugin.php',
|
10 |
+
'Advanced_Ads_Ad_Blocker_Admin' => $path . '/admin/admin.php',
|
11 |
+
),
|
12 |
+
'textdomain' => null,
|
13 |
+
);
|
modules/ad-blocker/main.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
if ( class_exists( 'Advanced_Ads', false ) ) {
|
3 |
+
|
4 |
+
// only load if not already existing (maybe included from another plugin)
|
5 |
+
if ( defined( 'ADVADS_AB_BASE_PATH' ) ) {
|
6 |
+
return ;
|
7 |
+
}
|
8 |
+
|
9 |
+
// load basic path to the plugin
|
10 |
+
define( 'ADVADS_AB_BASE_PATH', plugin_dir_path( __FILE__ ) );
|
11 |
+
// general and global slug, e.g. to store options in WP, textdomain
|
12 |
+
define( 'ADVADS_AB_SLUG', 'advanced-ads-ab-module' );
|
13 |
+
|
14 |
+
Advanced_Ads_Ad_Blocker::get_instance();
|
15 |
+
|
16 |
+
$is_ajax = defined( 'DOING_AJAX' ) && DOING_AJAX;
|
17 |
+
$is_main_blog = is_main_site( get_current_blog_id() );
|
18 |
+
|
19 |
+
if ( is_admin() && ! $is_ajax && $is_main_blog ) {
|
20 |
+
Advanced_Ads_Ad_Blocker_Admin::get_instance();
|
21 |
+
}
|
22 |
+
}
|
23 |
+
|
24 |
+
|
25 |
+
|
modules/gadsense/includes/class-ad-type-adsense.php
CHANGED
@@ -50,7 +50,7 @@ class Advanced_Ads_Ad_Type_Adsense extends Advanced_Ads_Ad_Type_Abstract {
|
|
50 |
* @since 1.4
|
51 |
*/
|
52 |
public function render_parameters($ad) {
|
53 |
-
$content = (isset($ad->content)
|
54 |
$unit_id = '';
|
55 |
$unit_code = '';
|
56 |
$unit_type = '';
|
@@ -73,8 +73,8 @@ class Advanced_Ads_Ad_Type_Adsense extends Advanced_Ads_Ad_Type_Abstract {
|
|
73 |
$pub_id_errors = __( 'The Publisher ID has an incorrect format. (must start with "pub-")', 'advanced-ads' );
|
74 |
}
|
75 |
|
76 |
-
if (
|
77 |
-
|
78 |
$json_content = stripslashes( $content );
|
79 |
|
80 |
// get json content striped by slashes
|
@@ -84,7 +84,7 @@ class Advanced_Ads_Ad_Type_Adsense extends Advanced_Ads_Ad_Type_Abstract {
|
|
84 |
$content->json = $json_content;
|
85 |
$unit_type = $content->unitType;
|
86 |
$unit_code = $content->slotId;
|
87 |
-
if ( 'responsive'
|
88 |
// Normal ad unit
|
89 |
$unit_width = $ad->width;
|
90 |
$unit_height = $ad->height;
|
50 |
* @since 1.4
|
51 |
*/
|
52 |
public function render_parameters($ad) {
|
53 |
+
$content = (string) ( isset( $ad->content ) ? $ad->content : '' );
|
54 |
$unit_id = '';
|
55 |
$unit_code = '';
|
56 |
$unit_type = '';
|
73 |
$pub_id_errors = __( 'The Publisher ID has an incorrect format. (must start with "pub-")', 'advanced-ads' );
|
74 |
}
|
75 |
|
76 |
+
if ( trim($content) !== '' ) {
|
77 |
+
|
78 |
$json_content = stripslashes( $content );
|
79 |
|
80 |
// get json content striped by slashes
|
84 |
$content->json = $json_content;
|
85 |
$unit_type = $content->unitType;
|
86 |
$unit_code = $content->slotId;
|
87 |
+
if ( 'responsive' !== $content->unitType ) {
|
88 |
// Normal ad unit
|
89 |
$unit_width = $ad->width;
|
90 |
$unit_height = $ad->height;
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link:https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id
|
|
4 |
Tags: ads, ad, adsense, display, banner, advertisements, adverts, advert, monetization
|
5 |
Requires at least: WP 4.2, PHP 5.3
|
6 |
Tested up to: 4.4
|
7 |
-
Stable tag: 1.6.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -111,6 +111,7 @@ You can also use it to add additional ad network tags into header or footer of y
|
|
111 |
= ad blocker =
|
112 |
|
113 |
* basic features to prevent ad blocks from being removed by AdBlock and co
|
|
|
114 |
|
115 |
= based on WordPress standards =
|
116 |
|
@@ -192,6 +193,17 @@ There is no revenue share. Advanced Ads doesn’t alter your ad codes in a way t
|
|
192 |
|
193 |
== Changelog ==
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
= 1.6.14 =
|
196 |
|
197 |
Please [share your ideas](https://wpadvancedads.com/advanced-ads-1-6-14/) about more capabilities.
|
4 |
Tags: ads, ad, adsense, display, banner, advertisements, adverts, advert, monetization
|
5 |
Requires at least: WP 4.2, PHP 5.3
|
6 |
Tested up to: 4.4
|
7 |
+
Stable tag: 1.6.15
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
111 |
= ad blocker =
|
112 |
|
113 |
* basic features to prevent ad blocks from being removed by AdBlock and co
|
114 |
+
* prevent ad blockers from breaking sites where plugin scripts are running
|
115 |
|
116 |
= based on WordPress standards =
|
117 |
|
193 |
|
194 |
== Changelog ==
|
195 |
|
196 |
+
= 1.6.15 =
|
197 |
+
|
198 |
+
* added overview widget for [Geo Targeting add-on](https://wpadvancedads.com/add-ons/geo-targeting/)
|
199 |
+
* added ad block disguise for plugin files
|
200 |
+
* fixed missing wrapper id
|
201 |
+
* fixed link to license page on multisites
|
202 |
+
* fixed links on intro page
|
203 |
+
* fixed rare license activation error
|
204 |
+
* fixed license issue on multisites
|
205 |
+
* under the hood: changes for ad select of ads and groups for auto cache-busting
|
206 |
+
|
207 |
= 1.6.14 =
|
208 |
|
209 |
Please [share your ideas](https://wpadvancedads.com/advanced-ads-1-6-14/) about more capabilities.
|