Version Description
Download this release
Release Info
Developer | broadstreetads |
Plugin | WordPress Ad Widget |
Version | 2.1.0 |
Comparing to | |
See all releases |
Version 2.1.0
- adwidget.php +229 -0
- assets/widgets.js +19 -0
- readme.txt +32 -0
- views/admin.php +32 -0
adwidget.php
ADDED
@@ -0,0 +1,229 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Plugin Name: Wordpress Ad Widget
|
4 |
+
Plugin URI: https://github.com/broadstreetads/wordpress-ad-widget
|
5 |
+
Description: The easiest way to place ads in your Wordpress sidebar. Go to Settings -> Ad Widget
|
6 |
+
Version: 2.1.0
|
7 |
+
Author: Broadstreet Ads
|
8 |
+
Author URI: http://broadstreetads.com
|
9 |
+
*/
|
10 |
+
|
11 |
+
add_action('admin_init', array('AdWidget_Core', 'registerScripts'));
|
12 |
+
add_action('widgets_init', array('AdWidget_Core', 'registerWidgets'));
|
13 |
+
add_action('admin_menu', array('AdWidget_Core', 'registerAdmin'));
|
14 |
+
|
15 |
+
/**
|
16 |
+
* This class is the core of Ad Widget
|
17 |
+
*/
|
18 |
+
class AdWidget_Core
|
19 |
+
{
|
20 |
+
/**
|
21 |
+
* The callback used to register the scripts
|
22 |
+
*/
|
23 |
+
static function registerScripts()
|
24 |
+
{
|
25 |
+
# Include thickbox on widgets page
|
26 |
+
if($GLOBALS['pagenow'] == 'widgets.php')
|
27 |
+
{
|
28 |
+
wp_enqueue_script('thickbox');
|
29 |
+
wp_enqueue_style('thickbox');
|
30 |
+
wp_enqueue_script('adwidget-main', self::getBaseURL().'assets/widgets.js');
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* The callback used to register the widget
|
36 |
+
*/
|
37 |
+
static function registerWidgets()
|
38 |
+
{
|
39 |
+
register_widget('AdWidget_HTMLWidget');
|
40 |
+
register_widget('AdWidget_ImageWidget');
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Get the base URL of the plugin installation
|
45 |
+
* @return string the base URL
|
46 |
+
*/
|
47 |
+
public static function getBaseURL()
|
48 |
+
{
|
49 |
+
return (get_bloginfo('url') . '/wp-content/plugins/adwidget/');
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Register the admin settings page
|
54 |
+
*/
|
55 |
+
static function registerAdmin()
|
56 |
+
{
|
57 |
+
add_options_page('Ad Widget', 'Ad Widget', 'edit_pages', 'adwidget.php', array(__CLASS__, 'adminMenuCallback'));
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* The function used by WP to print the admin settings page
|
62 |
+
*/
|
63 |
+
static function adminMenuCallback()
|
64 |
+
{
|
65 |
+
include dirname(__FILE__) . '/views/admin.php';
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
|
70 |
+
/**
|
71 |
+
* The HTML Widget
|
72 |
+
*/
|
73 |
+
class AdWidget_HTMLWidget extends WP_Widget
|
74 |
+
{
|
75 |
+
/**
|
76 |
+
* Set the widget options
|
77 |
+
*/
|
78 |
+
function AdWidget_HTMLWidget()
|
79 |
+
{
|
80 |
+
$widget_ops = array('classname' => 'AdWidget_HTMLWidget', 'description' => 'Place an ad code like Google ads or other ad provider');
|
81 |
+
$this->WP_Widget('AdWidget_HTMLWidget', 'Ad: HTML/Javascript Ad', $widget_ops);
|
82 |
+
}
|
83 |
+
|
84 |
+
/**
|
85 |
+
* Display the widget on the sidebar
|
86 |
+
* @param array $args
|
87 |
+
* @param array $instance
|
88 |
+
*/
|
89 |
+
function widget($args, $instance)
|
90 |
+
{
|
91 |
+
extract($args);
|
92 |
+
|
93 |
+
echo $before_widget;
|
94 |
+
|
95 |
+
$instance['w_adcode'];
|
96 |
+
|
97 |
+
echo $after_widget;
|
98 |
+
}
|
99 |
+
|
100 |
+
/**
|
101 |
+
* Update the widget info from the admin panel
|
102 |
+
* @param array $new_instance
|
103 |
+
* @param array $old_instance
|
104 |
+
* @return array
|
105 |
+
*/
|
106 |
+
function update($new_instance, $old_instance)
|
107 |
+
{
|
108 |
+
$instance = $old_instance;
|
109 |
+
|
110 |
+
$instance['w_adcode'] = $new_instance['w_adcode'];
|
111 |
+
|
112 |
+
return $instance;
|
113 |
+
}
|
114 |
+
|
115 |
+
/**
|
116 |
+
* Display the widget update form
|
117 |
+
* @param array $instance
|
118 |
+
*/
|
119 |
+
function form($instance)
|
120 |
+
{
|
121 |
+
|
122 |
+
$defaults = array('w_adcode' => '');
|
123 |
+
$instance = wp_parse_args((array) $instance, $defaults);
|
124 |
+
?>
|
125 |
+
<div class="widget-content">
|
126 |
+
<p>Paste your Google ad tag, or any other ad tag in this widget below.</p>
|
127 |
+
<p>
|
128 |
+
<label for="<?php echo $this->get_field_id('w_adcode'); ?>">Ad Code</label>
|
129 |
+
<textarea style="height: 100px;" class="widefat" id="<?php echo $this->get_field_id( 'w_adcode' ); ?>" name="<?php echo $this->get_field_name('w_adcode'); ?>"><?php echo $instance['w_adcode']; ?></textarea>
|
130 |
+
</p>
|
131 |
+
</div>
|
132 |
+
<?php
|
133 |
+
}
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* This is an optional widget to display GitHub projects
|
138 |
+
*/
|
139 |
+
class AdWidget_ImageWidget extends WP_Widget
|
140 |
+
{
|
141 |
+
/**
|
142 |
+
* Set the widget options
|
143 |
+
*/
|
144 |
+
function AdWidget_ImageWidget()
|
145 |
+
{
|
146 |
+
$widget_ops = array('classname' => 'AdWidget_ImageWidget', 'description' => 'Place an image ad with a link');
|
147 |
+
$this->WP_Widget('AdWidget_ImageWidget', 'Ad: Image/Banner Ad', $widget_ops);
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Display the widget on the sidebar
|
152 |
+
* @param array $args
|
153 |
+
* @param array $instance
|
154 |
+
*/
|
155 |
+
function widget($args, $instance)
|
156 |
+
{
|
157 |
+
extract($args);
|
158 |
+
|
159 |
+
$link = $instance['w_link'];
|
160 |
+
$img = $instance['w_img'];
|
161 |
+
|
162 |
+
echo $before_widget;
|
163 |
+
|
164 |
+
echo "<a target='_blank' href='$link' alt='Ad'><img style='width: 100%' src='$img' alt='Ad' /></a>";
|
165 |
+
|
166 |
+
echo $after_widget;
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* Update the widget info from the admin panel
|
171 |
+
* @param array $new_instance
|
172 |
+
* @param array $old_instance
|
173 |
+
* @return array
|
174 |
+
*/
|
175 |
+
function update($new_instance, $old_instance)
|
176 |
+
{
|
177 |
+
$instance = $old_instance;
|
178 |
+
|
179 |
+
$instance['w_link'] = $new_instance['w_link'];
|
180 |
+
$instance['w_img'] = $new_instance['w_img'];
|
181 |
+
|
182 |
+
return $instance;
|
183 |
+
}
|
184 |
+
|
185 |
+
/**
|
186 |
+
* Display the widget update form
|
187 |
+
* @param array $instance
|
188 |
+
*/
|
189 |
+
function form($instance)
|
190 |
+
{
|
191 |
+
$link_id = $this->get_field_id('w_link');
|
192 |
+
$img_id = $this->get_field_id('w_img');
|
193 |
+
|
194 |
+
|
195 |
+
$defaults = array('w_link' => get_bloginfo('url'), 'w_img' => '');
|
196 |
+
|
197 |
+
$instance = wp_parse_args((array) $instance, $defaults);
|
198 |
+
|
199 |
+
$img = $instance['w_img'];
|
200 |
+
$link = $instance['w_link'];
|
201 |
+
|
202 |
+
?>
|
203 |
+
<div class="widget-content">
|
204 |
+
<p style="text-align: center;" class="bs-proof">
|
205 |
+
<?php if($instance['w_img']): ?>
|
206 |
+
Your ad is ready.
|
207 |
+
<br/><br/><strong>Scaled Visual:</strong><br/>
|
208 |
+
<div class="bs-proof"><img style="width:100%;" src="<?php echo $instance['w_img'] ?>" alt="Ad" /></div>
|
209 |
+
<?php else: ?>
|
210 |
+
<a href="#" class="upload-button" rel="<?php echo $img_id ?>">Click here to upload a new image.</a> You can also paste in an image URL below.
|
211 |
+
<?php endif; ?>
|
212 |
+
</p>
|
213 |
+
<input class="widefat tag" placeholder="Image URL" type="text" id="<?php echo $img_id; ?>" name="<?php echo $this->get_field_name('w_img'); ?>" value="<?php echo htmlentities($instance['w_img']); ?>" />
|
214 |
+
<br/><br/>
|
215 |
+
<p>
|
216 |
+
<label for="<?php echo $this->get_field_id('w_link'); ?>">Ad Click Destination:</label><br/>
|
217 |
+
<input class="widefat" type="text" id="<?php echo $this->get_field_id('w_link'); ?>" name="<?php echo $this->get_field_name('w_link'); ?>" value="<?php echo $instance['w_link']; ?>" />
|
218 |
+
</p>
|
219 |
+
<p>
|
220 |
+
When you're ready for a more powerful adserver, visit <a target="_blank" href="http://broadstreetads.com/ad-platform/adserving/">Broadstreet</a>.
|
221 |
+
</p>
|
222 |
+
</div>
|
223 |
+
<?php
|
224 |
+
}
|
225 |
+
}
|
226 |
+
|
227 |
+
|
228 |
+
|
229 |
+
|
assets/widgets.js
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery(function($) {
|
2 |
+
$('.upload-button').live('click', function(e) {
|
3 |
+
window.adcode_id = $(e.target).attr('rel');
|
4 |
+
window.send_to_editor = image_upload_handler;
|
5 |
+
|
6 |
+
tb_show('', 'media-upload.php?type=image&amp;amp;TB_iframe=true');
|
7 |
+
|
8 |
+
return false;
|
9 |
+
});
|
10 |
+
|
11 |
+
function image_upload_handler(html) {
|
12 |
+
imgurl = $('img',html).attr('src');
|
13 |
+
if(!imgurl) imgurl = $(html).attr('src');
|
14 |
+
|
15 |
+
$('#' + window.adcode_id).val(imgurl);
|
16 |
+
|
17 |
+
tb_remove();
|
18 |
+
};
|
19 |
+
});
|
readme.txt
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Plugin Name ===
|
2 |
+
Contributors: Broadstreet
|
3 |
+
Tags: wordpress,ad,widget,sidebar,google,tag,code
|
4 |
+
Requires at least: 3.0
|
5 |
+
Tested up to: 3.5.1
|
6 |
+
Stable tag: 2.1.0
|
7 |
+
|
8 |
+
This is a Wordpress plugin that will list your open source projects from
|
9 |
+
github or bitbucket in-page or via sidebar.
|
10 |
+
|
11 |
+
== Description ==
|
12 |
+
|
13 |
+
This is the easiest way to place ads in your Wordpress site. Just drag a widget
|
14 |
+
to the sidebar, upload, an ad, and save.
|
15 |
+
|
16 |
+
* Extremely intuitive for beginners
|
17 |
+
* No clunky ad management interface
|
18 |
+
* Easily place image banner ads
|
19 |
+
* Easily place Google ad tags and other ad code
|
20 |
+
|
21 |
+
You will not find an easier way to run ads on your website!
|
22 |
+
|
23 |
+
== Demo ==
|
24 |
+
|
25 |
+
Watch a short video demo: http://www.screenr.com/u0t7
|
26 |
+
|
27 |
+
== Installation ==
|
28 |
+
|
29 |
+
There aren't any special instructions for installing this plug-in. Once
|
30 |
+
installed, go to Appearance -> Widgets, and look for the "Ad Widget" widgets!
|
31 |
+
|
32 |
+
You can also go to Settings -> Ad Widget for a video demo on how to use it.
|
views/admin.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<div style="width: 650px;">
|
2 |
+
|
3 |
+
<h1>Wordpress Ad Widget</h1>
|
4 |
+
|
5 |
+
<script type="text/javascript" src="http://cdn.broadstreetads.com/init.js"></script>
|
6 |
+
<script type="text/javascript">broadstreet.zone(423);</script>
|
7 |
+
|
8 |
+
<p>Thank you for using our plugin! This plugin was built by <a href="http://broadstreetads.com">Broadstreet</a>, the
|
9 |
+
company for independent publishers.</p>
|
10 |
+
|
11 |
+
<p>If you're a local publisher, please <strong><a href="http://broadstreetads.us5.list-manage.com/subscribe?u=508de363fda633d674a0a123b&id=e2fbcef169">sign up for our newsletter</a></strong>, and join the community.</p>
|
12 |
+
|
13 |
+
<p>To put an ad on your website, just go to <a href="widgets.php">the widgets page</a>,
|
14 |
+
and look for:</p>
|
15 |
+
|
16 |
+
<ul>
|
17 |
+
<li><strong>Ad: HTML/Javascript Ad</strong></li>
|
18 |
+
<li><strong>Ad: Image/Banner Ad</strong></li>
|
19 |
+
</ul>
|
20 |
+
|
21 |
+
<p>
|
22 |
+
Drag one of those into your a widget area, like a sidebar, and follow the
|
23 |
+
instructions! Send questions to kenny@broadstreetads.com .
|
24 |
+
</p>
|
25 |
+
|
26 |
+
<p>
|
27 |
+
Here's a short instructional video if you need help:
|
28 |
+
</p>
|
29 |
+
|
30 |
+
<iframe src="http://www.screenr.com/embed/u0t7" width="650" height="396" frameborder="0"></iframe>
|
31 |
+
|
32 |
+
</div>
|