Archive for the ‘Plugins’ Category

15th June 2009

Lester Chan’s WordPress Plugins June 2009 Update

Posted by Lester Chan at 18:52 in WP-Ban, WP-CommentNavi, WP-DBManager, WP-DownloadManager, WP-EMail, WP-PageNavi, WP-PluginsUsed, WP-Polls, WP-PostRatings, WP-PostViews, WP-Print, WP-RelativeDate, WP-ServerInfo, WP-Stats, WP-Sticky, WP-UserOnline

Here is my June 2009 WordPress plugins update containing all my 16 WordPress plugins update. All of them should work on WordPress 2.8 as I did not test them on any WordPress version below that.

Now my plugins uses jQuery for AJAX instead of TW-Sack. I have also updated the widget code to make use of the new WordPress 2.8 new Widget class and that supports multi-instances widgets. The widget code has now been merge with the main plugin file so the standalone widget plugin file is no longer in use. Please delete the whole plugin folder and upload it again to avoid any error.

As WordPress 2.8 supports loading of JavaScript in the footer, all my plugins’ JavaScripts will be loaded in the footer. Be sure you have in your theme footer.php.

Be sure to read the readme.html and checkout the changelog for more information and most importantly NOTE THE TABS AT THE TOP

WP-Ban 1.50
» Readme/Changelog
» Download Mirror #1
» Support Forum

WP-CommentNavi 1.10
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-DBManager 2.50
» Readme/Changelog
» Download Mirror #1
» Support Forum

WP-DownloadManager 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-EMail 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-PageNavi 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-PluginsUsed 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-Polls 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-PostRatings 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-PostViews 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-Print 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-RelativeDate 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-ServerInfo 1.50
» Readme/Changelog
» Download Mirror #1
» Support Forum

WP-Stats 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-Sticky 1.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

WP-Useronline 2.50
» Readme/Changelog
» Demo
» Download Mirror #1
» Support Forum

If you like or love my plugins a lot, do consider making a donation to me. My Paypal email address is lesterchan AT gmail DOT com. Thank you =D

Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (177 votes, average: 3.93 out of 5)
17th March 2009

New WP_Widget Class In WordPress 2.8

Posted by Lester Chan at 13:30 in Plugins, WordPress

In WordPress 2.8, there is a new WP_Widget class, which personally I like it very much as now the multi-instances of widgets is handled by WordPress, all you need to do is just to extends the WP_Widget class and overwrite 3 of the functions namely widgets(), update() and form();

Below is a sample code taken from my WP-Polls that displays Polls Widget. It is tested and it works perfectly. Hope it is useful for plugin authors.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
### Class: WP-Polls Widget
 class WP_Widget_Polls extends WP_Widget {
	// Constructor
	function WP_Widget_Polls() {
		$widget_ops = array('description' => __('Put a poll that you have added in WP-Polls on your sidebar', 'wp-polls'));
		$this->WP_Widget('polls', __('Polls'), $widget_ops);
	}
 
	// Display Widget
	function widget($args, $instance) {
		extract($args);
		$title = esc_attr($instance['title']);
		$poll_id = intval($instance['poll_id']);
		$display_pollarchive = intval($instance['display_pollarchive']);
		echo $before_widget.$before_title.$title.$after_title;
		get_poll($poll_id);
		if($display_pollarchive) {
			display_polls_archive_link();
		}
		echo $after_widget;
	}
 
	// When Widget Control Form Is Posted
	function update($new_instance, $old_instance) {
		if (!isset($new_instance['submit'])) {
			return false;
		}
		$instance = $old_instance;
		$instance['title'] = strip_tags($new_instance['title']);
		$instance['poll_id'] = intval($new_instance['poll_id']);
		$instance['display_pollarchive'] = intval($new_instance['display_pollarchive']);
		return $instance;
	}
 
	// DIsplay Widget Control Form
	function form($instance) {
		global $wpdb;
		$instance = wp_parse_args((array) $instance, array('title' => __('Polls', 'wp-polls'), 'poll_id' => 0, 'display_pollarchive' => 1));
		$title = esc_attr($instance['title']);
		$poll_id = intval($instance['poll_id']);
		$display_pollarchive = intval($instance['display_pollarchive']);
?>
 
 
			<label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:', 'wp-polls'); ?>
<input class="widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" /></label>
 
 
 
			<label for="<?php echo $this->get_field_id('display_pollarchive'); ?>"><?php _e('Display Polls Archive Link Below Poll?', 'wp-polls'); ?>
<select name="<?php echo $this->get_field_name('display_pollarchive'); ?>" id="<?php echo $this->get_field_id('display_pollarchive'); ?>" class="widefat">
					<option value="0"<?php selected(0, $display_pollarchive); ?>><?php _e('No', 'wp-polls'); ?></option>
					<option value="1"<?php selected(1, $display_pollarchive); ?>><?php _e('Yes', 'wp-polls'); ?></option>
				</select>
 
			</label>
 
 
 
			<label for="<?php echo $this->get_field_id('poll_id'); ?>"><?php _e('Poll To Display:', 'wp-polls'); ?>
<select name="<?php echo $this->get_field_name('poll_id'); ?>" id="<?php echo $this->get_field_id('poll_id'); ?>" class="widefat">
					<option value="-1"<?php selected(-1, $poll_id); ?>><?php _e('Do NOT Display Poll (Disable)', 'wp-polls'); ?></option>
					<option value="-2"<?php selected(-2, $poll_id); ?>><?php _e('Display Random Poll', 'wp-polls'); ?></option>
					<option value="0"<?php selected(0, $poll_id); ?>><?php _e('Display Latest Poll', 'wp-polls'); ?></option>
				</select>
 
			</label>
 
<input type="hidden" id="<?php echo $this->get_field_id('submit'); ?>" name="<?php echo $this->get_field_name('submit'); ?>" value="1" />
<?php
	}
}
 
### Function: Init WP-Polls Widget
add_action('widgets_init', 'widget_polls_init');
function widget_polls_init() {
	register_widget('WP_Widget_Polls');
}
?>
Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (168 votes, average: 4.03 out of 5)
5th March 2009

Downloads Surpass 1 Million Mark

Posted by Lester Chan at 14:46 in Plugins

My 17 plugins download count has surpass the 1 million mark. As of 2.44pm (GMT+8), it has a total download of 1,001,369 making up 4.5% downloads of the grand total downloads of 22,152,788 on WordPress.org.

Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (127 votes, average: 3.93 out of 5)
19th January 2009

JavaScript In My Plugins II

Posted by Lester Chan at 19:11 in Site, WP-EMail, WP-Polls, WP-PostRatings, WP-ServerInfo, WP-UserOnline, WordPress

I have completed the “update” process to my 5 of my plugins (WP-Polls, WP-PostRatings, WP-Email, WP-ServerInfo and WP-UserOnline) which use JavaScript.

  • WP-Polls and WP-PostRatings uses JavaScript on the frontend as well as the backend
  • WP-Email and WP-UserOnline uses JavaScript on the frontend only
  • WP-ServerInfo uses JavaScript on the backend only

Unfortunately the changes require at least WordPress 2.8 onwards to make use of the JavaScript enhancements in WordPress 2.8. I have updated this site to WordPress 2.8 Bleeding Edge aka WordPress 2.8 Nightly in order to test the JavaScript changes on a live site.

If you view the HTML source of this page, you will notice that only the CSS files get loaded in the header and the JavaScript gets loaded in the footer.

If you are running WordPress 2.8 bleeding edge, perhaps you can help me test out the plugins. Thanks in advanced :)

  WP-PostRatings 1.50 Beta 1 (unknown, 9,532 hits)

  WP-Email 2.50 Beta 1 (unknown, 7,364 hits)

  WP-Polls 2.50 Beta 1 (unknown, 11,209 hits)

  WP-UserOnline 2.50 Beta 1 (unknown, 4,305 hits)

  WP-ServerInfo 1.50 Beta 1 (unknown, 1,953 hits)

Tags: , , ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (139 votes, average: 4.23 out of 5)
15th January 2009

JavaScript In My Plugins

Posted by Lester Chan at 01:50 in Plugins, WP-PostRatings, WordPress

Only 5 of my plugins (WP-Polls, WP-PostRatings, WP-Email, WP-ServerInfo and WP-UserOnline) use JavaScript. The JavaScripts are packed using Dean Edward’s Packer and the only framework use just for AJAX is TW-Sack or Simple AJAX Code-Kit (SACK). TW-Sack is extremely lightweight and easy to use but unfortunately, it can be used only for AJAX purposes. The reason I used TW-Sack instead of jQuery is simple, at the time I created my plugin, jQuery does not exists yet and when jQuery becomes popular the reason why I didn’t upgrade it was because I was lazy. As the saying goes, “If it ain’t broke, don’t fix it”. Recently there is some buzz within the WordPress Development Team regarding WordPress’s JavaScript Usage. Andrew Ozz has written two articles on it in the WordPress Development Updates blog entitled Optimizing script loading, Optimizing script loading part 2 and Optimizing script loading, implementation. With the upcoming WordPress 2.8 will feature some heavy JavaScript changes, I told myself to make use of this chance to totally revamped the JavaScripts in my plugins. Here are the changes that will be made:

  • Minified JavaScript instead of packing them
  • Replaced TW-Sack with jQuery
  • Move JavaScript to the footer
  • Use wp_localize_script() for JavaScript text translation
  • javascript-js.js will now contain the minified code for normal usage
  • javascript-js.dev.js will now contain the unminified code for development purposes

I have already done it for WP-PostRatings and it is now running live on this site. Next, I will be doing WP-UserOnline, followed by WP-Email and lastly WP-Polls as it is more complex.

Tags: , , ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (100 votes, average: 3.89 out of 5)
29th December 2008

Top 3 WordPress Plugins Developer

Posted by Lester Chan at 17:01 in Plugins, WordPress

I am ranked among the Top 10 WordPress Plugins Developers. I am ranked 3rd to be precise based on the number of downloads for all my 17 plugins hosted on the official WordPress Plugins repository.

Source: W-Shadow.com’s Blog: Top 10 WordPress Plugin Developers

Tags: , ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (48 votes, average: 3.90 out of 5)
11th December 2008

Lester Chan’s WordPress Plugins December 2008 Update

Posted by Lester Chan at 16:09 in WP-Ban, WP-CommentNavi, WP-DBManager, WP-DownloadManager, WP-EMail, WP-PageNavi, WP-PluginsUsed, WP-Polls, WP-PostRatings, WP-PostViews, WP-Print, WP-RelativeDate, WP-ServerInfo, WP-Stats, WP-Sticky, WP-UserOnline

Here is my December 2008 WordPress plugins update containing all my 15 WordPress plugins update and 1 new WordPress plugin. All of them should work on WordPress 2.7 as I did not test them on any WordPress version below that.

I am introducing a new plugin called WP-CommentNavi which basically paginate your comments similar to how WP-PageNavi paginate your posts. I am also retiring WP-Sticky as WordPress 2.7 has a sticky post feature built in. WP-Sticky 2.31 WILL NOT work on WordPress 2.7 due to a conflict function “is_sticky”. If you renamed that function to “is_sticky2″ or something else, it should work, but as usual I did not test it.

*UPDATE* Due to the large number of requests, I decided not to retire WP-Sticky and I have updated it to 1.40 and it is now compatible with WordPress 2.7.

Be sure to read the readme.html and checkout the changelog for more information and most importantly NOTE THE TABS AT THE TOP

WP-Ban 1.40
» Readme/Changelog
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-CommentNavi 1.00
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-DBManager 2.40
» Readme/Changelog
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-DownloadManager 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-EMail 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-PageNavi 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-PluginsUsed 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-Polls 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-PostRatings 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-PostViews 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-Print 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-RelativeDate 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-ServerInfo 1.40
» Readme/Changelog
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-Stats 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-Sticky 1.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

WP-Useronline 2.40
» Readme/Changelog
» Demo
» Download Mirror #1
» Download Mirror #2
» Support Forum

If you like or love my plugins a lot, do consider making a donation to me. My Paypal email address is lesterchan AT gmail DOT com. Thank you =D

Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (56 votes, average: 4.00 out of 5)

WordPress 2.7 Released

Posted by Lester Chan at 14:22 in Plugins, WordPress

WordPress 2.7 has been released after being delayed for about a week.

Here are some of the features according to the blog post:

Next you’ll begin to notice the new features subtly sprinkled through the new interface: the new dashboard that you can arrange with drag and drop to put the things most important to you on top, QuickPress, comment threading, paging, and the ability to reply to comments from your dashboard, the ability to install any plugin directly from WordPress.org with a single click, and sticky posts.

Digging in further you might notice that every screen is customizable. Let’s say you never care about author on your post listings — just click “Screen Options” and uncheck it and it’s instantly gone from the page. The same for any module on the dashboard or write screen. If your screen is narrow and the menu is taking up too much horizontal room, click the arrow to minimize it to be icon-only, and then go to the write page and drag and drop everything from the right column into the main one, so your posting area is full-screen. (For example I like hiding everything except categories, tags, and publish. I put categories and tags on the right, and publish under the post box.)

WordPress 2.7 also introduce the Automatic Core upgrade which unfortunately do not work for me. I am still very skeptical after automating web script upgrades. I prefer to do it the manual way so that I can control what I want.

I will release the updates to my plugins shortly.

Download: WordPress 2.7

Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (23 votes, average: 3.65 out of 5)
4th November 2008

WP-CommentNavi 1.00 Beta

Posted by Lester Chan at 16:38 in WP-CommentNavi

I have created a new plugin called WP-CommentNavi for WordPress 2.7. What it basically does is to have nicer/advanced pagination for your comments in WordPress 2.7. It is basically a copy of my WP-PageNavi plugin replaced with variables from the comments API of WordPress. I whipped out this plugin within an hour through lots of “Finding & Replacing” of texts.

Here is a demo of the plugin in action.

You can download it from here:

  WP-CommentNavi 1.00 Beta (11.0 KiB, 3,588 hits)

Do remember to read the readme.html

I have already applied for this plugin on the WordPress repository. Still waiting for a reply.

*UPDATE* Committed the plugin, SVN is at http://plugins.trac.wordpress.org/browser/wp-commentnavi/

Tags:

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (63 votes, average: 3.97 out of 5)
1st November 2008

My Plugins And WordPress 2.7

Posted by Lester Chan at 22:38 in Plugins, Site, WP-EMail, WP-Print, WordPress

I tested both 1.31/2.31 version as well as 1.40/2.40 version of my plugins and they appear to work fine in WordPress 2.7 EXCEPT for WP-Email and WP-Print. It is because for some reasons the canonical redirect happens before my template redirect and hence /email/ will always be an invalid page in WordPress eyes. This issue is not present in Wordpress 2.6.

My efforts had paid off when my plugins undergo major cosmetic changes back in WordPress 2.5 to accommodate the new WordPress 2.5 design. It is because for WordPress 2.7, I need not do anything and the design just fits right in. I just need to add in the icon for the admin menu for WP-DBManager, WP-DownloadManager, WP-Email, WP-Polls and WP-PostRatings.

Here are the fixes to get WP-Email 2.31 and WP-Print 2.31 to work with WordPress 2.7. I will not update WP-Email 2.31 and WP-Print 2.31 with this fix, instead I will just leave the fix to be downloadeded on this site. Do note that the fix will make WP-Email and WP-Print work for WordPress 2.7 ONLY.

Here is the fix for WP-Email 2.31:

In wp-email.php:

Find (Line 106, Line 120, Line 134 & Line 147):

1
$rewrite_rules = array_slice($rewrite_rules, 4, 1);

Replace:

1
$rewrite_rules = array_slice($rewrite_rules, 5, 1);

Find (Line 758):

1
add_action('template_redirect', 'wp_email');

Replace:

1
add_action('template_redirect', 'wp_email', 5);

Alternatively you can download the fixed wp-email.php:

  WP-Email 2.31 Fix For WordPress 2.7 (11.4 KiB, 1,508 hits)

Here is the fix for WP-Print 2.31:

In wp-print.php:

Find (Line 79 & Line 95):

1
$rewrite_rules = array_slice($rewrite_rules, 4, 1);

Replace:

1
$rewrite_rules = array_slice($rewrite_rules, 5, 1);

Find (Line 395):

1
add_action('template_redirect', 'wp_print');

Replace:

1
add_action('template_redirect', 'wp_print', 5);

Alternatively you can download the fixed wp-print.php:

  WP-Print 2.31 Fix For WordPress 2.7 (4.2 KiB, 1,710 hits)

After uploading the fix, you need to regenerate permalink. Go to (WP-Admin -> Settings -> Permalinks -> Save Changes)

I have already committed these changes to WP-Email 2.40 and WP-Print 2.40 to the SVN.

Tentatively WP-DBManager, WP-DownloadManager, WP-Email, WP-Polls and WP-PostRatings will work for Wordpress 2.7 only because of the new icon in the admin menu.

Tags: ,

Email This Post Email This Post Print This Post Print This Post

1 Star2 Stars3 Stars4 Stars5 Stars (47 votes, average: 4.21 out of 5)

 

Page 1 of 13123»10...Last »