Monthly Archiv: December, 2009

Tamplate

Package:
Tamplate
Summary:
Template engine that replaces variables with text
Groups:
PHP 5, Templates
Author:
Luke Szanto
Description:
This class implements a template engine that replaces variables with text.

It can read and parse a given template file to replace marks with text values from variable values. The variable values may also be passed as arrays.

The processed template may be returned as a string or displayed as the current script output.


PgProcedures

Package:
PgProcedures
Summary:
Call PostgreSQL stored procedures
Groups:
Databases, PHP 5
Author:
Martin Philippe
Description:
This class can be used to call PostgreSQL stored procedures.

It defines the __call function to accept calls to PostgreSQL stored procedures by the name of function of the class that is called.

The class takes the function arguments and converts them to parameters that are passed when the stored procedure is called.


Image Class

Package:
Image Class
Summary:
Create and manipulate images
Groups:
Graphics, PHP 5
Author:
Lisa Milne
Description:
This class can be used to create and manipulate images.

It can create a blank image or from a file in GIF, PNG or JPEG formats.

The class can perform several types of image manipulation operations like getting pixel colors, finding a solid band of a color, fill an area with a color, draw ellipses, rectangles, lines, text, rescale the image, apply filters, crop the image, etc..

The processed image can be saved to a file or dumped as the current script output.


WordPress 2.9, oh so fine

I want to make you mine, all the time… oh wait. Hello. I’m here on behalf of the entire WordPress development team and community to announce the immediate availability of WordPress version 2.9 “Carmen” named in honor of magical jazz vocalist Carmen McRae (whom we’ve added to our Last.fm WP release station). You can upgrade easily from your Dashboard by going to Tools > Upgrade, or you can download from WordPress.org. And of course, it wouldn’t be a major release without a short video summarizing some of the cool things about the new version:

The coolest new stuff from a user point of view is:

  1. Global undo/”trash” feature, which means that if you accidentally delete a post or comment you can bring it back from the grave (i.e., the Trash). This also eliminates those annoying “are you sure” messages we used to have on every delete.
  2. Built-in image editor allows you to crop, edit, rotate, flip, and scale your images to show them who’s boss. This is the first wave of our many planned media-handling improvements.
  3. Batch plugin update and compatibility checking, which means you can update 10 plugins at once, versus having to do multiple clicks for each one, and we’re using the new compatibility data from the plugins directory to give you a better idea of whether your plugins are compatible with new releases of WordPress. This should take the fear and hassle out of upgrading.
  4. Easier video embeds that allow you to just paste a URL on its own line and have it magically turn it into the proper embed code, with Oembed support for YouTube, Daily Motion, Blip.tv, Flickr, Hulu, Viddler, Qik, Revision3, Scribd, Google Video, Photobucket, PollDaddy, and WordPress.tv (and more in the next release).

2.9 provides the smoothest ride yet because of a number of improvements under the hood and more subtle improvements you’ll begin to appreciate once you’ve been around the block a few times. Here’s just a sampling:

  • We now have rel=canonical support for better SEO.
  • There is automatic database optimization support, which you can enable in your wp-config.php file by adding define('WP_ALLOW_REPAIR', true);.
  • Themes can register “post thumbnails” which allow them to attach an image to the post, especially useful for magazine-style themes.
  • A new commentmeta table that allows arbitrary key/value pairs to be attached to comments, just like posts, so you can now expand greatly what you can do in the comment framework.
  • Custom post types have been upgraded with better API support so you can juggle more types than just post, page, and attachment. (More of this planned for 3.0.)
  • You can set custom theme directories, so a plugin can register a theme to be bundled with it or you can have multiple shared theme directories on your server.
  • We’ve upgraded TinyMCE WYSIWYG editing and Simplepie.
  • Sidebars can now have descriptions so it’s more obvious what and where they do what they do.
  • Specify category templates not just by ID, like before, but by slug, which will make it easier for theme developers to do custom things with categories — like post types!
  • Registration and profiles are now extensible to allow you to collect things more easily, like a user’s Twitter account or any other fields you can imagine.
  • The XML-RPC API has been extended to allow changing the user registration option. We fixed some Atom API attachment issues.
  • Create custom galleries with the new include and exclude attributes that allow you to pull attachments from any post, not just the current one.
  • When you’re editing files in the theme and plugin editors it remembers your location and takes you back to that line after you save. (Thank goodness!!!)
  • The Press This bookmarklet has been improved and is faster than ever; give it a try for on-the-fly blogging from wherever you are on the internet.
  • Custom taxonomies are now included in the WXR export file and imported correctly.
  • Better hooks and filters for excerpts, smilies, HTTP requests, user profiles, author links, taxonomies, SSL support, tag clouds, query_posts and WP_Query

All of this and more is reflected in the over 500 tickets, bugs, and enhancements that WP developers in this release cycle.

This release included code from over 140 contributors, here’s everyone we were able to identify: aaroncampbell (Aaron Campbell), abackstrom (Adam Backstrom), aldenta (John Ford), alexkingorg (Alex King), [amilanov], antonylesuisse (Antony Lesuisse), apeatling (Andy Peatling), apokalyptik (Demitrious Kelly), arena (André Renaut), batmoo (Mohammad Jangda), Ben Dunkle, BenBE1987, Benjamin Flesch, bookchiq (Sarah Lewis), brianwhite, c0nstruct, caesarsgrunt (Caesar Schinas), CalebKniffen (Caleb Kniffen), chrisbliss18, chrisscott (Chris Scott), christoph179, coffee2code (Scott Reilly), [cross country flight], Curioso, davecpage (Dave Page), dcole07 (Dan Cole), dd32 (Dion Hulse), demetris (Δημήτρης Κίκιζας), Denis-de-Bernardy, dj-wp, dwright, eddieringle (Eddie Ringle), error (Michael Hampton), ewestp, fabifott, filosofo (Austin Matzko), greenshady (Justin Tadlock), gsnedders/link92 (Geoffrey Sneddon), hailin (Hailin Wu), hakre, hanilovesme, Harald Nesland, harrym, holizz (Tom Adams), ikonst, jacobsantos (Jacob Santos), janeforshort (Jane Wells), jamescollins (James Collins), jdub (Jeff Waugh), jeff_ (Jean-François “Jeff” VIAL), jeremyclarke (Jeremy Clarke), JeremyVisser (Jeremy Visser), jikamens, jmulley, Joern_W, johanee (Johan Eenfeldt), johnbillion (John Blackbourn), johnjamesjacoby (John James Jacoby), johnjosephbachir (John Joseph Bachir), JonathanRogers, joostdevalk (Joost de Valk), Jose Carlos Norte, josephscott (Joseph Scott), junsuijin, kevinB (Kevin Behrens), kometbomb, lilyfan (IKEDA Yuriko), [lostinlafayette], madhyde, MattyRob, mdawaffe (Michael Adams), Mittineague, miqrogroove, morfiusx, mrmist (David McFarlane), mtdewvirus (Nick Momrik), mysz, nacin (Andrew Nacin), nanochrome, nao (Naoko McCracken), nathanrice (Nathan Rice), nbachiyski (Николай Бачийски), niallkennedy (Niall Kennedy), nickohrn (Nick Ohrn), ninjaWR (Ryan Murphy), noel (Noël Jackson), Otto42 (Samuel Wood), pairg, peaceablewhale (Franklin Tse), prettyboymp (Michael Pretty), ProDevStudio, ramiy, redsweater (Daniel Jalkut), ruslany, sambauers (Sam Bauers), scribu, Sewar, Simek, simonwheatley (Simon Wheatley), sirzooro (Daniel Frużyński), sivel (Matt Martz), skeltoac (Andy Skelton), snakefoot, stephanreiter (Stephan Reiter), strider72 (Stephen Rider), taco1991, takayukister (Takayuki Miyoshi), tellyworth, tenpura, usermrpapa, utkarsh, Viper007Bond, vladimir_kolesnikov (Vladimir Kolesnikov), VoxPelli (Pelle Wessman), [voyou1], wahgnube, waltervos, westonruter (Weston Ruter), wnorris (Will Norris), xenlab (Eric Marden), yoavf (Yoav Farhi). Wowza!

2.9 has been an exciting development cycle, and I must say it has whetted our appetite for 3.0, which is coming next (probably this spring) and will include at the very least the merge of MU with the WordPress core, and a new default theme. We can’t wait to start working on it. But first, some Carmen McRae tunes and a beer. Join us! :)

(After you upgrade, of course!)

I hope everyone is having a wonderful holiday season.

2010: A Theme Odyssey

After the video from the core team meetup was posted, the topic that seemed to get the most attention on Twitter and various community sites was Matt’s announcement that there would be a new default theme in 2010, so I thought I’d start with that as the first of the meetup summaries.

When Kubrick was bundled with core back in 2005, it was a cutting edge theme. Custom header, rounded corners, clean design… if you were using WordPress back then, let’s face it, you were impressed. Time moves on, though, fashions change, new styles become old standards, and what was once cutting edge suddenly seems old-fashioned and out of date.

So, a new bundled theme in 2010? We think it’s a good idea. Something nice and light that can serve as a good example theme, include newer theme-based features, and look nice (and current) on a public site. We’d like to introduce a new default theme with version 3.0, which is anticipated to come out in mid-2010 (hence the name), and think it would be good for it to blend well aesthetically with WordPress itself.

I’d been advocating moving toward Elastic, the theme framework/WYSIWYG theme editor that was one of our Google Summer of Code student projects, but after some discussion I agreed with the guys that while Elastic is awesome and should be promoted as a community development project, it’s heavier than a default theme needs to be. The default theme doesn’t need to be a full-featured framework, it just needs to work well, look awesome, have good code and be a good starting point for beginning themers. We were thinking of a fairly minimalist design that would make it easy to customize.

As for the code, there’s a question of if it will really be a new theme, or if it will be a re-styled and updated version of Kubrick.  We don’t know the final answer to that yet, because the ultimate decision will be made with the community’s input, but we believe all new markup is the way to go. What do you think? Without venturing into theme framework territory, are there features you think a new default theme should have? Some people have been talking about it on Trac over the past year, if you wonder what’s been tossed around so far. I thought about posting a poll here (you know how I love posting polls to gauge opinion), but in this case I think a discussion thread might be better, so that each vote can explain the reason behind it. So, have an opinion on what a new default theme should include? Weigh in at the forums.

Powered by Gewgley