﻿__group__	ticket	summary	owner	component	_version	priority	severity	milestone	type	_status	workflow	_created	modified	_description	_reporter
Next Release	15081	Search Form should use type='search'	SergeyBiryukov	Accessibility		normal	normal	3.6	enhancement	closed	needs-codex	2010-10-09T16:30:17Z	2013-05-16T16:03:25Z	same reasons as #15080 	jorbin
Next Release	23891	Post Formats: tab accessibility		Accessibility	trunk	normal	critical	3.6	task (blessed)	new	needs-codex	2013-03-29T10:32:49Z	2013-05-14T14:21:38Z	Post Format UI should allow for natural tabbing through the editable fields.	markjaquith
Next Release	23792	Disallow moving of locked posts to the trash		Administration	trunk	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-03-15T22:29:01Z	2013-03-28T02:21:36Z	"Currently we don't check post locks when bulk moving posts to the trash on the All Posts screen and in wp_ajax_trash_post(). A post locked check was added when moving to the trash from the New/Edit Post screen in http://core.trac.wordpress.org/changeset/23661#file5.

The new UI on the All Posts screen prevents selecting a locked post for bulk actions, but we still should make sure a post is not locked right before moving it to the trash."	azaozz
Next Release	13736	Review codex links from Help Text		Administration	3.0	normal	normal	3.0	defect (bug)	closed	needs-codex	2010-06-05T08:23:41Z	2010-06-12T05:13:53Z	"

All links that points to Codex need to be reviewed.

A few of them are just placeholder (for example:  http://codex.wordpress.org/Super_Admin_Sites_SubPanel) which is fine. Why not create a placeholder for other sub panel/menu too?

For example, Comment-> Edit Comment-> Help tab, under ""More information:"" there's a link to  http://codex.wordpress.org/Administration_Panels#Comments. Why not add additional link to  http://codex.wordpress.org/Comments_Edit_Comment_SubPanel?

I think it's better to add an empty placeholder page in Codex rather than adding any existing Codex page that are too general, useless or obsolete. At least we can fill the empty Codex page after the release.
"	zeo
Next Release	24203	Remove the_title_attribute() from anchors with the_title() as text	lancewillett	Bundled Theme	3.0	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-04-26T13:28:18Z	2013-04-30T15:00:30Z	"This:

`<a href=""(link)"" title=""Permalink to Post Title"">Post Title</a>`

is redundant. It is an anachronism from earlier themes that does nothing for accessibility, search engines, or general users, and if anything, harms all of the above.

We should remove the_title_attribute() whenever the anchor text is the_title().

More: http://make.wordpress.org/accessibility/2013/04/23/post-titles-in-attributes/

Patch for four bundled themes incoming."	nacin
Next Release	21344	"Add hook ""restrict_manage_comments"" to class-wp-comments-list-table.php for additional filtering by plugins"	nacin	Comments	3.4.1	normal	normal	3.5	enhancement	closed	needs-codex	2012-07-22T17:08:38Z	2012-12-17T03:17:18Z	"The comments list (class-wp-comments-list-table.php) in wp-admin needs a hook to allow plugins to do additional filtering of comments, just like class-wp-posts-list-table.php on line 220.

{{{
do_action( 'restrict_manage_posts' );
}}}

The new line of code would be in class-wp-comments-list-table.php:

{{{
do_action( 'restrict_manage_comments' );
}}}

A one-line patch (attached) does the trick."	hardy101
Next Release	21589	get_term_feed_link without filter for tag archive	nacin	Feeds	3.4.1	normal	minor	3.5	defect (bug)	closed	needs-codex	2012-08-15T12:19:46Z	2012-08-30T03:49:45Z	"In function ''get_term_feed_link'', located in '''link-template.php''', line 627:
{{{
$link = apply_filters( 'category_feed_link', $link, $feed );
}}}

should be changed into:
{{{
$link = apply_filters( 'tag_feed_link', $link, $feed );
}}}

otherwise, it is not possible to edit or inhibit the feed URL in tag archives."	andrea.r
Next Release	19210	Add missing filters to remaining link(url) functions in feed.php	nacin	Feeds	3.2.1	normal	normal	3.6	enhancement	closed	needs-codex	2011-11-08T21:36:47Z	2013-03-07T16:01:59Z	"All of the url-getting functions in wp-includes/feed.php use rss-specific filters on the resulting url except for the comment_link() & comments_link_feed() functions.  

This patch adds a filter for massaging the url before it's sent through esc_url.  

This fixes a current bug with the core dev team's recommended solution for root-relative urls, whereby adjusting the filters on get_permalink will inadvertantly and negatively affect rss feeds."	MarcusPope
Next Release	11446	Show ellipsis after truncated filename in Media dialog	SergeyBiryukov	General	2.9	normal	normal	3.6	defect (bug)	closed	needs-codex	2009-12-15T16:32:34Z	2013-05-09T00:22:03Z	"Ellipses should be shown after truncated filenames in the Media dialog (and anywhere else where they are truncated, actually).

Otherwise it is sometimes hard to identify pictures."	caesarsgrunt
Next Release	19067	Duplicate functionality in core: size_format() and wp_convert_bytes_to_hr()	SergeyBiryukov	General	3.2.1	normal	trivial	3.6	enhancement	closed	needs-codex	2011-10-27T14:15:56Z	2013-05-16T16:55:53Z	"I was looking through core to see if there was any function I could utilize to format byte int to HR. I found the following two functions:

size_format() - /wp-includes/functions.php
wp_convert_bytes_to_hr() - /wp-admin/includes/template.php

They both do the same kind of thing but slightly differently. Is there any need for `wp_convert_bytes_to_hr()`? from what I can see `wp_convert_bytes_to_hr()` is only used once in core and where it is used could be replaced with `size_format()`."	l3rady
Next Release	17950	Introduce wp_registration_url()	nacin	General		low	normal	3.6	enhancement	closed	needs-codex	2011-06-30T17:17:53Z	2013-04-22T22:54:41Z	It would be handy to have a wp_registration_url() template tag, to complete the wp_login_url() and wp_logout_url() triad.	scribu
Next Release	16585	Proposed changes to wp enqueueing and shortcode handling	Jester831	General	3.1	normal	major		enhancement	closed	needs-codex	2011-02-17T22:31:27Z	2011-02-18T00:25:12Z	"Currently, the only way for a programmer to avoid loading their scripts/css on every page is to either peek through the_content() for their shortcode and enqueue accordingly, or to use their shortcode handler to set a boolean for doing a conditional script print after partially loading a page. While this is certainly feasible, it's largely unused and the majority of plugins overload css and js unnecessarily. 

I propose that instead of operating under the expectation that all programmers do this, we instead implement a mechanism to do this solely through wp_enqueue_script and wp_enqueue_style. 

This can be achieved by storing a list of used shortcode tags within a pages meta, likely while saving a post or page, that can later be used as a conditional check with, among others, wp_enqueue_script and wp_enqueue_style. 

A new optional parameter would be then added to wp_enqueue_script and wp_enqueue_style that would check said meta, or potentially other meta, and conditionally load, without the requirement of any further coding. "	Jester831
Next Release	22913	"Files ""corrupted"" when streamed to file via HTTP API"		HTTP	3.2	normal	normal	3.6	defect (bug)	closed	needs-codex	2012-12-13T11:51:11Z	2013-05-16T17:09:54Z	"The plugin updater reports plugins that are in need of an update and will initiate the automatic update of plugins from behind our proxy server (in other words, the connection through the proxy server is working for most of Wordpress).

During auto update however it fails with 

{{{
An error occurred while updating Postie: The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature.
}}}

debug.log in wp-content contains
{{{
[13-Dec-2012 11:41:18 UTC] PHP Notice:  has_cap was called with an argument that is <strong>deprecated</strong> since version 2.0! Usage of user levels by plugins and themes is deprecated. Use roles and capabilities instead. in /Users/sam/Dropbox/Work/wordpress/wp-includes/functions.php on line 2908
}}}


If I then perform the same update on a different network connection (which does not need to pass through the proxy server) the update installs correctly with no problems.
In this instance I have tested with Postie, but the same applies to other plugins.

Proxy supports HTTP(S), but not FTP.

Server is running Mac OS X 10.7.5, Apache 2.2.22, PHP 5.3.15"	samthorne
Next Release	24265	Clean up revision.php docblocks	azaozz	Inline Docs	trunk	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-05-05T02:34:04Z	2013-05-16T19:37:31Z	"Cleans up inline docs for several new functions in 3.6, several older functions that lacked docblocks, redundant @package and @subpackage tags throughout and other small clarifications.

Patch attached."	DrewAPicture
Next Release	23121	Correct inline doc return value for WP_Filesystem_Base::gethchmod	SergeyBiryukov	Inline Docs	2.7	normal	trivial	3.6	defect (bug)	closed	needs-codex	2013-01-04T17:26:59Z	2013-05-16T18:09:19Z	Minor correction for inline docs in `WP_Filesystem_Base::gethchmod()` to indicate string (not int) return value.	bananastalktome
Next Release	24343	Correct inline docs for hook parameters in wp_delete_term()	SergeyBiryukov	Inline Docs	2.6	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-05-15T08:09:53Z	2013-05-16T19:42:55Z	"According to `@uses` comment in `wp_delete_term()`, `delete_term` and `delete_$taxonomy` actions receive term object and term ID as the first two parameters: [[BR]]
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/taxonomy.php#L1754

This isn't the case. `$term` is an ID, so the first two parameters are term ID and term taxonomy ID: [[BR]]
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/taxonomy.php#L1838

The comment also doesn't reflect the change in [21939]."	SergeyBiryukov
Next Release	22885	Correct the PHPDOC for the_post_thumbnail	markjaquith	Inline Docs	3.5	normal	normal	3.6	defect (bug)	closed	needs-codex	2012-12-12T13:05:34Z	2013-05-16T17:49:11Z	"It currently says a string is an int.

Let's call a duck_ a duck_."	georgestephanis
Next Release	23058	Corrected inline docs for cache.php	SergeyBiryukov	Inline Docs	2.5	normal	normal	3.6	defect (bug)	closed	needs-codex	2012-12-26T12:28:46Z	2013-05-16T18:04:11Z	"See [6543].

There are some copy&paste issues."	ocean90
Next Release	17515	Flaw in add_meta_box/do_meta_boxes	markjaquith	Inline Docs	3.1.2	normal	normal	3.6	defect (bug)	closed	needs-codex	2011-05-19T18:13:45Z	2013-05-16T16:42:22Z	There is a mysterious, undocumented 7th parameter in the add_meta_box() function, named $callback_args. This is to be an array of arguments that are passed into the callback function. The problem is that it the arguments are not passed into the callback function, but rather the whole $box object is instead. While I realize that one can access the arguments passed in via the $box object, I don't feel this is the proper method. I am attaching a patch to correctly pass the arguments.	jfarthing84
Next Release	23791	Missing @param in wp_get_attachment_image() docs	SergeyBiryukov	Inline Docs		normal	normal	3.6	defect (bug)	closed	needs-codex	2013-03-15T16:59:23Z	2013-05-16T19:13:01Z	There's no `@param` tag for the `$attr` attribute in the DocBlock for `wp_get_attachment_image()`.	GaryJ
Next Release	22905	PHPDoc refresh for register_sidebar()	helen	Inline Docs		normal	normal	3.6	defect (bug)	closed	needs-codex	2012-12-13T02:41:51Z	2013-05-16T17:53:14Z	"Happened to notice that the docs for `register_sidebar()` include an example where the string argument had parameters separated by semi-colons, which `parse_str()` doesn't do. 

Refreshed block to be a bit clearer/cleaner while changing that. Patch attached."	jeremyfelt
Next Release	22187	Add docblocks to wp-signup.php	SergeyBiryukov	Inline Docs	3.4	normal	minor	3.6	enhancement	closed	needs-codex	2012-10-14T17:30:43Z	2013-05-16T17:52:06Z	"It's my understanding that wp-signup.php has sort of fallen by the wayside in the recent past and could use some love. By no stretch of my imagination do I think I know all there is to know about what needs to happen here, but doesn't hurt to get the ball rolling.

Some action items I can already suggest would be:

* Make it possible to overload the hard-coded CSS
* Add some docblocks for the many functions in the file
* Cleanup coding standards and optimize strings
* ???"	DrewAPicture
Next Release	24314	Documentation Improvement wp_dashboard_quota		Inline Docs	trunk	normal	trivial	3.6	enhancement	closed	needs-codex	2013-05-11T02:07:54Z	2013-05-16T19:40:14Z	"https://github.com/h4ck3rm1k3/WordPress/commit/91ff44ef6438f6e095666e15e901339ea05b0f75
{{{
wp-admin/includes/dashboard.php
@@ -1114,7 +1114,13 @@ function wp_dashboard_rss_control( $widget_id, $form_inputs = array() ) {
   wp_widget_rss_form( $widget_options[$widget_id], $form_inputs );
 }
 
-// Display File upload quota on dashboard
+
+/**
+ * Display File upload quota on dashboard.
+ * Called via action activity_box_end which is called by do_action from the function wp_dashboard_right_now
+ * that is called indirectly from wp_add_dashboard_widget to the dashboard_right_now.
+ */
}}}"	h4ck3rm1k3
Next Release	23313	inline doc additions in wp-includes/formatting.php	SergeyBiryukov	Inline Docs	2.7	normal	trivial	3.6	enhancement	closed	needs-codex	2013-01-29T15:29:44Z	2013-05-16T18:34:45Z	"Added inline documentation for two functions in `wp-includes/formatting.php` (`sanitize_title_for_query` and `normalize_whitespace`) that lacked them.

Very minor, but it brings `wp-includes/formatting.php` to 100% inline doc coverage :)"	bananastalktome
Next Release	17305	"wp_mail() does not accommodate address format ""Name <address@tld.com>"""	westi	Mail	3.2	normal	normal	3.2	defect (bug)	closed	needs-codex	2011-05-02T16:02:00Z	2011-08-17T20:26:55Z	"The wp_mail() function does not accommodate addresses in the form ""Name <address@tld.com>"". The phpmailer class chokes on this format, as the whole string is passed to its $address parameter rather than the constituent parts being passed as $address and $name. This does not likely affect a great many mailer functions in core, but it does stand to affect plugins (and does affect some wpcom plugins). The attached patch resolves the issue. 

If I can provide any further information to increase the likelihood of landing this pretty quickly so that it can land on wpcom, please speak up."	dllh
Next Release	23325	wp_crop_image does not return WP_Error when save fails	SergeyBiryukov	Media	3.5	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-01-30T12:38:52Z	2013-05-16T18:36:47Z	"wp_crop_image() assigns 
{{{
$result = $editor->save( $dst_file );
}}}
but never actually tests/returns if $result is WP_Error

"	macbrink
Next Release	21092	Media uploader insert button doesn't respect the current post type	nacin	Media		normal	normal	3.5	enhancement	closed	needs-codex	2012-06-28T03:45:41Z	2012-12-17T03:12:00Z	"The media uploader's insert button always says ""Insert Into Post"", even if you're editing another post type.  It's especially confusing if you're editing a custom post type that doesn't look anything like a post, like an image slider or product.

The button should ideally say ""Insert into [singular post type]"" -- for example, ""Insert Into Page""."	evansolomon
Next Release	14768	Incorrect wp_nav_menu behavior when theme_location is set but no menus exist/assigned	jnthnlstr	Menus	3.0.1	normal	normal		defect (bug)	closed	needs-codex	2010-09-02T22:00:11Z	2010-12-08T19:15:19Z	"The Codex Function Reference for '''wp_nav_menu''' states:
{{{
Given a theme_location parameter, the function displays the menu assigned to that location, or nothing if no such location exists or no menu is assigned to it.
}}}

In my theme functions.php, I have registered two nav menu locations:
{{{
	register_nav_menus( array(
		'primary' => __( 'Primary Navigation' ),
		'secondary' => __( 'Secondary Navigation' ),
	) );
}}}

In my theme header.php, I call for the location menus:
{{{
wp_nav_menu( array( 'container' => 'div', 'container_id' => 'index-nav', 'theme_location' => 'secondary' ) );
wp_nav_menu( array( 'container' => 'div', 'container_id' => 'toc-nav', 'theme_location' => 'primary' ) );
}}}

I do not have any menus created or assigned to those locations. However, based on the Codex, I expect that nothing will be displayed.

However, the '''wp_nav_menu''' functions are falling back to the callback function, '''wp_page_menu'''. That decision is made in this part of the '''wp_nav_menu''' function:

{{{
	// If no menu was found or if the menu has no items and no location was requested, call the fallback_cb if it exists
	if ( ( !$menu || is_wp_error($menu) || ( isset($menu_items) && empty($menu_items) && !$args->theme_location ) )
		&& ( function_exists($args->fallback_cb) || is_callable( $args->fallback_cb ) ) ) {
}}}

This logic overrides the statement in the Codex. If by this point no menu has been found (and it won't be, because each of the checks before get overrided by there being a {{{$args->theme_location}}} set), I automatically use the callback function–no matter if I have specified a theme_location or not. This is due to the first OR parameter ""{{{!$menu || ...}}}"". The only way my theme_location specification prevents this is if a menu ''was'' found. But that's impossible because theme_location prevents it from being found.

I think the pattern from the previous checks should be carried on to this final check. Not sure if this would break some other logic, but it would at least match the Codex description.

{{{
	// If no menu was found or if the menu has no items, and no location was requested, call the fallback_cb if it exists
	if ( ( !$menu || is_wp_error($menu) || ( isset($menu_items) && empty($menu_items)  ) )
		&& ( function_exists($args->fallback_cb) || is_callable( $args->fallback_cb ) ) 
		&& !$args->theme_location) {
}}}"	almostdaniel
Next Release	16358	Menu items get deleted with the user who created them	ryan	Menus	3.0	high	major	3.4	defect (bug)	closed	needs-codex	2011-01-24T08:17:06Z	2012-05-08T18:55:30Z	"Say a user edits a nav menu or two, adding some menu items. Then, said user gets deleted. Rut roh:

`SELECT ID FROM $wpdb->posts WHERE post_author = %d`

The menu items were tied to them, therefore they are deleted.

We need to ensure that wp_delete_user() doesn't touch nav menu items.

This has repercussions for any post type that doesn't care about authors. Tempted to actually check, post_type_supports(), which is typically reserved for UI-level actions. Otherwise, post_author always gets stored, and that seems to be just a bit of a problem. (It could be argued this is a UI-level check, in terms of confirming things to delete.)

Unsure how this didn't come up previously. Reported by flashingcursor over Twitter."	nacin
Next Release	23508	Nav Menu Saving: get_nav_menu_locations() can return false, code expects array	SergeyBiryukov	Menus	trunk	normal	normal	3.6	defect (bug)	closed	needs-codex	2013-02-19T00:31:24Z	2013-03-29T03:49:22Z	"`get_nav_menu_locations()` can return `false` (it is right now with Twenty Thirteen) but `/wp-admin/nav-menu.php` tries to always treat it as an array:

https://core.trac.wordpress.org/browser/trunk/wp-admin/nav-menus.php?rev=23441#L277

This throws a warning and breaks stuff."	Viper007Bond
Next Release	16738	Add filter for attributes on menu item links	SergeyBiryukov	Menus		normal	normal	3.6	enhancement	closed	needs-codex	2011-03-03T12:04:08Z	2013-03-07T16:02:16Z	"I find myself needing to change the attributes of the link element of each menu item to add some classes. Currently I can do this by extending and substituting ```Walker_Nav_Menu```, but that the ```start_el``` method I replace is fairly long and I'm nervous of changes to core breaking my kit in the future. Much better to be able to hook a filter, IMO.
"	simonwheatley
Next Release	23770	Restore 'Locations' meta box functionality as secondary tab in Menus UI	lessbloat	Menus	trunk	normal	normal	3.6	enhancement	closed	needs-codex	2013-03-14T17:07:19Z	2013-04-18T00:24:56Z	"Following discussions on #23716, a positive set of [http://make.wordpress.org/ui/2013/03/12/we-decided-to-test-bringing-the-theme-locations/ user tests], and an [https://irclogs.wordpress.org/chanlog.php?channel=wordpress-dev&day=2013-03-14&sort=asc#m574392 IRC chat] last night, we've opted to go with re-adding the 'Theme Locations' functionality using a tabbed approach in the Menus UI.

This would be geared more toward power users and would serve as secondary functionality to the checkboxes UI introduced in [23441]. It would allow power users to change all theme location settings at once just like in pre-3.6.

@markjaquith provided a rough mockup of the secondary theme locations UI here: http://cl.ly/image/3u1x2i1W3W2t

Menus UI Refresh tracking ticket: #23607"	DrewAPicture
Next Release	23641	Tweaks to menu management box	markjaquith	Menus	trunk	normal	normal	3.6	enhancement	closed	needs-codex	2013-02-27T16:36:28Z	2013-03-29T03:50:06Z	"In office hours on Monday we discussed making some changes to the menu management box currently at the top of the menus screen (when you have more than one menu).

We are going to show the box at all times with the following:

'''Zero menus:''' Edit your menu below, or [# start with a blank menu][[BR]]
'''One menu:''' Edit your menu below, or [# add a new menu][[BR]]
'''Multiple menus:''' Select a menu to edit [DROPDOWN] [SELECT] or [# add a new menu]"	lessbloat
Next Release	23119	UX Improvements to nav-menus.php		Menus		normal	normal	3.6	enhancement	closed	needs-codex	2013-01-04T14:52:36Z	2013-04-09T20:50:46Z	"There are some UI issues with nav-menus.php that have been around for a while (like tabs being confusing for managing multiple menus). 

Knowing this, we ran a couple of [http://make.wordpress.org/ui/2013/01/01/i-ran-two-users-through-a-set-of/ menus-based user tests] hoping to find additional ideas for improvements. 

Here's a list of potential enhancements that I'd like to test for 3.6:

A) Managing menus as tabs can be confusing.  Sometimes users think the tabs represent the menu itself, and they'll create multiple menus by mistake (thinking the tabs represent menu items).  Tabs also pose a problem, after you get 10+ menus.  I'd like to test the idea of removing the tabs altogether.  My thought was to add a ""add menu"" link next to the header (similar to other areas of the admin), and move menu selection to a drop down select box.  

B) In the ""add new menu"" view, new users get confused as to what they are supposed to do.  Both of the users we tested wanted to click the ""Create Menu"" button first (not noticing the menu name field). I'd like to test adding focus to the menu name field, and moving the ""Create Menu"" button closer to the name field (just for this add new screen).

C) The ""theme locations"" section appears to be semi-confusing to users. I'd like to test moving the functionality to the bottom of the page, and changing the formatting, so that it no longer matches the formatting of the rest of the left column, and perhaps changing the wording a bit.

D) I'd like to add an intro sentence which explains that menus can be used as custom navigation within your theme (we'd link to ""theme locations"" at the bottom of the page), or within widgets (adding a link to widgets).  It will just be a quick, short sentence to introduce the concept of menus, while at the same time exposing the fact that menus can be used in widgets.

E) There's a lot of wasted space in the left column.  Moving ""theme locations"" to the bottom of the page will free up a little space, but I'd like to see if there is anything else we can do to eliminate the need to scroll.  I'd like to test changing the left column to an accordion (using jQuery UI).  Thus eliminating a bunch of padding, and showing only one menu items options at a time.  We'll test it and see how it performs.

F) When a user saves a change to ""theme locations"" it would be nice to give them a link to preview their new menu.

Once we complete some patches, we'll test these enhancements by re-running more users through the same set of user tests."	lessbloat
Next Release	23450	Refactor menu item meta boxes as accordion	markjaquith	Menus	trunk	normal	normal	3.6	task (blessed)	reopened	needs-codex	2013-02-11T14:27:58Z	2013-05-14T18:56:41Z	Once #23449 is complete, we are going to refactor the menu items meta boxes on nav-menus.php to reflect the same design as the accordion in the customizer.  We've already [http://core.trac.wordpress.org/ticket/23119#comment:181 prototyped] & [http://make.wordpress.org/ui/2013/02/07/heres-round-7-of-our-menus-usability-tests/ tested] this design on users, and it seems to provide a better UI.	lessbloat
Next Release	12884	Taxonomy Pages aren't properly redirected on main site when using Multi Site Subdirectories		Multisite	3.0	normal	normal	3.0	defect (bug)	closed	needs-codex	2010-04-07T01:46:39Z	2010-05-25T15:16:33Z	"When switching to multi-site and using subdirectories, blog/ is prepended to the permalinks.  This breaks links to mysite.com/category/*anything* and mysite.com/tag/*anything* (and I'm also assuming custom taxonomies, but I haven't checked that.  


This is related to [12002] and could be fixed by fixing that, but some solution should be made for 3.0, even if that solution is better documentation on the network.php screen so users aren't surprised"	jorbin
Next Release	19796	Multisite installs should work with WordPress in a subdirectory	markjaquith	Multisite		high	normal	3.5	task (blessed)	closed	needs-codex	2012-01-10T21:46:53Z	2012-12-17T00:37:34Z	"Currently, Multisite cannot be enabled if WordPress is installed within a subdirectory. This prevents you from using WordPress as an SVN or Git external. We should have parity.

Resolved: find a way to make Multisite work if WordPress is in a subdirectory."	markjaquith
Next Release	22960	Add functions to extract images from content, attached to post, [gallery], or arbitrary string	markjaquith	Post Formats	3.5	normal	normal	3.6	defect (bug)	closed	needs-codex	2012-12-16T09:47:49Z	2013-04-19T18:32:46Z	Sorry if this is not a bug. If we create the gallery with the existing image from the media, we cannot get the images from that post using `get_children()` or `do_shortcode()` or `get_posts()`. It only returns which are actual attachments to that post. And as of WordPress 3.5, galleries are no more related to particular post. Any thoughts on this?	kcssm
Next Release	23570	Add functions to extract a URL from an arbitrary string, HTML, or the current $post		Post Formats		normal	normal	3.6	enhancement	closed	needs-codex	2013-02-21T02:02:48Z	2013-04-19T19:11:24Z	"= Scenarios

My post has a format of ""link""
- My post has format meta for URL
- OR - My post content is a URL
- OR - My post contains an <a> tag with an href
- OR - My post content is a URL followed by new line(s) and commentary

An arbitrary string might be only a URL, a URL with some commentary, or a blob of HTML that might contain an <a> with an href attribute 

Introduce `the_link()` and `get_the_link( $id = 0 )` which will arbitrarily extract a URL from a post's content.

Introduce `get_content_link( &$content, $remove = false )` to find a URL in an arbitrary string meeting the above criteria and optionally remove the found URL if it wasn't embedded in HTML content."	wonderboymusic
Next Release	23572	Add functions to parse Audio / Video data out of arbitrary content or a post	markjaquith	Post Formats		normal	normal	3.6	enhancement	closed	needs-codex	2013-02-21T06:34:57Z	2013-04-12T18:02:53Z	"= Scenarios

== Audio

After realizing that a post has a format of audio but no metadata for audio:
- Theme does not support Audio, but the content contains an <audio>, <object>, <embed>, or <iframe>
- Theme does not support Audio, but the content is a URL
- Theme does not support Audio, but the first line of content is a URL followed by a new line(s) and some commentary
- Theme does not support Audio, but the post has attached audio, and core or a plugin has an [audio] shortcode
- Theme does not support Audio, but the post has attached audio, and core or a plugin does not have an [audio] shortcode

Introduce `the_audio()`, `get_the_audio( $id = 0 )`, `get_post_audio( $post_id = 0 )`, `get_content_audio( &$content, $remove = false )`

== Video

After realizing that a post has a format of video but no metadata for video:
- Theme does not support Video, but the content contains an <video>, <object>, <embed>, or <iframe>
- Theme does not support Video, but the content is a URL
- Theme does not support Video, but the first line of content is a URL followed by a new line(s) and some commentary
- Theme does not support Video, but the post has attached video, and core or a plugin has an [video] shortcode
- Theme does not support Video, but the post has attached video, and core or a plugin does not have an [video] shortcode

Introduce `the_video()`, `get_the_video( $id = 0 )`, `get_post_video( $post_id = 0 )`, `get_content_video( &$content, $remove = false )`

== Helper functions

Introduce `get_tag_regex()` and `shortcode_exists( $tag )`
"	wonderboymusic
Next Release	23625	Add function to extract or parse chat as structured data		Post Formats		normal	normal	3.6	feature request	closed	needs-codex	2013-02-26T08:29:37Z	2013-04-22T17:30:48Z	"Scenarios

1. You have a blob of content representing a chat transcript and optionally some commentary and you want to extract the chat as structured data, and optionally, remove it from the content
2. You want to extract the chat from a post's content to theme it, with or without the optional commentary, outside of `the_content()`

Introduce `get_the_chat( $id = 0 )` and `get_content_chat( &$content, $remove = false )`

Here is an example to test:

{{{
$chat =<<<CHAT
Scott: Hey, let's chat!
	This is more text
Helen: No.

Nacin: Cool.

Scott: Hey, let's chat!
Helen: No.

Scott: Hey, let's chat!
Helen: No.

Scott: Hey, let's chat!
Helen: No.

This is the commentary on the chat.
CHAT;

print_r( get_content_chat( $chat, true ) );
echo $chat;
exit();
}}}

Here is the format of the structured chat data:

{{{
$stanzas = array(
      array(
          array(
              'author' => 'Scott',
              'messsage' => ""Hey, let's chat!""
          ),
          array(
              'author' => 'Helen',
              'message' => 'No.'
          )
      )
  )
}}}"	wonderboymusic
Next Release	19570	Post Formats: admin UI + fallbacks for themes that don't support them		Post Formats	3.3	normal	normal	3.6	task (blessed)	closed	needs-codex	2011-12-15T21:33:01Z	2013-04-22T17:45:47Z	"Post formats would be nicer to use if the admin UI provided a little more structure and functionality around them. The plugin here creates an admin UI via JavaScript and should be considered a functional prototype.

https://github.com/crowdfavorite/wp-post-formats

There are several custom fields provided to put various bits of data into structured fields, allowing for custom output of those fields in a theme.

Note that the URL field is separate for Link formats so that URL will not be included in pingbacks until #18506 is accepted.

Creating structured data to support post formats makes them more powerful and allows themes to do more with them, but it also causes a potential backward compatibility problem for users that change to a theme that doesn't support post formats. To solve this problem, the following code can be used:

https://github.com/crowdfavorite/wp-post-formats-fallback

This looks at custom field data and the current theme's post format support, and where appropriate adds content to the post body.

For now I've kept the code in GitHub instead of attaching it here, so that pull requests can be created easily.

There was a great response to this from the community when we released it, so hopefully it can be considered for inclusion in core."	alexkingorg
Next Release	21948	Allow filtering post type labels	nacin	Post Types		normal	normal	3.5	enhancement	closed	needs-codex	2012-09-20T20:19:49Z	2012-12-17T03:14:27Z	"Follow-up from #21944

{{{
22:49 <nacin> just needs a filter in get_post_type_labels()
22:51 <nacin> there's a separate API for basically everything else - query variables, rewrite rules, supports, taxonomies, meta boxes, menus
}}}"	scribu
Next Release	16742	Meta query doesn't work with $wp_query->set()		Query	3.1	normal	normal	3.1.1	defect (bug)	closed	needs-codex	2011-03-03T21:21:37Z	2011-04-18T15:27:21Z	"The following doesn't work, apparently:

{{{
add_action( 'pre_get_posts', function( $query ) {
  $query->set('meta_key','oqp_guest_email');
  $query->set('meta_value',$dummy_email);
} );
}}}

Source: http://wordpress.org/support/topic/pre_get_posts-problem"	scribu
Next Release	13729	"Post Query should be able to order by specific order passed in ""post__in"""	jakemgold	Query	3.0	normal	minor	3.5	enhancement	closed	needs-codex	2010-06-04T15:49:44Z	2012-12-17T01:22:45Z	"Post queries can specify the posts to retrieve by passing an array of post IDs to the {{{post__in}}} parameter.

There is no built in method for sorting those posts by the order specified. In fact, I would argue that when using {{{post__in}}}, the post query should, by ''default'', order the posts in the same order specified in that array (I think this is the expected behavior by the developer).

Many custom themes allow the developer to specifically designate featured posts, controlling the order in which they appear. Many of these themes are forced to make independent queries for each post or execute an atypical loop by calling the result by ID (the post array's key). The ability to ""fetch"", properly order, and execute a standard loop for a specific set of posts in a specific order would reduce overhead and complexity in these situations.

I've developed a plug-in that does this as a workaround:

http://wordpress.org/extend/plugins/sort-query-by-post-in/

The 3.0+ specific code in there is *very* simple. It would be even more simple to do in base code (just another ""case"" in the orderby switch part of the query builder). In fact, I intend to submit a patch after 3.0 is released.

My plug-in provides the framework for the SQL to do this."	jakemgold
Next Release	20564	Framework for storing revisions of Post Meta		Revisions		normal	normal	3.6	enhancement	closed	needs-codex	2012-04-28T08:51:36Z	2013-05-07T20:56:22Z	"There are a couple of tickets that would seem to benefit from storing revisions of post meta (#11049, #20299). We had a need for this feature in our Carrington Build and RAMP products and built it a few years back.

It handles the storing of post meta along with revisions, as well as restoring those revisions when someone restores an older version of a post(/page/etc.). There is an API for registering the post meta keys you want to track revisions of, it does not track all post meta keys by default.

There are two versions of the code. The bare-bones revisions framework code is here:

https://github.com/crowdfavorite/wp-revision-manager [[BR]]
https://github.com/crowdfavorite/wp-revision-manager/blob/master/cf-revision-manager.php

while I started adding features to a version that would be more user-friendly plugin, allowing the users to select which post meta keys they want to track revisions for:

http://plugins.svn.wordpress.org/revision-manager/ [[BR]]
http://plugins.svn.wordpress.org/revision-manager/trunk/cf-revision-manager.php

If this would be a valuable addition to core, I'd be happy to help polish this up in whatever manner is most helpful. I'd recommend breaking out the code I started on for the admin form and having that be the extent of the ""revision manager"" plugin - basically it becomes a nicer UI for selecting additional post meta keys to track revisions for."	alexkingorg
Next Release	15155	Allow filtering of shortcode attributes	nacin	Shortcodes	2.5	normal	normal	3.6	enhancement	closed	needs-codex	2010-10-19T20:01:39Z	2013-03-07T16:02:35Z	"It would be handy to have the ability to filter the array returned from `shortcode_atts()`.  This would allow plugins to take the default shortcode attributes, the user supplied attributes, and the merged array of those two into account prior to `shortcode_atts()` returning.  

Potential uses:
 * Override the default shortcode attributes (in a fashion)
 * Ignore certain attribute values from the user and instead use the defaults
 * Dynamically generate shortcode attribute values
 * Modifying the behavior of a shortcode handler via attributes without redefining and rewriting the handler, particularly if the shortcode handler doesn't present filters of its own

This would be particularly useful to modify the behavior of core-supplied shortcodes.  For instance, #14390 requests a way of omitting post thumbnails from the gallery shortcode.  Using this patch, this could easily be done via hooks in a number of ways (i.e. omit post thumbnails if the 'exclude' attribute isn't supplied, or always ignore post thumbnails, etc).  In fact, these hooks allow for custom exclusion of any number of images for any number of custom reasons.

The patch introduces two filters, ""shortcode_atts_$shortcode"" and ""shortcode_atts"".  The former allows hooking only the shortcode_atts for a specified shortcode, whereas the latter is a more generic hook.

`shortcode_atts()` really has no context, so I introduced an optional argument, `$shortcode`.  If supplied, the new hooks are fired.  I opted not to fire them if no `$shortcode` was supplied since the lack of context (namely, the name of the shortcode whose attributes are being processed) makes the use of the hooks a questionable proposition.  The patch amends all existing `shortcode_atts()` calls to include the new argument.  We'd want to promote use of the argument going forward, which is why I (perhaps overzealously) made use of  `_deprecated_argument()` to alert developers not to a deprecated argument, but to an added argument (is there a better way? making the argument required would of course break a lot plugins).

By way of example, here's a patch for #14390 making use of this patch to omit the post thumbnail from the gallery shortcode:

{{{
add_filter( 'shortcode_atts_gallery', 'gallery_shortcode_exclude_thumbnail', 10, 3 );

/**
 * Exclude post thumbnail image from gallery if user doesn't explicitly exclude any images
 *
 * @since 3.1
 * @param array $result The shortcode_atts() merging of $defaults and $atts
 * @param array $defaults The default attributes defined for the shortcode
 * @param array $atts The attributes supplied by the user within the shortcode
 * @return array The potentially modified $result array
 *
 */
function gallery_shortcode_exclude_thumbnail( $result, $defaults, $atts ) {
	if ( empty( $atts['exclude'] ) )
		$result['exclude'] = get_post_thumbnail_id();
	return $result;
}
}}}

Another example would be modifying the `[caption]` shortcode to prepend or append text to whatever caption the user provided.

{{{
function append_copyright_to_caption( $result, $defaults, $atts ) {
	$copyright = '&copy; 2010 Example, Inc.';
	if ( isset( $result['caption'] )  && ! empty( $result['caption'] ) )
		$result['caption'] .= ""<br />$copyright"";
	else
		$result['caption'] =  $copyright;
	return $result;
}
add_filter( 'shortcode_atts_caption', 'append_copyright_to_caption', 10, 3);
}}}"	coffee2code
Next Release	19321	get_search_form() function calls an action and a filter with the same hook.	SergeyBiryukov	Template	2.7	normal	normal	3.6	defect (bug)	closed	needs-codex	2011-11-22T01:01:11Z	2013-03-26T21:08:05Z	"The get_search_form() functions starts calling the action 'get_search_form', and its ends applying the filter 'get_search_form' if a searchform.php file doesn't exists. 

So if a function is hooked in 'get_search_form' action, it is also called by the filter, as long as do_action and apply_filters grab the functions from the same array.

If I add an action in 'get_search_form' I would like to be called just once. Maybe the best thing to do here is to change the action hook name.

Cheers"	marquex
Next Release	13578	wp_link_pages isn't fully functional and doesn't include require style information	SergeyBiryukov	Themes	2.9.2	normal	normal	3.6	defect (bug)	closed	needs-codex	2010-05-27T16:10:31Z	2013-05-16T15:37:59Z	"Since paging within a post was dropped as a quicktag, wp_link_pages hasn't been kept up to date with the new themes and has had some major flaws since it was first created.  3.0 has a number of enhancements to this function already, but it still has several flaws. These changes will allow theme authors to use this built in function and have to not overwrite it their themes. 

The attached patch is already deployed at b5media. And makes the following changes:[[BR]]
*It allows you to specify the separator for numbers. [[BR]]
*The seperator is now only use between two numbers instead of always being appended to the end of a number. [[BR]]
*The function no longer produces an empty anchor tag when next or prev is not to be displayed. Up to now it left the link in but didn't include any inner text.[[BR]]
*Adds the css classes pag_nav_num, pag_nav_first, pag_nav_current, pag_nav_prev, pag_nav_next & pag_nav_last allowing style specifications for all output conditions[[BR]]

I think this should give everyone the freedom to do whatever they want with this function now while being mostly backwards compatible.  I do drop the empty links, but I can't see how anyone would have styled specifically for them any way."	brianlayman
Next Release	21206	Replace Farbtastic color picker	nacin	UI		normal	normal	3.5	task (blessed)	closed	needs-codex	2012-07-09T20:13:58Z	2012-11-16T14:04:33Z	In our user testing thus far, 3 out of 3 users struggled with the current Farbtastic color picker.  I took a stab at replacing it with [https://github.com/claviska/jquery-miniColors/ miniColors].	lessbloat
Next Release	6821	ImageMagick support	DH-Shredder	Upload	2.5	normal	normal	3.5	task (blessed)	closed	needs-codex	2008-04-23T01:56:13Z	2012-12-15T18:07:44Z	Our image handling and resizing functions should magically detect whether IM is available and usable (much like Gallery does) and use them where appropriate, as it's a lot more efficient than PHP's built-in GD functions.	matt
Next Release	23850	Searchform Format	SergeyBiryukov	Widgets	trunk	normal	normal	3.6	enhancement	reopened	needs-codex	2013-03-22T19:51:03Z	2013-05-10T16:36:05Z	We should use a filter instead of an argument.	WraithKenny
Future Releases	16600	AdminMenu rendering code chokes on uppercase		Administration	3.1	normal	minor	Awaiting Review	defect (bug)	reopened	needs-codex	2011-02-20T02:43:25Z	2011-03-05T16:28:13Z	"When registering custom taxonomies for a custom post type, if the post type name contains uppercase letters, the menu items for the custom taxonomies are not shown.

It looks like the post type name is lowercased in some parts of the core code (but no all) and so string comparisons fail.
Just isolated this behaviour, so I'm still not sure how much of the core this affects.

Moreover, when I saved posts with the intended mixed-case name, they have been saved to the DB with lowercased post_type


It it is indeed the intended behaviour, a note should be added to the Codex:
 ""Custom Post Type names must be lowercase""

The attached sample (real) code reproduces the problem by setting ""post_type_tag"" to ""DomainName"" instead of ""domain_name"". Numbers work properly, however.

Tested with latest SVN (RC4 + r17467)"	jltallon
Future Releases	19958	"Allow custom post types as ""home"" and get_posts() to return results for more than one post type"		Administration	3.3.1	normal	major	Awaiting Review	enhancement	new	needs-codex	2012-02-04T00:59:13Z	2013-03-08T17:32:39Z	"In
{{{
Wordpress admin > Settings > Reading
}}}
there is an option to define what the home page or the front page should be
{{{
Front page displays
}}}
Radio button
{{{
A static page (select below)
}}}
is followed by a dropdown containing a list of all pages.

I would request that custom page types be allowed in this dropdown. This way, I could make my bbPress forums or my All-in-one event calendar, etc my homepage.
"	sooskriszta
Future Releases	17460	WP Updates througth SSH Script	bugdev	Administration	3.2	normal	normal	Awaiting Review	feature request	new	needs-codex	2011-05-16T19:57:14Z	2011-05-16T20:45:56Z	"The current WP Update engine is very unsecure, because if there is a webserver issue or a connection timeout, memory overflow, connection issue than the wordpress update is corruptes.

More secure the update will be if we can do/execute a php script or ssh script througth the terminal, what also gives advanced informations about update errors ect."	bugdev
Future Releases	17957	wp_reschedule_event & daylight saving		Cron	3.2	normal	normal	Awaiting Review	enhancement	reopened	needs-codex	2011-07-01T09:03:28Z	2013-04-11T23:18:10Z	"When a recurring event is established using the WP cron functions the function takes a Unix timestamp and a recurrence interval.

In the situation where daylight saving changes the local time, the timing of an event can change by an hour. So, if a database backup is set to run at midnight when the clocks change this can start to happen at 11pm or 1am instead since the timing of the event is based on an initial static time (Unix timestamps reference point is January 1, 1970) and a static interval period.

An enhancement to the cron functions would be to account for an obey daylight saving changes so that events schedule for midnight actually occur at midnight irrespective of the time of year."	MattyRob
Future Releases	13779	Preview doesn’t work - WP installed in its own directory		General	2.9.2	normal	normal	Awaiting Review	defect (bug)	reopened	needs-codex	2010-06-08T01:32:04Z	2013-02-02T23:02:43Z	"1.  Wordpress is installed on /wp/ subdirectory.

2. Then it was set up to be visible from the site root according to http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory  

3. Site works fine

4. [BUG] Preview for posts & pages isn’t working.  

When I press preview it goes to url like:  
http://example.com/?preview=true&preview_id=235&preview_nonce=aa28f04
and says ""You do not have permission to preview drafts."".

5. If I type subdirectory name “/wp/” in that url by hands, it shows correct preview:  http://example.com/wp/?preview=true&preview_id=235&preview_nonce=aa28f04

6. The situation is getting worse if i'm using permalinks. In that case - there is nothing i can do to see preview. 

ps: I’ve tested that on clean install. "	antares19
Future Releases	20359	wp_list_categories - Diff to make use_desc_for_title parameter more flexible		General	2.2.1	normal	normal	Awaiting Review	enhancement	new	needs-codex	2012-04-04T22:57:44Z	2012-04-05T12:58:17Z	"Right now, the @use_desc_for_title is defined as a boolean parameter which outputs category link title attributes containing either:
- Category descriptions by default (''bool '''1''''');[[BR]]
- 'View all posts filed under [category-name]'.[[BR]]
Now, since the title attribute is not required for '''<a>''' tags in any HTML spec, I made a patch to turn this parameter into a string, with the following supported values:[[BR]]
- 'desc' => (default) Outputs category descriptions;[[BR]]
- 'viewall' => Same output as ''bool '''0''''' (''false'') before: 'View all posts filed under [category-name]';[[BR]]
- 'none' => Does not output any title attributes.[[BR]]

I have tested this thoroughly, but additional testing would not hurt."	Marventus
Future Releases	19906	Quicktags docs recommend code causing JS error: Uncaught ReferenceError: QTags is not defined		Inline Docs	3.3.1	normal	trivial	Awaiting Review	enhancement	reopened	needs-codex	2012-01-27T01:05:44Z	2012-01-27T17:35:31Z	"
Right now the docs for qt.addbutton in quicktags.dev.js have the following text:

{{{
	 * If you are echoing JS directly from PHP,
	 * use add_action( 'admin_print_footer_scripts', 'output_my_js', 100 ) or add_action( 'wp_footer', 'output_my_js', 100 )
}}}

This works, but if you add the QTags.addButton() calls on those hooks then they will cause JS errors on any screen without an editor:

{{{Uncaught ReferenceError: QTags is not defined}}}

The issue is avoided if you use the other option, enqueuing a script dependent on 'quicktags', but that is a lot more work and forces all pages in the admin to load the quicktags script unnecessarily. 

Maybe there is some way to magically make calling QTags.addbutton() safe no matter what, but I think at minimum we need to add a note to the PHPdoc about checking QTags before using it, as that solves the problem pretty simply:

{{{
 if ( typeof QTags != 'undefined' ) {
	QTags.addButton( 'gv_translation', 'translation', '<div class=""translation"">', '</div>' );
}
}}}

So the phodoc could say :

{{{
	 * If you are echoing JS directly from PHP use
	 *	add_action( 'admin_print_footer_scripts', 'output_my_js', 100 ) 
	 * or 
	 *	add_action( 'wp_footer', 'output_my_js', 100 )
	 *	
	 * If echoing the addButton calls directly instead of enqueing with the 'quicktags' dependency
	 * make sure to check that the QTags object is defined first, otherwise your code will throw errors 
	 * when no editor is present:
	 *	if ( typeof QTags != 'undefined' ) { QTags.addButton(...) } 
	 *
}}}

The attached patch just adds that to the docs. If a committer has a preferred wording then just use that instead, obviously the patch didn't take me long :)

BTW: I created a Codex article with the docblock after not finding a reference to the new API anywhere other than in the JS file itself. Nacin's posts mentioned that they had changed but not what was new ;)

http://codex.wordpress.org/Quicktags_API

Clearly it needs work, I didn't want to put too much time into it at first because I didn't understand the system yet (as I'm learning now, by finding JS errors)."	jeremyclarke
Future Releases	21959	No way to override the name of an image when that is being resized		Media	3.4.2	normal	normal	Awaiting Review	enhancement	new	needs-codex	2012-09-21T16:34:23Z	2012-09-22T20:42:44Z	"The most obvious solution is to add a hook to allow the destination file name to be modified. 

The solution attached gives pretty much all the information you could possibly want to modify the filename as you might need to."	jkmassel
Future Releases	19012	get_ID and the_ID should accept $id as a parameter	ryan	Post Types	3.3	normal	normal	Future Release	enhancement	reviewing	needs-codex	2011-10-20T04:56:28Z	2011-10-20T15:11:49Z	"I see throughout the WordPress code as well as throughout many plugins and themes that {{{get_ID()}}} is often accompanied by a test to see if an ID had been passed. It would be a harmless but extremely useful update to simply allow {{{get_ID()}}} and {{{the_ID()}}} to accept an optional $id and pass it through if it's numerical.

I've already gone ahead and created the patch (attached)"	peterchester
Future Releases	18548	Add a better option for <title> tags	joostdevalk	Template	3.3	normal	normal	Awaiting Review	enhancement	new	needs-codex	2011-08-30T20:32:15Z	2013-01-18T04:17:40Z	"Right now, title tags in themes are created by using wp_title and than adding on custom code, usually bloginfo('name'), sometimes other code. Because there's basically no way for a plugin to control the entire content of a title tag, all major SEO plugins resort to output buffering. 

A better way would be to output the <title> tag during the run of wp_head, based on whether the current theme has added theme_support. See attached patch for the proposed implementation. This patch also fixes the requested array filter in #17877."	joostdevalk
Future Releases	22314	Add singular.php to template hierarchy		Template	3.4.2	normal	normal	Awaiting Review	enhancement	new	needs-codex	2012-10-30T15:04:24Z	2012-11-10T07:33:20Z	"Currently, the template hierarchy includes a fallback template (archive.php) for all archive-index type pages (date, tag, category, taxonomy, author, blog posts index, custom post type index), but does not include an analogous fallback template for single-post type pages (blog post, page, attachment, custom post type). This patch adds `singular.php` to act as such fallback.

This change also ensures that all template context conditionals have associated template files. AFAIK, `is_singular()` is currently the only template context conditional that does not have such a corresponding template file."	chipbennett
Future Releases	15719	Connection Information dialog does not explain root problem		Text Changes	3.0.2	normal	normal	Future Release	enhancement	new	needs-codex	2010-12-07T17:27:06Z	2012-11-19T16:52:51Z	"On a brand new install of WordPress on a fresh Ubuntu 10.10 LAMP server, after trying to update a plugin, I got the '''Connection Information''' page that requested FTP information. (""To perform the requested action, WordPress needs to access to your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host."")

This message should have explained the root cause: my filesystem permissions did not allow WordPress to write. I think this error message is defective (a bug) because it doesn't explain the problem. Therefore, admins are forced to go on a wild goose chase to find the root cause and proposed an alternative (FTP) that I didn't even want to use."	novasource
Future Releases	23228	get_users() cannot include AND exclude		Users	3.5	normal	normal	Awaiting Review	defect (bug)	new	needs-codex	2013-01-17T22:45:51Z	2013-01-19T03:56:22Z	"The codex describes the parameters for get_users() as an array of options, so it seems like you can set an array of includes and an array of excludes. But the code looks like it can only do one or the other. It would be a simple fix.

Lines 521-527 in wp-includes/user.php

{{{
if ( !empty( $qv['include'] ) ) {
	$ids = implode( ',', wp_parse_id_list( $qv['include'] ) );
	$this->query_where .= "" AND $wpdb->users.ID IN ($ids)"";
} elseif ( !empty($qv['exclude']) ) {
	$ids = implode( ',', wp_parse_id_list( $qv['exclude'] ) );
	$this->query_where .= "" AND $wpdb->users.ID NOT IN ($ids)"";
}
}}}

To fix, change the elseif to its own if:

{{{
if ( !empty( $qv['include'] ) ) {
	$ids = implode( ',', wp_parse_id_list( $qv['include'] ) );
	$this->query_where .= "" AND $wpdb->users.ID IN ($ids)"";
}

if ( !empty($qv['exclude']) ) {
	$ids = implode( ',', wp_parse_id_list( $qv['exclude'] ) );
	$this->query_where .= "" AND $wpdb->users.ID NOT IN ($ids)"";
}
}}}

Thanks for the consideration."	dlim_vernier
Future Releases	23165	Admin validation errors on form nonce element IDs (_wpnonce)		Validation		normal	normal	Awaiting Review	enhancement	new	needs-codex	2013-01-10T02:25:17Z	2013-04-03T03:21:53Z	"The `wp_nonce_field()` method has a design flaw in that the `name` parameter is optional, but its default value (""_wpnonce"") is used for the field element `id`. This wouldn't be bad if only one form is used on each page, but that is rarely the case in the admin panel. Currently, this only results in harmless HTML validation errors in admin, and in very rare situations (depending on plugins installed), can result in javascript scope-related issues breaking forms. This is an issue that keeps being reported and fixed several times (see #5962, #6564, r14737 from #13383, and the latest [http://core.trac.wordpress.org/ticket/22712#comment:11 #22712]) by simply specifying the name in all locations that don't at the time in core. There's at least three different approaches that I can see where we could prevent this from popping back up in the future and encourage better coding habits.

== A: Require the Name Parameter ==

The most obvious approach is to simply adds a `_doing_it_wrong()` call (though it could just be `_deprecated_argument()` instead) for any calls to `wp_nonce_field()` that don't specify the `name` parameter, forcing everyone to give nonce fields unique IDs (and names). A side-effect of this change is that it will also warn developers they are doing it wrong if they use `wp_nonce_field()` without the (also currently optional) `action` parameter, which is actually a good thing since the docs already warn that this is a security hole.

There are 46 locations in core that would need updated with this change that make this mistake, and the fix for each of them with this change is exactly the same as what every other commit to fix this problem has always done: just specify the `name` to give a unique ID.

The downside to this approach is that this pushes for an immediate change not only to all calls to `wp_nonce_field()`, but also their corresponding `check_admin_referer()` calls (to update the changed field name) in a single WP release, and considering how frequently it's called this way in core, I don't even have to look at plugins to see how often it happens there (it's going to be too many to count).

This approach still results in an explicitly named ID that really doesn't need to be on the field in the first place in most locations.

I gave this approach a shot anyway, and started on a patch just to see how much work it would be at least in core, but I started to find a few locations that could benefit from unique IDs, but similar field names. I also found myself already spending hours updating and testing just 9 of the 46 locations (unit tests don't cover this stuff) where I was forced to make changes to IDs that would be best left alone for now. I have attached this unfinished patch anyway if anyone is curious to see how it works, what it does, and to see what kinds of changes it ends up requiring.

It's still possible to just pass ""_wpnonce"" as the `name` with this change, so the rest of the locations could simply use that to progressively work towards unique IDs, but I just don't see this as a good solution overall, and it seems like a lot of work for very little gain on a minor issue.

== B: Use Action for ID or Remove ID Entirely ==

Another option might be to remove ID entirely, or use (and require) the action parameter as the ID. This would improve results with unique IDs fixing most locations where `wp_nonce_field()` is used without requiring a change to each one individually for most uses (except for nonces used with ajax calls). All locations in core at least use `action` already, so the case for using `action` as ID instead seems better than using `name`.

Unfortunately, either removing or using the action parameter for ID (changing the ID) would obviously break a few plugins that made the mistake of relying on the default `_wpnonce` (or the current `name` value) value for `id` from within JavaScript code for existing form endpoints. In the WP.org plugin repo, this appears to happen in the following plugins (searching up through plugins starting with 'r') for forms using the default value:

{{{
automatic-youtube-video-posts
buddypress
buddypress-backwards-compatibility
canalblog-importer
community-submitted-news
eyes-only-plus
facepress-ii
globalfeed
lazyest-gallery
lazyest-maps
maven-member
pagely-reseller-management
pluginbuddy-yourls
post-event2
qtranslate-separate-comments
repostus
...
}}}

There's likely way more plugins that post to core forms using a non-default `name` that would break though as well, and even though I think ID should have never been added to the nonce field attributes and was never necessary in the first place, compatibility rules would need to be broken if this approach was used. This of course means this option is most likely not really an option at all.

== C: Use an Option Array Parameter in Place of Name ==

To keep this concise, this last approach basically involves changing `wp_nonce_field()` to:

{{{
function wp_nonce_field( $options = array() ) { ... }
}}}

The `options` parameter is a standard arguments array used with `wp_parse_args()`. This accomplishes not just one, but two different goals. First, if `$options` is not an array or the method was called with anything other than 1 parameter, we know this is an older call that needs to use the `name` parameter for both `name` and `id`, using `func_get_args()` for the original arguments, and can do so for full 100% backwards compatibility. Second, unrelated to this issue, the function has been refactored to adhere to coding standards in regards to [http://codex.wordpress.org/WordPress_Coding_Standards#Self-Explanatory_Flag_Values_for_Function_Arguments self-explanatory flag values] as far as the `referrer` and `echo` options are concerned.

The `options` array can then be made to accept the following settings:

- action: The same unique name included in the nonce hash as is the case now.
- name: The field name (and *only* used for the name attribute). (Default: ""_wpnonce"")
- id: The field ID if this really is still desired, and can even be different than the name, but by default, the field won't have an ID at all.
- referrer: Whether to set the referer field for validation. (Default: true)
- echo: Whether to display or return hidden form field. (Default: true)

The only downside here is that each `wp_nonce_field()` call will be more verbose in most cases, especially if they do need to use an ID. For example, this:

{{{
wp_nonce_field('add-tag', '_wpnonce_add-tag');
}}}

Will now become this:

{{{
wp_nonce_field( array( 'action' => 'add-tag', 'name' => '_wpnonce_add-tag' ) );
}}}

I see plenty of benefits to this last solution though, and it requires very few changes up front, so I think it comes down to this approach ultimately. Please see attached patch."	bpetty
Future Releases	16613	Extend Widget API to allow sidebar/widget manipulation		Widgets	3.1	low	normal	Awaiting Review	enhancement	new	needs-codex	2011-02-21T22:55:17Z	2013-01-21T17:27:26Z	"There is currently no easy way to add a widget to a sidebar using code. We should add methods of doing this.

A good example usage of such an API could be when a new theme is activated, it could add it's custom widgets to it's sidebar.

API should provide support for adding widget X to sidebar Y (or even just the first sidebar) along with setting some options for the widget and where in the sidebar to add it (top vs. bottom)."	Viper007Bond
