WordPress 3.1

WordPress 3.1 is finally out! With regards to my plugins compatibility with WordPress 3.1, I have not had the chance to test it it. I will be doing it soon =)

The long-awaited fourteenth release of WordPress is now available. WordPress 3.1 “Django” is named in honor of the jazz guitarist Django Reinhardt. Version 3.1 is available for download, or you can update from within your dashboard.

This release features a lightning fast redesigned linking workflow which makes it easy to link to your existing posts and pages, an admin bar so you’re never more than a click away from your most-used dashboard pages, a streamlined writing interface that hides many of the seldom-used panels by default to create a simpler and less intimidating writing experience for new bloggers (visit Screen Options in the top right to get old panels back), and a refreshed blue admin scheme available for selection under your personal options.

There’s a bucket of candy for developers as well, including our new Post Formats support which makes it easy for themes to create portable tumblelogs with different styling for different types of posts, new CMS capabilities like archive pages for custom content types, a new Network Admin, an overhaul of the import and export system, and the ability to perform advanced taxonomy and custom fields queries.

With the 3.1 release, WordPress is more of a CMS than ever before. The only limit to what you can build is your imagination.

(No video yet for 3.1, we’re going to add it later.)

By the Numbers

There were over two thousand commits to the codebase in the 3.1 cycle! For a more comprehensive look at everything that has improved in 3.1, check out 3.1’s Codex page or the more than 820 closed issues in Trac.

Now is the time to drop by our development channels if you are interested in being involved with 3.2, as the agenda will be under discussion shortly. We’re hoping to get the 3.2 release out in a shorter development cycle (3.1 took too long) and include some fun improvements around plugins and the speed of the admin. (Don’t worry, we’re still planning on using PHP.)

We’re All in This Together

WordPress is the result of the combined effort of people from all over the world united with a common goal: to make the best darn web software for publishing your story on the web and sharing it with the world. There are more than 180 people who helped out with development during the 3.1 cycle

Download: WordPress 3.1

1 Star2 Stars3 Stars4 Stars5 Stars (338 votes, average: 3.90 out of 5)

WP-Sticky New Ideas

I was thinking of not using the wp_postmeta table to tell where a post is sticky or not. Instead, I will use a new table called wp_poststicky to denotes all posts sticky status. Whenever you create a new post, a new row will be created in the wp_poststicky table.

0 will denote normal posts
1 will denote sticky posts
2 will denote announcement post.

Now I need to explain what is the difference between sticky posts and announcements posts.

Currently sticky posts are posts which will appear at the top of the page, I will change that name to be called announcement posts instead.

Now sticky posts will be referred as posts that will only stay on top of all the posts which is posted on the same day as the sticky post. My command of English is not that good, hope you are understand what I mean with the following example:

Announcement
– Post 5 (Announcement Post)

29th March 2007
– Post 6
– Post 7
– Post 8

28th March 2007
– Post 4 (Sticky Post)
– Post 1
– Post 2
– Post 3

As you can see, Post 4 is a sticky post and it will stay on top of all posts that is posted on 28th March 2007 ONLY, posts that are posted after 28th March 2007 (eg. 29th March 2007) will still be on top of the sticky post that is posted on 28th March 2007.

But for Post 5, which is an announcement post, it will stay on top of all posts.

Think of it as a feature in forum softwares in which announcement will appear in all forums and sticky topics will only appear in a particular forum.

This feature will be in the final version of WP-Sticky 1.00. Other features planned for future versions include auto un-announce, auto un-sticky posts after a certain number of days of date.

*UPDATED* 3rd December 2007
Uncle Bubba wrote:
When you login and write/manage a post you’ll see “Post Sticky Status” down in the lower right hand corner. There are three options “Announcement”, “Sticky”, and “None”. Announcement makes a post always on top no matter what. Sticky keeps it at the top of that day’s posts. So, say you made 4 posts on Wednesday and made one sticky, the sticky one would stay on top of Wednesday’s posts. If you then make a post on Thursday it will appear on top of all of Wednesday’s posts but underneath the Announcement post.

1 Star2 Stars3 Stars4 Stars5 Stars (185 votes, average: 3.90 out of 5)

New WP_Widget Class In WordPress 2.8

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.

 __('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']);
?>


			
		


			
		


			
		


1 Star2 Stars3 Stars4 Stars5 Stars (178 votes, average: 3.90 out of 5)

WordPress 4.9 Released

WordPress 4.9 has been released.

What’s New

  • Customizer Workflow Improved
  • Coding Enhancements
  • Even More Widget Updates
  • Site Building Improvements
  • Customizer JS API Improvements
  • CodeMirror available for use in your themes and plugins
  • MediaElement.js upgraded to 4.2.6
  • Roles and Capabilities Improvements

Download: WordPress 4.9

1 Star2 Stars3 Stars4 Stars5 Stars (147 votes, average: 3.90 out of 5)