PluginProbe ʕ •ᴥ•ʔ
Advanced Ads – Ad Manager & AdSense / 1.5.1
Advanced Ads – Ad Manager & AdSense v1.5.1
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 / widget.php
advanced-ads / classes Last commit date
ad-ajax.php 11 years ago ad-model.php 11 years ago ad-select.php 11 years ago ad.php 11 years ago ad_ajax_callbacks.php 11 years ago ad_group.php 11 years ago ad_placements.php 11 years ago ad_type_abstract.php 11 years ago ad_type_content.php 11 years ago ad_type_plain.php 11 years ago plugin.php 11 years ago widget.php 11 years ago
widget.php
127 lines
1 <?php
2 /**
3 * Advanced Ads Widget
4 *
5 * @package Advads_Widget
6 * @author Thomas Maier <thomas.maier@webgilde.com>
7 * @license GPL-2.0+
8 * @link http://webgilde.com
9 * @copyright 2014 Thomas Maier, webgilde GmbH
10 */
11
12 /**
13 * Ad widget
14 *
15 */
16 class Advads_Widget extends WP_Widget {
17
18 function __construct() {
19 $widget_ops = array('classname' => 'advads_widget', 'description' => __( 'Display Ads and Ad Groups.', ADVADS_SLUG ));
20 $control_ops = array();
21 parent::__construct( 'advads_ad_widget', __( 'Advanced Ads', ADVADS_SLUG ), $widget_ops, $control_ops );
22 }
23
24 function widget($args, $instance) {
25 /** This filter is documented in wp-includes/default-widgets.php */
26 $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
27
28 extract( $args );
29 $item_id = empty($instance['item_id']) ? '' : $instance['item_id'];
30 $title = empty($instance['title']) ? '' : $instance['title'];
31 echo $before_widget;
32 if ( ! empty( $title ) ) {
33 echo $before_title . $title . $after_title;
34 }
35 echo self::output( $item_id );
36 echo $after_widget;
37 }
38
39 function update($new_instance, $old_instance) {
40 $instance = $old_instance;
41 $instance['title'] = $new_instance['title'];
42 $instance['item_id'] = $new_instance['item_id'];
43 return $instance;
44 }
45
46 function form($instance) {
47 $instance = wp_parse_args( (array) $instance, array('title' => '', 'item_id' => '') );
48 $title = strip_tags( $instance['title'] );
49 $elementid = $instance['item_id'];
50
51 ?><p><label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label>
52 <input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" /></p><?php
53
54 $items = self::items_for_select();
55 ?>
56 <select id="<?php echo $this->get_field_id( 'item_id' ); ?>" name="<?php echo $this->get_field_name( 'item_id' ); ?>">
57 <option value=""><?php _e( '--empty--', ADVADS_SLUG ); ?></option>
58 <?php if ( isset($items['groups']) ) : ?>
59 <optgroup label="<?php _e( 'Ad Groups', ADVADS_SLUG ); ?>">
60 <?php foreach ( $items['groups'] as $_item_id => $_item_title ) : ?>
61 <option value="<?php echo $_item_id; ?>" <?php selected( $_item_id, $elementid ); ?>><?php echo $_item_title; ?></option>
62 <?php endforeach; ?>
63 </optgroup>
64 <?php endif; ?>
65 <?php if ( isset($items['ads']) ) : ?>
66 <optgroup label="<?php _e( 'Ads', ADVADS_SLUG ); ?>">
67 <?php foreach ( $items['ads'] as $_item_id => $_item_title ) : ?>
68 <option value="<?php echo $_item_id; ?>" <?php selected( $_item_id, $elementid ); ?>><?php echo $_item_title; ?></option>
69 <?php endforeach; ?>
70 </optgroup>
71 <?php endif; ?>
72 </select><?php
73 }
74
75 /**
76 * get items for widget select field
77 *
78 * @since 1.2
79 * @return arr $select items for select field
80 */
81 static function items_for_select(){
82 $select = array();
83 $model = Advanced_Ads::get_instance()->get_model();
84
85 // load all ads
86 $ads = $model->get_ads( array('orderby' => 'name', 'order' => 'ASC') );
87 foreach ( $ads as $_ad ){
88 $select['ads']['ad_' . $_ad->ID] = $_ad->post_title;
89 }
90
91 // load all ad groups
92 $groups = $model->get_ad_groups();
93 foreach ( $groups as $_group ){
94 $select['groups']['group_' . $_group->term_id] = $_group->name;
95 }
96
97 return $select;
98 }
99
100 /**
101 * return content of an in a widget
102 *
103 * @since 1.2
104 * @param string $id slug of the display
105 */
106 static function output($id = ''){
107 // get placement data for the slug
108 if ( empty($id) ) { return; }
109
110 $item = explode( '_', $id );
111
112 if ( isset($item[1]) ) {
113 $item_id = absint( $item[1] ); }
114 elseif (empty($item_id)) return;
115
116 // return either ad or group content
117 if ( $item[0] == 'ad' ){
118 return get_ad( $item_id );
119 } elseif ( $item[0] == 'group' ){
120 return get_ad_group( $item_id );
121 }
122
123 return;
124 }
125
126 }
127