[wp-hackers] 1.5.2 or on to 1.6?

Mark Jaquith mark.wordpress at txfx.net
Sun May 22 10:43:48 GMT 2005

Okay, take two... apparently Thunderbird butchered that last e-mail.
So excited that it's finally gotten to this point!  I say that 1.5.x 
only be extended for major bugs or security issues.  I really doubt 
there are any major bugs, so unless any security issues pop up, I say we 
move onward and upward.

Here are some of my ideas.  I'm just letting it all spill out, so don't 
take any of this as properly formatted idea... I'm just saying 
everything I've been thinking for the past year of working with 
WordPress.  So if you think something is stupid, just say so and move 
on... I don't want my half-baked ideas to start some big thing. ;-)

- Backwards compatibility
I think we should look at changes that will possibly break WP 1.2 
plugins, if the changes are warranted.  1.2 was the first showing for 
WordPress plugins, and a whole lot of that has changed since then, 
breaking many plugins in the process.  Basically, what I'm saying is 
that we shouldn't let backwards compatability with WordPress 1.2 hold us 
back from pushing the project forward.  It might be good to dedicate a 
Codex page to "changes that might break older stuff" so that plugin 
authors have fair warning of what they'll need to do for the next version.

- mod_rewrite defaults
A lot of people have problems making mod_rewrite rules because they 
choose a permalink structure that doesn't make sense, or that is poorly 
supported between different mod_rewrite implementations.  Category-based 
permalinks are especially troubling.  So for this reason, I think we 
should offer, instead of just a blank box, a list of maybe 3 or 4 "known 
good presets."

[invent your own]

Then the "invent your own" box should include a warning that not all 
structures will work, and it is safest to stick with the known good 
presets.  This would save a lot of time in the support forums.  People 
try all sorts of crazy permalink schemes and when they don't work, they 
do so in strange and unexpected ways, so they are hard to troubleshoot.  
I think if we offer the safe presets as radio selects, a lot of that 
will be avoided.

- plugin hooks
More hooks, please!  We should have a plugin hook brainstorming 
session.  I never want to have to hack WordPress core again, and I want 
to minimize the number of functions that I have to copy, rename, and 
modify.  Every time someone says "Hm, if I had a hook here, I could do 
X," we should consider adding a hook.

- Pages
Pages need some love.  We need page drafts, page/post versioning, 
ability for multiple people to work on pages, ability for "submit draft 
only" authors to submit a modified entry for approval without changing 
the original.

- "submit draft only" authors
I can think of lots of cool uses for this functionality, such as blogs 
that allow guest posters without having to explicitly choose authors 
ahead of time.  We need things to be as streamlined and easy as possible 
for this use.  We need better management and presentation of "please 
approve" drafts.

- echo/return/return-style
We've made a lot of progress with making sure that functions can echo as 
well as return.  We need to keep this going, as well as making sure that 
we offer ways to return the requested data as an array of objects.  
Things like this will save plugin developers a lot of time and frustration.

- get_currentuserinfo()
This is uuuugly.  It's a function that you just call, and it populates a 
bunch of global variables.  I want to do stuff like  <?php if 
(wp_user_level() > 5 && wp_user_login() != 'admin') : ?> and stuff like 
that.  This business of "did I call get_currentuserinfo()?  Are the 
variables I need declared global? is quite annoying.  Maybe there's a 
better way to do this, but I sure haven't seen anyone using it...

- File Upload
The file upload feature needs a lot of work, especially when it comes to 
handling images.  Some might argue that this should be left to a plugin, 
but I'd disagree.  People expect their blog software to hold their hand 
with regards to posting images, and the current code does a really 
half-assed job of it.  We need to generate more code automatically, and 
actually check whether or not a thumbnail could be generated.  We need 
an option of a) thumbnail display, full image link b) thumbnail display, 
pop-up full image link, c) full image display.  We need better resizing 
options (specifically, max WIDTH, instead of max biggest side.  This 
really matters for fixed width layouts.)  We need to be able to upload 
images from the Write screen without losing our place.  We need the code 
we want automatically inserted into the post.  We need to be able to 
manage our uploaded images/files from within WordPress.

- Theme Installation
I think we should at least consider creating a way for themes to be 
download/installed from within WordPress (or interfacing between the 
themes site and WordPress).  It would be really cool if you could choose 
from maybe 10 themes immediate after install! (not my idea... props to 
whoever suggested this).

- Critial update notification
There should be a feed monitored by WP for security updates.  Say we 
find a security issue in and have to issue an emergency there should be a big red "UPGRADE NOW OR DIE!" box visible 
on every page of the admin interface.  There are still people out there 
on WordPress 1.2 or 1.5 and a lot of the time it is because they didn't 
see a need to update.  We need to have a way of clearly communicating to 
people the need to upgrade.

- MagpieRSS
We should keep Magpie up to date, and make it really easy for plugin 
devs to use it to do awesome feed-related stuff.

- Content pre-formatting
I know the issue of caching the formatted post has been relegated to 
plugins (this one looks great http://www.vapourtrails.ca/wp-preformatted 
) but I think we should consider making this part of WordPress.  IIRC, 
TextPattern does this.  This could really open up a lot of possibilities 
with markup.  I've disabled the acronym plugin, because all the regex 
stuff was taking too long.  Searching every post for 200+ regexes isn't 
really something that should be done on the fly.  Obviously some filters 
have to be run live, like Google Hilight, so there should be an 
additional plugin hook created for this use (like 
"the_content_dynamic").  This would really help that "Every WordPress 
version is faster than the previous version" goal. :-)

- Optimization
Ryan Boren did some excellent work on improving WordPress' caching, and 
we should be on the lookout for code that could be improved thusly.  
There shouldn't be any redundant queries or two queries when one could 
do the job.

- Dashboard
I think this goes without saying, but the Dashboard needs some love.  As 
much as I enjoy Matt's "asides," they don't belong there.  There should 
be tons of hooks for plugin authors.  I want total control over the 

- Beer fetching
Because I'm thirsty, dammit!

Anyway, that's all that comes to mind at the moment.  I'm looking 
forward to what's in store.

More information about the wp-hackers mailing list