PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 1.7
Advanced Ads – Ad Manager & AdSense v1.7
2.0.25 2.0.24 2.0.23 2.0.22 2.0.21 1.38.0 1.39.0 1.39.1 1.39.2 1.39.3 1.39.4 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.40.0 1.40.1 1.40.2 1.41.0 1.42.0 1.42.1 1.42.2 1.43.0 1.44.0 1.44.1 1.45.0 1.45.1 1.46.0 1.47.0 1.47.1 1.47.2 1.47.3 1.47.4 1.47.5 1.48.0 1.48.1 1.49.0 1.5.0 1.5.0.1 1.5.1 1.5.2 1.5.2.1 1.5.4 1.5.4.1 1.5.5 1.50.0 1.51.0 1.51.1 1.51.2 1.51.3 1.52.0 1.52.1 1.52.2 1.52.3 1.52.4 1.53.0 1.53.1 1.53.2 1.54.0 1.54.1 1.55.0 1.56.0 1.56.1 1.56.2 1.56.3 1.56.4 1.6 1.6.1 1.6.10 1.6.10.1 1.6.10.2 1.6.11 1.6.11.1 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.17.1 1.6.17.2 1.6.2 1.6.2.1 1.6.3 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.6.1 1.6.7 1.6.7.1 1.6.8 1.6.8.1 1.6.8.2 1.6.8.3 1.6.9 1.6.9.1 1.6.9.2 1.6.9.3 1.6.9.4 1.7 1.7.0.1 1.7.0.2 1.7.0.3 1.7.1 1.7.1.1 1.7.1.2 1.7.1.3 1.7.1.4 1.7.1.5 1.7.10 trunk 1.7.11 1.0.1 1.7.12 1.0.2 1.7.13 1.0.3 1.7.14 1.1.0 1.7.15 1.1.1 1.7.16 1.1.2 1.7.17 1.1.3 1.7.18 1.10 1.7.19 1.10.1 1.7.2 1.10.10 1.7.2.1 1.10.11 1.7.20 1.10.12 1.7.21 1.10.2 1.7.22 1.10.3 1.7.23 1.10.4 1.7.24 1.10.5 1.7.25 1.10.6 1.7.3 1.10.7 1.7.4 1.10.8 1.7.4.1 1.10.9 1.7.4.2 1.11 1.7.4.3 1.11.1 1.7.4.4 1.11.2 1.7.4.5 1.12 1.7.5 1.13 1.7.5.1 1.13.1 1.7.6 1.13.2 1.7.7 1.13.3 1.7.8 1.13.4 1.7.9 1.13.5 1.7.9.1 1.13.6 1.7.9.2 1.13.7 1.7.9.3 1.13.8 1.8 1.14 1.8.1 1.14.1 1.8.10 1.14.10 1.8.11 1.14.11 1.8.12 1.14.2 1.8.13 1.14.3 1.8.14 1.14.4 1.8.15 1.14.5 1.8.16 1.14.6 1.8.17 1.14.7 1.8.18 1.14.8 1.8.19 1.14.9 1.8.2 1.15 1.8.20 1.16 1.8.21 1.16.1 1.8.22 1.17 1.8.23 1.17.1 1.8.24 1.17.10 1.8.25 1.17.10-rc.1 1.8.26 1.17.11 1.8.27 1.17.12 1.8.28 1.17.12-rc.1 1.8.29 1.17.2 1.8.3 1.17.3 1.8.30 1.17.4 1.8.4 1.17.5 1.8.5 1.17.6 1.8.6 1.17.7 1.8.7 1.17.8 1.8.8 1.17.9 1.8.9 1.17.9-beta.1 1.9 1.18.0 2.0.0 1.19.0 2.0.1 1.19.1 2.0.10 1.2 2.0.11 1.2.1 2.0.12 1.2.2 2.0.13 1.2.3 2.0.14 1.2.4 2.0.15 1.2.5 2.0.16 1.2.6 2.0.17 1.2.7 2.0.18 1.20.0 2.0.19 1.20.0-rc.1 2.0.2 1.20.0-rc.2 2.0.20 1.20.1 2.0.3 1.20.2 2.0.4 1.20.3 2.0.5 1.21.0 2.0.6 1.21.1 2.0.7 1.22.0 2.0.8 1.22.1 2.0.9 1.22.2 1.23.0 1.23.1 1.23.2 1.24.0 1.24.1 1.24.2 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.29.0 1.29.1 1.3 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.16 1.3.17 1.3.18 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.30.0 1.30.1 1.30.2 1.30.2-rc.1 1.30.3 1.30.4 1.30.4-rc.1 1.30.5 1.31.0 1.31.1 1.32.0 1.32.0-rc.1 1.33.0 1.33.1 1.33.2 1.34.0 1.35.0 1.35.1 1.36.0 1.36.1 1.36.2 1.36.3 1.37.0 1.37.1 1.37.2
advanced-ads / classes / ad_type_image.php
advanced-ads / classes Last commit date
EDD_SL_Plugin_Updater.php 10 years ago ad-ajax.php 10 years ago ad-model.php 11 years ago ad-select.php 10 years ago ad.php 10 years ago ad_ajax_callbacks.php 10 years ago ad_group.php 10 years ago ad_placements.php 10 years ago ad_type_abstract.php 11 years ago ad_type_content.php 10 years ago ad_type_image.php 10 years ago ad_type_plain.php 10 years ago checks.php 10 years ago display-conditions.php 10 years ago plugin.php 10 years ago upgrades.php 10 years ago visitor-conditions.php 10 years ago widget.php 10 years ago
ad_type_image.php
126 lines
1 <?php
2 /**
3 * Advanced Ads Image Ad Type
4 *
5 * @package Advanced_Ads
6 * @author Thomas Maier <thomas.maier@webgilde.com>
7 * @license GPL-2.0+
8 * @link http://webgilde.com
9 * @copyright 2015 Thomas Maier, webgilde GmbH
10 * @since 1.6.10
11 *
12 * Class containing information about the content ad type
13 * this should also work as an example for other ad types
14 *
15 */
16 class Advanced_Ads_Ad_Type_Image extends Advanced_Ads_Ad_Type_Abstract{
17
18 /**
19 * ID - internal type of the ad type
20 *
21 * must be static so set your own ad type ID here
22 * use slug like format, only lower case, underscores and hyphens
23 *
24 * @since 1.6.10
25 */
26 public $ID = 'image';
27
28 /**
29 * set basic attributes
30 *
31 * @since 1.6.10
32 */
33 public function __construct() {
34 $this->title = __( 'Image Ad', ADVADS_SLUG );
35 $this->description = __( 'Ads in various image formats.', ADVADS_SLUG );
36 $this->parameters = array(
37 'image_url' => '',
38 'image_title' => '',
39 'image_alt' => '',
40 );
41 }
42
43 /**
44 * output for the ad parameters metabox
45 *
46 * @param obj $ad ad object
47 * @since 1.6.10
48 */
49 public function render_parameters($ad){
50 // load tinymc content exitor
51 $id = ( isset( $ad->output['image_id'] ) ) ? $ad->output['image_id'] : '';
52 $url = ( isset( $ad->url ) ) ? esc_url( $ad->url ) : '';
53
54 ?><p><button href="#" class="advads_image_upload button button-secondary" type="button" data-uploader-title="<?php
55 _e( 'Insert File', ADVADS_SLUG ); ?>" data-uploader-button-text="<?php _e( 'Insert', ADVADS_SLUG ); ?>" onclick="return false;"><?php _e( 'select image', ADVADS_SLUG ); ?></button>
56 <a id="advads-image-edit-link" href="<?php if( $id ){ echo get_edit_post_link( $id ); } ?>"><?php _e('edit', ADVADS_SLUG ); ?></a>
57 </p>
58 <input type="hidden" name="advanced_ad[output][image_id]" value="<?php echo $id; ?>" id="advads-image-id"/>
59 <div id="advads-image-preview">
60 <?php $this->create_image_tag( $id ); ?>
61 </div>
62
63 <?php // don’t show if tracking plugin enabled
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/#utm_source=advanced-ads&utm_medium=link&utm_campaign=edit-image-tracking'); ?></p>
68 <?php endif;
69 }
70
71 /**
72 * render image tag
73 *
74 * @param int $attachment_id post id of the image
75 * @since 1.6.10
76 */
77 public function create_image_tag( $attachment_id ){
78
79 $image = wp_get_attachment_image_src( $attachment_id, 'full' );
80 if ( $image ) {
81 list( $src, $width, $height ) = $image;
82 $hwstring = image_hwstring($width, $height);
83 $attachment = get_post($attachment_id);
84 $alt = trim(strip_tags( get_post_meta($attachment_id, '_wp_attachment_image_alt', true) ));
85 $title = trim(strip_tags( $attachment->post_title )); // Finally, use the title
86
87 global $wp_current_filter;
88
89 $more_attributes = '';
90 // create srcset and sizes attributes if we are in the the_content filter and in WordPress 4.4
91 if( isset( $wp_current_filter )
92 && in_array( 'the_content', $wp_current_filter )
93 && ! defined( 'ADVADS_DISABLE_RESPONSIVE_IMAGES' )){
94 if( function_exists( 'wp_get_attachment_image_srcset' ) ){
95 $more_attributes .= ' srcset=\'' . wp_get_attachment_image_srcset( $attachment_id, 'full' ) . '\'';
96 }
97 if( function_exists( 'wp_get_attachment_image_sizes' ) ){
98 $more_attributes .= ' sizes=\'' . wp_get_attachment_image_sizes( $attachment_id, 'full' ) . '\'';
99 }
100 }
101
102 echo rtrim("<img $hwstring") . " src='$src' alt='$alt' title='$title' $more_attributes/>";
103 }
104 }
105
106 /**
107 * prepare the ads frontend output by adding <object> tags
108 *
109 * @param obj $ad ad object
110 * @return str $content ad content prepared for frontend output
111 * @since 1.6.10.
112 */
113 public function prepare_output($ad){
114
115 $id = ( isset( $ad->output['image_id'] ) ) ? absint( $ad->output['image_id'] ) : '';
116 $url = ( isset( $ad->url ) ) ? esc_url( $ad->url ) : '';
117
118 ob_start();
119 if( ! defined( 'AAT_VERSION' ) && $url ){ echo '<a href="'. $url .'">'; }
120 echo $this->create_image_tag( $id );
121 if( ! defined( 'AAT_VERSION' ) && $url ){ echo '</a>'; }
122
123 return ob_get_clean();
124 }
125
126 }