﻿ticket,summary,owner,component,_version,priority,severity,milestone,type,_status,workflow,_created,modified,_description,_reporter
16103,Blue Admin theme doesn't have enough contrast,,Accessibility,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2011-01-05T03:51:32Z,2013-05-14T13:21:17Z,"The beautiful blue theme has a few parts that lack sufficient contrast to be useable by someone with color deficiencies.   Specific parts to follow.


See attached screen shots to get a better idea.  Highlighted areas lack contrast.  ",jorbin
23760,Cannot use spacebar to trigger OK button or links in Publish widget (eg. schedule settings),,Accessibility,3.5.1,normal,minor,Awaiting Review,defect (bug),new,,2013-03-13T16:23:43Z,2013-04-19T23:16:59Z,"When changing the scheduled publishing time of a post, the OK button after the time fields cannot be triggered by pressing spacebar.

The same applies to all buttons and links in the Publish widget on the Add New / Edit Post page. The Add button in the Tags widget on the same page can be triggered with space since WordPress 3.5. 

Steps to repeat:

1. Create a new post by navigating to wp-admin/post-new.php.
2. Click the underlined link in ""Publish immediately _Edit_"" in the Publish widget.
3. Click the last field (minutes).
4. Press Tab once to move focus to the OK button.
5. Press spacebar.

What happens is the screen scrolling down exactly as if Page Down was pressed.

What should happen is the same that happens when the button (or link) is clicked with mouse, which depends on the button (or link).

Tested on Windows XP & 7 and all the recent Firefoxes I can remember and Internet Explorer 9.",Daedalon
22682,Close Button Breaks in Customizer After Refresh,,Accessibility,3.5,low,minor,Future Release,defect (bug),new,,2012-12-02T17:10:01Z,2012-12-04T04:43:17Z,"Steps to reproduce (keyboard only):
1. Open the theme customizer.
1. Tab past the top buttons.
1. Press F5.
1. Now try to use the Close or Cancel button.

Expected result:  Should be able to Close or Cancel.

Actual result:  The button can still be clicked, but it is broken for keyboard usage.

Found in 3.5-RC2-22961 using Chrome 23 and WinXP.",miqrogroove
15926,Give header and background images alt tags,,Accessibility,3.0,normal,minor,Awaiting Review,defect (bug),assigned,has-patch,2010-12-20T22:16:12Z,2013-01-11T11:42:52Z,"''Section 1194.22 Web-based Internet information and applications: (a) A text equivalent for every non-text element shall be provided (e.g., via ""alt"", ""longdesc"", or in element content).''

To meet accessibility guidelines, the header images and backgrounds (when supported by a theme) need to be given user-editable alt tags.",jane
20880,Keyboard navigation in Appearance > Header is broken,,Accessibility,3.3.2,normal,normal,Awaiting Review,defect (bug),new,,2012-06-07T17:40:34Z,2012-06-08T06:27:11Z,"It's impossible to use the Appearance > Header section with the keyboard because the Enter button will submit the form using the top-most submit input, which is not always the Save Changes button. How to reproduce, in Appearance > Header, using Twenty Eleven:

1. Select one of the default header images
2. Check the Show header text with your image option
3. Enter #111 for Text Color
4. Click Save Changes

At this point everything looks fine, but here comes the trouble:

5. Enter #222 for Text Color and hit Enter

You'll notice that #222 hasn't been set as the Text Color, instead your chosen header image (in step 1) has been removed, as if the Remove Header Image button was clicked.

6. Enter #333 for Text Color and hit Enter

You'll notice that #333 hasn't been set as the Text Color, instead it's been set to #000 which is Twenty Eleven's default, as if the Restore Original Header Text button was clicked.

When both Remove Header Image and Restore Original Header Text buttons are not present, the Return key submits the form using Save Changes, as expected. It's not limited to Text Color, but any other element that can submit the form using the Enter key.

I've been facing the exact same problem when doing an options panel for a theme with multiple actions as submit buttons, still haven't found a good solution. Marked as 3.3.2 but I believe it's been around earlier.

Thanks!",kovshenin
12825,Largest minimum text size in FF prefs makes admin display terrible,,Accessibility,2.9.2,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-04-02T22:25:59Z,2013-01-20T18:04:36Z,"The backend looks great in FF if a user zooms, as long as they don't zoom text only. However, some visually disabled people use the Firefox preference for minimum font size instead, because doing full zoom means lots of horizontal scrolling. Is there anyway to make it so that a large minimum text size wouldn't be so terrible-looking? 

To reproduce: in FF, go to Preferences, Content, Advanced Fonts, select 24 for minimum size. Look at the admin; eek! (In comparison, zooming to that size looks very pretty, but requires horizontal scrolling).

Gmail does it decently, so I thought it was worth asking, but I know that there may be technical reasons that we can't make it happen. Would just like to know what those are if so, so I can explain to users who ask about it. If we *can* make it happen, that would be sweet. ",jane
23562,Using Speech Recognition Software with the Add Media Panel,,Accessibility,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-02-20T16:06:02Z,2013-02-20T17:59:42Z,"Linked to #23560 this ticket specifically concerns the speech recognition user's accessibility experience of the Add Media functionality.

I'm using Dragon Naturally Speaking with IE9 on Windows 7 - a typical setup as Dragon works best with IE.

Within the Edit Post screen I can use Dragon to action the Add Media link successfully. The command in Dragon for such an action is ""Click Add Media"". This works, but then I run into the following problem:

* With the exception of Set Featured Image, none of the other links on the panel appear to be directly accessible with Dragon.
* If I select Set Featured Image I can't action any of the other links.

Dragon users can use voice commands to replicate pressing the tab key. The experience then mirrors that outlined in #23560 - but of course this cannot be used to select the images or other files.

It is possible for Dragon users to interact with screens using mouse commands but it is an incredibly laborious and time consuming process - used only as a last resort.

If one of the images is selected, the information panel for that images opens to the right. Unfortunately none of the input fields (for title, alt, etc) are directly available to Dragon. Ironically, the Insert Into Post button can be accessed directly with a voice command.

Some investigation needs to be done as to why most of the links and input fields cannot be directly accessed by Dragon when the panel is opened. This is a parallel with the situation on the Theme Customizer panel. 

It is interesting that the Set Featured Image link and the Insert Into Post button '''can''' be directly accessed. What is different about them?

",grahamarmfield
23561,Using a Screen Reader with the Add Media Panel,,Accessibility,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-02-20T15:16:55Z,2013-02-20T17:59:54Z,"Linked to #23560, this trac specifically concerns accessibility issues found when using the Add Media panel with a screen reader.

I used NVDA 2012.2.1 with IE9 and FF16.0.2 on Windows 7.

'''IE9'''

* On initially clicking Add Media link in Edit Post page the focus appears to initially be transferred into the edit content textarea within the main page. There is no audible notification that the panel has opened.
* Further tabbing shows that the focus has not been transferred into the panel - so this would be a showstopper for most users.

If you continue tabbing you eventually do come to the panel in the tab order at the bottom of the main page maybe...

* It is possible to tab round the text links in the panel. However actioning the Insert Media or Create Gallery links does not apparently do anything - there is no audible feedback that the contents of the next panel have changed. Suggest that when one of these links is actioned that focus is transferred into the relevant panel - to the heading would be a good place.
* The 'images' select does not have an associated label so it's purpose would not be clear to all users.
* The search box does not have an associated label so screen reader users in IE9 receive no feedback as to the purpose of this text box.
* There is no Go or Search button available to trigger the action for these two input fields - both of which change the content of the panel below. For accessibility reasons the user should be in control of triggering the filtering.
* As mentioned in the other ticket #23560 the main accessibility problem here is that it is not possible to select any of the previous uploaded media.


'''Firefox'''

* When the Add Media panel opens it is not clear where focus sits. But after this first link the focus is transferred into the Add Media panel.
* The close link does not announce itself when tabbing forwards, but it does when reverse tabbing.
* See IE9 section re actioning Insert Media, Create Gallery links.
* AS IE9 re label for media type select box. NVDA does announce Search box label in FF.
* As IE9 re lack of Go or Search button for these input fields.
* As IE9 it is not possible to tab to any of the previously uploaded images/files.

Separate ticket to be raised for Speech Recognition software experience.",grahamarmfield
18801,Accessibility Enhancements to Settings API,taupecat*,Accessibility,3.2.1,normal,normal,Awaiting Review,enhancement,accepted,has-patch,2011-09-28T14:59:44Z,2013-01-03T19:25:35Z,"I've only started working with the Settings API, but right off the bat I noticed two fairly major, but should be not too difficult to fix, accessibility issues.

1) The label/input field pairs are missing the HTML <label> tags that link the two.

Example: Field One <input id=""field_one"" name=""field_one"" type=""text"">
Should be rendered: <label for=""field_one"">Field One</label> <input id=""field_one"" name=""field_one"" type=""text"">

2) The settings pages themselves are laid out using a table.  Tables should be reserved for tabular data, and not for page layout.  CSS should be used for layout instead.

Thanks for your attention.",taupecat
18900,Add a few more hide-if-no-js classes,,Accessibility,3.3,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-10-10T23:14:55Z,2013-05-14T21:21:36Z,"There are a few elements to which we could add the `hide-if-no-js` class, as their functionality or setting relies on JavaScript being available.",johnbillion
24148,Add aria-labelledby attributes to comment form,,Accessibility,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-04-21T03:26:05Z,2013-04-22T14:03:52Z,"The aria-labelledby attribute provides a means for screen readers to get additional context for inputs when there is additional labeling information provided. In the default comment form, information such as the fact that email will not be published or that HTML tags and attributes can be used can only be viewed through a separate pass through the form not in forms mode. Adding these attributes means that a screen reader will read both blocks of text as the label for the field. ",joedolson
16433,Extend function to optionally include commenter name in comment_reply_link,merty*,Accessibility,3.0.4,low,normal,Future Release,enhancement,accepted,has-patch,2011-02-01T16:27:45Z,2011-09-12T12:05:09Z,"Screen readers recognize links and make them searchable. Unique names facilitate that search. Links need to have unique names that are descriptive and make sense when read out of context. WordPress allows users to set the text they want to display on the comment_reply_link but then this text is repeated for every comment on a post. 

WCAG Checkpoint 13.1 says: Clearly identify the target of each link. [Priority 2]

For improved accessibility it is far better to have the comment_reply_link include the commenter name. ""Reply to Tom Thumb"" and ideally, include a title on the link that includes both the commenter name and comment number. Users should have the option to filter for their custom text and to include (or not include) the commenter name. 

At the moment, anyone who wants to present an accessible front-end cannot use threaded comments unless they are prepared to generate masses of the same, generic, unhelpful link. ",Elpie
24042,Help text visibility in title input box is not intuitive,,Accessibility,trunk,normal,normal,Awaiting Review,enhancement,reopened,,2013-04-11T03:45:04Z,2013-04-12T04:32:03Z,"Currently, the input box for title which shows on a new post creation page uses a label to display the help text- ''""Enter title here""''. This text disappears on focus and an that point of time, there is no place which points out that this input box is for the title.

This problem has been pointed out by a lot of people and it surfaced after the new Gmail design came out. The problems it generated are very similar and as you may have used it, there are no labels for the email recipients field and the subject field.

The issue is not very big as such but it does generate ambiguity in some cases. The solution to this would be to have the label as an overlay on the input, which can slide/move to a new position on focus. And placeholder text can be used as help text. This way the help text will be visible at the start and the label will be visible throughout.",aniketpant
24098,Support for HTML5 roles,,Accessibility,3.5,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2013-04-16T07:44:16Z,2013-05-12T00:01:07Z,"I was going through http://core.svn.wordpress.org/trunk/wp-includes/kses.php and I realized that most of the new HTML5 tags have been introduced but `role` is a missing attribute.

I feel that since WordPress has already made a move towards HTML5 by supporting `<article>`, `<section>` and other tags, all attributes should be made available too. `role` should be added to the required tags falling under `$allowedposttags`.

Go through the link for more information on [http://www.w3.org/wiki/PF/XTech/HTML5/RoleAttribute roles].",aniketpant
21414,"Use the ""Keyboard Shortcuts"" checkbox in the user profile to turn on/off all custom shortcuts",,Accessibility,,normal,normal,Awaiting Review,enhancement,new,,2012-07-29T20:24:36Z,2012-10-14T11:42:23Z,"Custom keyboard shortcuts can be very handy not only for better accessibility but for faster access to many actions that usually require ""mousing"". For example we could potentially add shortcuts to access the top menu items or the more commonly used toolbar items.

However many of the available keystrokes (modifier [+ modifier] + letter) are already in use. Even worse, different shortcuts are in use in different browsers and different OS.

It would be good to let the users decide whether to enable them. As we already have a checkbox for the comment moderation shortcuts, best would be to make it ""global"". For now that would only affect TinyMCE.",azaozz
24150,tabindex doesnot work proper if metabox added,,Accessibility,3.5.1,normal,normal,Awaiting Review,enhancement,new,,2013-04-21T04:12:43Z,2013-05-02T12:24:00Z,"Hi,
In {wp-admin} default post add form, if metabox added tab button skips metaboxes and directly goes to Publish box to take action.

Developer who wants to add tabindex to all metaboxes created, add_meta_box function should have parameter to set tabindex which will allow to go through it before publish post or skip if false. ",amolv
22104,High contrast admin colour scheme,,Accessibility,,normal,normal,Awaiting Review,feature request,new,,2012-10-04T17:35:54Z,2012-11-20T16:57:21Z,"We should consider bundling a high contrast admin colour scheme with WordPress to aid accessibility for the visually impaired.

Some discussion on this has taken place previously on IRC but nothing much beyond that.

Some potential points of discussion:
 * Is anyone in the [http://make.wordpress.org/accessibility/ WordPress accessibility group] an expert on accessibility for the visually impaired? Can we get someone on board for some expert guidance?
 * Is an admin colour scheme sufficient? Would any JavaScript need altering too? If so, would an admin colour scheme suffice as a starting point?

Related:
 * [http://www.timobrienphotos.com/2009/03/hich-contrast-admin-color-scheme-for-wordpress/ A high contrast admin theme plugin]
 * [http://wordpress.org/support/topic/admin-color-scheme Support forum discussing admin theme for visually impaired user]
 * [http://wordpress.org/extend/plugins/easy-admin-color-schemes/ Easy Admin Colour Schemes plugin]",johnbillion
24324,Placeholder support to login form,,Accessibility,,normal,minor,Awaiting Review,feature request,new,has-patch,2013-05-12T09:59:13Z,2013-05-14T14:44:34Z,wp_login_form isn't support placeholder attribute yet. It would be good. Isn't it?,m_uysl
9445,All Input Tags are not Section 508 Compliance,,Accessibility,2.7,normal,normal,Future Release,task (blessed),reopened,,2009-04-02T18:58:32Z,2012-10-09T20:14:56Z,"Not all of the input tags within the Wordpress admin console are section 508 compliant (http://www.section508.gov/). We have scanned the application using compliance software and found many instances where input tags (checkbox, text, textarea, file, radio, etc..) are missing the required label or alt text. (There are many instances where it IS compliant.) 

We (developers at a government agency) have the ability to make the changes, but some of the decisions for which exact text to put in the labels and alt text should probably be decided by a more dedicated Wordpress developer. Please contact me if you want our help or input. 

We believe that the software is extremely close to 100% compliance. Bringing it to 100% would be a huge deal for government agencies wh are trying to get approval to install and run Wordpress internally and externally.",dmo7
9698,WordPress back end is not accessible,,Accessibility,2.8,normal,major,Future Release,task (blessed),new,,2009-05-01T18:15:41Z,2012-02-20T20:50:25Z,"The WordPress back end violates several WCAG accessibility guidelines, so it cannot be considered accessible to people with disabilities.

Guidelines: http://www.w3.org/TR/1999/WAI-WEBCONTENT-19990505/

Not being an accessibility expert, I am not sure of all of the violations. But guideline 6.3 states ""Ensure that pages are usable when scripts, applets, or other programmatic objects are turned off or not supported. If this is not possible, provide equivalent information on an alternative accessible page.""

This means that you should be able to do all functions in the WP back end with JavaScript disabled.

As of 2.8-bleeding [11148], there are several things you cannot do with JavaScript disabled:

1) Upload and attach media to a post. You can upload media in the Media section, but the media upload section of the post edit screen is missing without JS, and I see no way to attach it to a post.

2) Add tags to a post or change which tags are on a post. The tags section is totally blank without JavaScript. (It could at least have the default plain-text field that is there behind the scenes and hidden).


",jhodgdon
22254,"""Do you really want to log out"" message after already logged out",,Administration,3.4.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-10-22T16:21:06Z,2013-02-28T16:03:33Z,"1. Log into admin area
2. Open some page within admin area in a new tab (middle click or ""Open link in new tab"" or similar)
3. Select ""Log Out"" in menu in one tab
4. Normal ""You are now logged out."" screen appears
5. Select ""Log Out"" in menu in other tab
6. The following message appears:
{{{
You are attempting to log out of Blogname

Do you really want to log out?
}}}
The content of this message is wrong as the user is already logged out at this point.",Ov3rfly
22222,"""Mode"" buttons bumped below (in 1024x768) when long category name exists",,Administration,,normal,minor,Awaiting Review,defect (bug),new,,2012-10-18T17:22:33Z,2013-02-09T20:54:12Z,"If there's a long category name, the category filter <select> menu widens. On a 1024x768 screen, this causes the list/excerpt mode buttons to get bumped down.

screenshot: http://kdl.dropmark.com/25665/1130400

One thought was to move that option to Screen Options, which I think makes more sense anyway. ",trepmal
22735,A given pointer should only show once on a screen,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2012-12-04T18:10:44Z,2012-12-14T23:51:42Z,"If you have, say, multiple media buttons on a screen, you'll get multiple pointers, each pointing to an instance of that button. This shouldn't happen. In the case of the media button, it should probably only show up for the one associated with the main editor. In terms of the pointers in general, it should only show up once, not for each match in the DOM.",helen
15827,AJAX paging breaks badly when json_encode can't encode,,Administration,3.1,normal,normal,Future Release,defect (bug),assigned,has-patch,2010-12-15T14:27:33Z,2011-02-11T07:20:32Z,"If json_encode can't encode a response for some reason you get no feedback at all except for a blank list.

This seems most likely to trigger with invalid UTF8 sequences in spam comments.

With non-ajax paging you at least get all the comments displayed even if you do get a lot of ??? for the bad chars

Example Error seen:

{{{
[15-Dec-2010 14:18:38] Warning: json_encode() [<a href='function.json-encode'>function.json-encode</a>]: Invalid UTF-8 sequence in argument in /home/wpdev/public_html/wp-admin/includes/class-wp-list-table.php on line 839 [
}}}",westi
17516,Add Favorite Actions to Admin Bar,,Administration,3.2,normal,normal,Awaiting Review,defect (bug),new,,2011-05-19T18:37:03Z,2011-09-10T03:25:31Z,"With the new UI upgrade, the favorite_actions() method was removed from the main UI. After a brief discussion with Westi, it made sense to put the functionality back in as part of the adminbar.

The attached patch does that using the favorite_actions() method (which can now return the filtered list of favorite_actions as an array). We should eat our own dog food.",technosailor
19527,Add New Category Problem While Posting,,Administration,3.3,normal,minor,Awaiting Review,defect (bug),reopened,close,2011-12-13T05:26:08Z,2013-01-22T01:19:25Z,"When adding new category, while you are making a post, If a category is added under a parent category, it doesn't show properly that the new category is under the parent category.

It has been added correctly, but it doesn't show properly the first time.",jainprateek
23141,"Add autocomplete=""off"" to all inputs that have a value",,Administration,3.5,normal,normal,Awaiting Review,defect (bug),new,,2013-01-08T12:49:51Z,2013-01-08T19:44:44Z,"On '''refresh''' in the browser - old data is filled in the inputs, instead of the actual data from the value attribute of the input.

to be more clear : http://www.screenr.com/p2K7",alexvorn2
13972,Add new category link - capability check needed,,Administration,3.0,normal,minor,Future Release,defect (bug),new,has-patch,2010-06-18T09:01:43Z,2012-06-29T18:18:58Z,"/wp-admin/link-add.php

If user doesn´t have ""manage_categories"" capability, add new link page, will show ""add new category"" link and form, 
it should be hidden.
",wjm
20938,Adding existing category duplicates default one,,Administration,3.3.2,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2012-06-13T13:52:18Z,2013-01-22T03:35:53Z,"In the post editing page, if you add a category which already exists, Wordpress duplicates the default category (Uncategorized), instead of showing a warning or doing nothing.",hvsupr
20082,Admin bar links to wrong site in multisite (subdomain) network,,Administration,3.3.1,normal,major,Awaiting Review,defect (bug),new,,2012-02-20T09:53:52Z,2012-02-21T08:43:50Z,"The code
{{{
	foreach ( $actions as $link => $action ) {
		list( $title, $id ) = $action;

		$wp_admin_bar->add_menu( array(
			'parent'    => 'new-content',
			'id'        => $id,
			'title'     => $title,
			'href'      => admin_url( $link )
		) );
	}
}}}
generates the wrong URL, whenever I visit a site that has the URL subsite.subsite.example.com but generates the correct URL if the URL is of the pattern subsite.example.com. On subsite.subsite.example.com the admin bar will generate links to subsite.example.com.",niklasbr
24367,Admin login with correct password fails,,Administration,trunk,high,blocker,Awaiting Review,defect (bug),new,has-patch,2013-05-19T15:36:15Z,2013-05-20T14:57:30Z,"1. Clean blog with current WP 3.6 Beta3

2. Blog install page: Set the admin password to 
{{{
Tea7""Kou>9Bia7@Cio(4
}}}

3. After blog setup: The login with same password fails - every time.

'''Fix'''
Test for ''magic_quotes_gpc'' helps us.

{{{
Tea7\""Kou>9Bia7@Cio(4 !== Tea7""Kou>9Bia7@Cio(4
}}}


See also the Openwall notice: ''The ""Magic Quotes"" issue''
http://www.openwall.com/articles/PHP-Users-Passwords",sergej.mueller
19069,Admin menu generation doesn't check whether default post types have 'show_ui' as true,,Administration,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-10-27T19:47:06Z,2011-11-16T05:00:27Z,"While patching #19055, I found wp-admin/menu.php doesn't check whether default post types have 'show_ui' set to true. The Comments menu is also displayed regardless of whether available post types support comments or not.",kawauso
18165,"Admin tables empty when installed on *nix with Apache 2.x, PHP 5.3 running as CGI with wrapper script",,Administration,3.2.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2011-07-18T21:01:37Z,2011-10-18T20:27:46Z,"* Wordpress 3.2.1
* Apache 2.2.3
* PHP 5.3.5

When running with suexec through a wrapper script such as set up by Webmin, the PHP_SELF variable is ""fixed"" by PHP to point to the wrapper instead of the actual script. This in turn kills some of the admin lists (posts are empty) along with problems setting theme (Thematic) options.


To recreate, adjust '''httpd.conf''' vhost to:
{{{
<VirtualHost *:80>
  SuexecUserGroup ""#1111"" ""#2222""
  ServerName example.com
  DocumentRoot /home/example.com/www
  ErrorLog /home/example.com/logs/error_log
  CustomLog /home/example.com/logs/access_log combined
  ScriptAlias /cgi-bin/ /home/example.com/cgi-bin/
  <Directory /home/example.com/www>
    Options Indexes IncludesNOEXEC FollowSymLinks
    allow from all
    AllowOverride All
    Action application/x-httpd-php5 /cgi-bin/php5.cgi
    AddType application/x-httpd-php5 .php5
    AddType application/x-httpd-php5 .php
  </Directory>
  <Directory /home/example.com/cgi-bin>
    allow from all
  </Directory>
  RemoveHandler .php
  RemoveHandler .php5
</VirtualHost>
}}}


Add the following shell script '''/cgi-bin/php5.cgi'''
{{{
#!/bin/bash
PHPRC=$DOCUMENT_ROOT/../etc/php.ini
export PHPRC
umask 022
SCRIPT_FILENAME=$PATH_TRANSLATED
export SCRIPT_FILENAME
exec /usr/bin/php-cgi
}}}

Copy the '''php.ini''' file to '''/home/example.com/etc/'''



The problem is temporarily solved by setting the following PHP option in '''php.ini''':
{{{
cgi.fix_pathinfo = 0
}}}

Which tell PHP not to do a path gawk. I think what should be done is Wordpress should not use PHP_SELF or at least prefer using ORIG_PHP_SELF if it exists, possibly resetting PHP_SELF for downstream functions.
",magdude
16600,AdminMenu rendering code chokes on uppercase,,Administration,3.1,normal,minor,Awaiting Review,defect (bug),reopened,,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
19722,Administering wih SSL and uploading images makes image links HTTPS,,Administration,3.3,normal,normal,Awaiting Review,defect (bug),new,,2012-01-03T16:45:51Z,2013-04-29T21:47:16Z,"I am noticing this issue in 3.3 that all uploaded attachments are listed in the library using HTTPS in the location when administerng over SSL. I tried the patch.2 listed and it does not seem to change anything. Previously this was never an issue, but now all my images are getting added as HTTPS when I do not want them to be. I end up searching the DB for "" https://"" and replacing with HTTP after every post.

Will this ever get resolved back to normal so SSL admin can be used without having all attachments over SSL? I only have SSL for login and admin.",ccolotti
14565,After Category Quick Edit Update Parent Category Dropdown,,Administration,3.0.1,normal,trivial,Future Release,defect (bug),new,has-patch,2010-08-08T22:07:45Z,2010-12-26T23:09:36Z,"On a clean install I went to Posts -> Categories and used Quick Edit to rename 'Uncategorized' to 'Rename-Test' I then went to create a new Category using the form on the left and the Parent drop down still lists 'Uncategorized'.

Should this be updated without have to reload the page?",Dempsey
13218,Allow to specify name of drop-in which is not a plugin,nacin,Administration,3.0,normal,normal,Future Release,defect (bug),reviewing,,2010-05-02T21:14:23Z,2011-04-07T03:49:48Z,"As I mentioned in #11861, plugin DB Cache Reloaded have two files: one main plugin file, and another used as `wp-content/db.php` drop-in. I would like to provide name for the drop-in file, but now the only way is to use the `Plugin Name:` header. Unfortunately when I do this, drop-in file bundled with plugin appears on plugin list. Therefore I need new header, which could I use to specify drop-in name, without that unwanted side effect.",sirzooro
21211,Alter how settings_errors are output in options.php,,Administration,3.4.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-07-10T23:44:37Z,2012-12-10T18:43:09Z,"The `*_settings_error(s)` and `settings_error` functions are used mainly as part of the Settings API, but with the way that options.php currently handles the settings errors, it assumes that people will use this functionality exclusively with the Settings API. Notice options.php, starting at line 153:

{{{
	/**
	 * Handle settings errors and return to options page
	 */
	// If no settings errors were registered add a general 'updated' message.
	if ( !count( get_settings_errors() ) )
		add_settings_error('general', 'settings_updated', __('Settings saved.'), 'updated');
	set_transient('settings_errors', get_settings_errors(), 30);
}}}

This simply assumes that no other outside source has registered any sort of setting error other than the current options page. TwentyEleven does this, and so if any other source has registered any notices via these functions, the ""Settings saved."" message will not be output because the first bit of logic will fail. I don't think this assumption can (nor should) be warranted, so there needs to be another way to handle this so that themes like TwentyEleven who only call `settings_errors` at the top of their options page don't get unknowingly hijacked by other sources.

I always suggest registering your own errors at the end of the sanitization callback for your setting, and then output those specific errors within settings_errors to avoid any internal conflicts like this.

Just looking for some ways to approach this. :-) 


",griffinjt
10422,Answering to comment from Dashboard does not update Dashboard statistics,,Administration,2.8.1,normal,normal,Future Release,defect (bug),new,has-patch,2009-07-16T05:18:48Z,2012-09-17T19:50:52Z,"Hi there,

there is a short statistics ""Right now/At a Glance"" box in Dashboard, containing number of posts, pages, comments etc.

There is also a box with list of most recent comments in the Dashboard.

If a user answers to a comment in this ""Recent comments"" box in Dashboard, which uses AJAX, so it does not reload the whole page, it creates a new comment, but the number of comments in the ""Right now"" box is not updated.

I know this is not a critical bug, but it would be really nice if it works.

Take care, Honza

P.S.: As there is no ""Dashboard"" component in the Trac, I did not know whether to assign it to Administration or Comments component. I put it into Administration, if you think it better suits to Comments or any other component, please feel free to change it.",honza.skypala
18530,Browser update dismiss setting ignored with JavaScript disabled,,Administration,3.2.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-08-27T15:41:24Z,2013-01-22T01:14:57Z,"When working on a corporate desktop you can not update your browser. When freely deciding about when to upgrade you might not even want to upgrade.

Therefore a user setting has been introduced to remove the nag warning. E.g. my linux distro is perfectly ok with it's firefox and it's taken care of by the pacakager. For my OS, I have the latest version.

I needed to press dismiss (with JS enabled, the related report is #17766).

What has been missed is to not display that nag if javascript is disabled. The setting gets ignored.

How to Reproducde

  * Setup a WP 3.2.1 Blog.
  * Log into admin with a Firefox 3 browser.
  * Enable Javascript.
  * Dismiss the Nag.
  * Logout and close the Browser.
  * Restart the Browser.
  * Disable Javascript (if you need to).
  * Log into Dashboard.

Result: Browser Update Nag is displayed.

Expected Result: Browser Update Nag is not displayed as specified by the user.",hakre
16946,Bug between CPT menu_position and add_object_page(),,Administration,3.1,normal,normal,Future Release,defect (bug),reviewing,,2011-03-23T10:11:12Z,2012-07-20T13:49:29Z,I write a demo plugin for describe the bug. See attachment.,momo360modena
17861,Bug on WordPress Credits page,nacin,Administration,3.2,normal,normal,WordPress.org,defect (bug),reopened,,2011-06-21T15:56:56Z,2012-11-28T00:15:31Z,"Hi,

There are a couple of bugs on WordPress Credits page.

1.- There is a problem with usernames with dot, for example my username ""j.conti""

I'm on translators list, my name and avatar are correct but the link to my profile is wrong. Now, the link is http://profiles.wordpress.org/users/jconti but my profile is http://profiles.wordpress.org/users/j.conti the bug is deleting the dot.

2.- There is a problem with my name, my name is ""José Conti"" but is showing ""JosÃ© Conti""

attached pic

Thank you",j.conti
10762,Bulk editing creates invalid URIs,,Administration,2.8.4,normal,normal,Future Release,defect (bug),assigned,,2009-09-09T16:53:30Z,2013-05-12T10:27:16Z,They simply get too long for example if you move 999 posts to trash. It might be helpfull to switch to the post form method.,hakre
15761,Bulk editing on posts without Javascript enabled results in the post being set to draft,garyc40,Administration,2.9,normal,normal,Future Release,defect (bug),assigned,needs-refresh,2010-12-10T09:03:35Z,2011-06-09T19:49:56Z,"Currently, Bulk editing is available without JavaScript being enabled.

The result of attempting to edit a post, is a redirect back to the posts page with the post being marked as a draft. No UI is offered for bulk editing.

This behaviour exists in trunk, 3.0, and 2.9 from my testing (havn't tested earlier versions).

The Bulk editing screen appears to work without Javascript for modification submittal, so it's possible that a non-js version would be possible.",dd32
16793,Bulk inline post edit doesn't show categories or tags if the CPT doesn't support titles,,Administration,,normal,normal,Future Release,defect (bug),reopened,has-patch,2011-03-07T23:24:56Z,2011-05-22T17:04:59Z,"1. Register a CPT that doesn't support titles:

{{{
add_action( 'init', function() {
	register_post_type( 'foo', array(
		'show_ui' => true,
		'label' => 'Foo',
		'supports' => array( 'editor' ),
		'taxonomies' => array( 'category', 'post_tag' )
	) );
} );
}}}

2. Create a 'foo' post.

3. Go to wp-admin/edit.php?post_type=foo and choose the 'Edit' bulk action.

Expected behaviour: shows the category checkbox list and the tag textarea.

Actual behaviour: only the status dropdown is shown.
",scribu
23904,CSS glitch when the browser window width isn't right,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2013-03-29T21:20:47Z,2013-03-29T22:29:53Z,"The post editor's layout now switches when the width of the window is narrow enough. But there's an intermediary zone, at least on Webkit/Safari where it's too narrow for the conditional CSS to kick in, yet too wide for the browser to deal with it. I presume, based on what I was working on a few minutes ago, that it's related to paddings.

Screenshot attached.",Denis-de-Bernardy
22022,Can’t properly add pages of type edit.php?post_type=xxx as submenu items to arbitrary parent menus,,Administration,3.0,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2012-09-27T20:22:43Z,2013-01-11T11:22:48Z,"The following code illustrates the problem.
{{{
add_menu_page('My Pages', 'My Pages', 'edit_posts', 'parentslug', array(class, func));
add_submenu_page('parentslug', 'Settings', 'Settings', 'edit_posts', 'mysettings', array(class, func));
add_submenu_page('parentslug', 'Custom Post Type', 'Custom Post Type', 'edit_posts', 'edit.php?post_type=xxx'); 
}}}
When you click on the first submenu item, the menu stays open, displaying the submenu items as it should. When you click on the item for the custom post type, the parent menu is closed and submenu pages are not displayed.

The root of the problem is how $parent_page is handled for pages of type edit.php?post_type=xxx. In get_admin_page_parent(), $parent_file is always set to $submenu[$parent], which may cause the submenu slug to be different from $parent_file. But in _wp_menu_output, if the submenu slug and parent slug are not equal, the 'wp-has-current-submenu wp-menu-open' classes do not get added which means the menu gets displayed as being closed.

Since there are no actions called between get_admin_parent_page() and the output of the menu, the only workaround I can see is some ugly JS that fixes up the classes.

It seems like the least intrusive fix would be to just move the call to apply_filters(""parent_file) in menu-header.php to after the call to get_admin_page_parent() so that $parent_file can truly be overridden. This also seems inline with the intent of the filter.
",jjharr
17209,Category list table breaks when custom post type label is too long,,Administration,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-04-21T21:14:11Z,2012-11-01T06:22:13Z,"Registered a post type which has a longer label than ""posts"" (called ""resources""). List table listing the categories for that post type breaks slightly when a name is over a certain length. Picture attached.

Offending CSS is setting a 10% width to that column.

I can provide a patch. Though since the number of posts is centered, the heading is left aligned. If that column is widened, should the title be centered as well (since left-aligned may look weird at one point)?",andrewryno
17413,Code added by WP_List_Table::_js_vars is duplicated,sorich87,Administration,3.2,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-05-13T09:45:49Z,2011-10-27T17:58:16Z,"When a list table is 'ajax enabled' (e.g. comments list table on edit-comments.php), javascript code is added by WP_List_Table::_js_vars to the footer. If you look at the source code in your browser, you will see that code is duplicated.",sorich87
20595,Collapsible Admin menu fails if items are added by code,,Administration,3.3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-05-01T23:27:42Z,2012-05-02T07:48:13Z,"If I add a Button to the admin meny by '''action adminmenu''' the menu wont rebuid from collapsed state due z-index issues. In my opinion creating the menue might be changed to the following: 


{{{

diff --git a/wp-admin/menu-header.php b/wp-admin/menu-header.php
index cdd81b2..8454a3d 100644
--- a/wp-admin/menu-header.php
+++ b/wp-admin/menu-header.php
@@ -164,10 +164,6 @@ function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
                }
                echo ""</li>"";
        }
-
-       echo '<li id=""collapse-menu"" class=""hide-if-no-js""><div id=""collapse-button""><div></div></div>';
-       echo '<span>' . esc_html__( 'Collapse menu' ) . '</span>';
-       echo '</li>';
 }

 ?>
@@ -181,6 +177,9 @@ function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {

 _wp_menu_output( $menu, $submenu );
 do_action( 'adminmenu' );
+echo '<li id=""collapse-menu"" class=""hide-if-no-js""><div id=""collapse-button""><div></div></div>';
+echo '<span>' . esc_html__( 'Collapse menu' ) . '</span>';
+echo '</li>';

 ?>
 </ul>
}}}

see also: http://wordpress.org/support/topic/admin-menu-wont-dis-collapse-anymore",digitaldonkey
15784,Contributors can't easily view others' posts in a certain term,,Administration,3.0,normal,normal,Future Release,defect (bug),new,reporter-feedback,2010-12-12T11:38:39Z,2012-02-10T15:01:16Z,"As a contributor, the default tab is 'Me', not 'All'. But you can go to 'All' and see a list of all posts.

At that time, you can also search for posts, and filter by category, date, etc. Those all work fine. You can also filter by category or tag by clicking a term in those columns, but this doesn't work -- all_posts=1 gets removed, and you end up seeing the 'Me' tab again.

You can manually append all_posts=1, but there's no way to actually filter by term viewing all posts via the UI.

Interestingly, the author query var works. That'd be bad if it didn't. But it doesn't append all_posts=1, so it's done internally.",nacin
18048,Ctrl+S draft save causes prompt on exit,,Administration,,normal,normal,Awaiting Review,defect (bug),new,close,2011-07-09T12:25:25Z,2011-11-15T03:45:49Z,"When you use the ""save draft"" button and leave the edit page, the ""unsaved changes"" prompt doesn't show up. However, when you save using Ctrl+S and leave - the prompt appears.",jakub.tyrcha
15466,Database errors on dashboard,,Administration,3.1,normal,minor,Awaiting Review,defect (bug),reopened,,2010-11-18T07:11:43Z,2012-09-04T12:33:11Z,"Not sure why it's happening and it's only happening on one of my blogs, but posting it anyway.

== Incoming Links ==

{{{
WordPress database error: [Incorrect string value: '\xD0\xA3 \xD0\xBC\xD0...' for column 'option_value' at row 1]
INSERT INTO `wp_options` (`option_name`, `option_value`, `autoload`) VALUES ('_transient_feed_de55c189685ea1944a5f72021d68a360', 'a:4:{s:5:\""child\"";a:1:{s:0:\""\"";a:1:{s:3:\""rss\"";a:1:{i:0;a:6:{s:4:\""data\"";s:1:\""\n\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:7:\""version\"";s:3:\""2.0\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:1:{s:0:\""\"";a:1:{s:7:\""channel\"";a:1:{i:0;a:6:{s:4:\""data\"";s:10:\""\n\n\n\n\n\n\n\n\n\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:4:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:51:\""link:http://www.finalgear.com/ - Google Blog Search\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:109:\""http://blogsearch.google.com/blogsearch?hl=en&scoring=d&ie=ISO-8859-1&num=10&q=link:http://www.finalgear.com/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:108:\""Google Blog Search Results: <b>1,432</b> results for <b>http://www.finalgear.com/</b> - showing 1 through 10\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""item\"";a:10:{i:0;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:37:\""Evora S in next episode of Fifth Gear\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:75:\""http://www.lotustalk.com/forums/f170/evora-s-next-episode-fifth-gear-94777/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:238:\""The next episode of Fifth Gear with feature an Evora S. It will air on November 19th in the UK and for those of us unfortunate enough to not live in England it can be downloaded via torrent client from www.finalgear.com a little while ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:36:\""LotusTalk - The Lotus Cars Community\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:8:\""Mr. Know\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Wed, 17 Nov 2010 02:58:32 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:1;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:9:\""Top Gear?\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:41:\""http://krolyk.livejournal.com/114570.html\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:373:\""У меня иногда спрашивают: что такого интересного я нахожу в передаче Top Gear? Сейчас, накануне запуска в эфир локализованной версии для США, на ТВ вышла передача с ведущими оригинального, британского Top Gear. ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:36:\""Записки Андрея Гуле\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:6:\""krolyk\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Fri, 29 Oct 2010 09:09:31 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:2;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:50:\""New Jeremy Clarkson Blu-Ray/DVD Coming In November\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:85:\""http://blog.webridestv.com/2010/10/new-jeremy-clarkson-blu-raydvd-coming-in-november/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:240:\""Everyone knows Jezza Clarkson from Top Gear, but what many people in North America may not know is that every year, Jeremy comes out with a new DVD, that has some of the feel of Top Gear, but is freed from the format, and there are some ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:15:\""Sports Car Blog\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:11:\""Eric Trytko\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Tue, 12 Oct 2010 11:30:49 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:3;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:72:\""Upcoming Top Gear America Trailer... Thrashes a mid 70s Coupe <b>...</b>\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:135:\""http://www.cadillacforums.com/forums/cadillac-forums-lounge-member-introductions/207377-upcoming-top-gear-america-trailer-thrashes.html\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:171:\""It is sad to see :crying:. http://www.finalgear.com/news/2010/0...ar-us-trailer/ I hope it is a good show but I think they\'re right; nothing will ever top the British one.\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:14:\""CadillacOwners\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""eldorado99\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Sat, 07 Aug 2010 16:26:27 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:4;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:38:\""Top Gear&#39;s Tribute To Ayrton Senna\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:83:\""http://space-action-hero.blogspot.com/2010/08/top-gear-tribute-to-ayrton-senna.html\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:237:\""Last week\'s Top Gear was epic. One of Top Gear\'s best in a while. There was the Veyron Super Sport, Tom Cruise and Cameron Diaz, but most of all, there was a heartwarming and touching tribute to arguably the greatest F1 driver of all ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:22:\""The Meditation Chamber\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:27:\""noreply@blogger.com (Kenny)\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Mon, 02 Aug 2010 14:02:00 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:5;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:28:\""Top Gear Season 15 Episode 5\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:63:\""http://importbible.com/2010/07/29/top-gear-season-15-episode-5/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:233:\""This week\'s Top Gear is packed with action from start to finish. Hammond challenges snow mobiles in his nicely built Touareg, Captain Slow is back at Volkswagen\'s test track to try out their new Bugatti Veyron and lastly Clarkson ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""Import Bible - Automotive Apparel\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:5:\""david\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Thu, 29 Jul 2010 21:40:21 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:6;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:28:\""Top Gear Season 15 Episode 4\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:63:\""http://importbible.com/2010/07/24/top-gear-season-15-episode-4/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:230:\""Season 15 is starting to shape up to be an epic season. In this weeks episode Clarkson compares two super car convertibles and the boys are challenged to build motor homes and of course putting them through various challenges. ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""Import Bible - Automotive Apparel\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:5:\""david\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Sun, 25 Jul 2010 00:45:05 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:7;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:30:\""Post Vacation Reading Material\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:64:\""http://utterlyboring.com/archives/2010/07/19/post_vacation_r.php\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:219:\""Since getting back, I\'ve been trying to catch up on all the email and news that has been sent my way (you\'re always welcome to send more using the contact form on this site or e-mail utterlyboring at gmail dot com). ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:17:\""UtterlyBoring.com\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:7:\""unknown\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Mon, 19 Jul 2010 20:24:17 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:8;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Shared items on July 14, 2010\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:64:\""http://www.dot.alter.si/2010/07/15/shared-items-on-july-14-2010/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:239:\""An overview of interesting articles that came through my Google Reader subscriptions recently. Sony unveils world\'s first consumer HD camcorder with interchangeable lens system. from: Gizmag Emerging Technology Magazine on 14 July 2010 ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:15:\""Connecting Dots\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:6:\""Jernej\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Thu, 15 Jul 2010 06:50:43 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:9;a:6:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:2:{s:0:\""\"";a:3:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:28:\""Top Gear Season 15 Episode 3\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:63:\""http://importbible.com/2010/07/12/top-gear-season-15-episode-3/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:235:\""This weeks episode pits three new high performance sedans against each other in a number of challenges to find out which one is the best. The hosts also review and compare the new Chevorlet Camero versus the new Mercedes Benz E63. ...\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:3:{s:9:\""publisher\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""Import Bible - Automotive Apparel\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:5:\""david\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""date\"";a:1:{i:0;a:5:{s:4:\""data\"";s:29:\""Tue, 13 Jul 2010 05:55:41 GMT\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}}}s:36:\""http://a9.com/-/spec/opensearch/1.1/\"";a:3:{s:12:\""totalResults\"";a:1:{i:0;a:5:{s:4:\""data\"";s:4:\""1432\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:10:\""startIndex\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""1\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:12:\""itemsPerPage\"";a:1:{i:0;a:5:{s:4:\""data\"";s:2:\""10\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}}}}}}}}s:4:\""type\"";i:128;s:7:\""headers\"";a:9:{s:4:\""date\"";s:29:\""Thu, 18 Nov 2010 07:07:10 GMT\"";s:6:\""pragma\"";s:8:\""no-cache\"";s:7:\""expires\"";s:29:\""Fri, 01 Jan 1990 00:00:00 GMT\"";s:13:\""cache-control\"";s:25:\""no-cache, must-revalidate\"";s:12:\""content-type\"";s:23:\""text/xml; charset=UTF-8\"";s:10:\""set-cookie\"";s:138:\""PREF=ID=48169caac9439b57:TM=1290064030:LM=1290064031:S=Ik6CY3EJZro84eTi; expires=Sat, 17-Nov-2012 07:07:11 GMT; path=/; domain=.google.com\"";s:22:\""x-content-type-options\"";s:7:\""nosniff\"";s:6:\""server\"";s:4:\""bsfe\"";s:16:\""x-xss-protection\"";s:13:\""1; mode=block\"";}s:5:\""build\"";s:14:\""20090627192103\"";}', 'no') ON DUPLICATE KEY UPDATE `option_name` = VALUES(`option_name`), `option_value` = VALUES(`option_value`), `autoload` = VALUES(`autoload`)

    Mr. Know linked here saying, ""The next episode of Fifth Gear with feature an Evo ...""
    krolyk linked here saying, ""У меня иногда спрашивают: что такого интересного я ...""
    Eric Trytko linked here saying, ""Everyone knows Jezza Clarkson from Top Gear, but w ...""
    eldorado99 linked here saying, ""It is sad to see :crying:. http://www.finalgear.co ...""
    noreply@blogger.com (Kenny) linked here saying, ""Last week's Top Gear was epic. One of Top Gear's b ...""
}}}

== WordPress Development Blog ==

{{{
WordPress database error: [Incorrect string value: '\xD0\x9D\xD0\xB8\xD0\xBA...' for column 'option_value' at row 1]
INSERT INTO `wp_options` (`option_name`, `option_value`, `autoload`) VALUES ('_transient_feed_0ff4b43bd116a9d8720d689c80e7dfd4', 'a:4:{s:5:\""child\"";a:1:{s:0:\""\"";a:1:{s:3:\""rss\"";a:1:{i:0;a:6:{s:4:\""data\"";s:3:\""\n\n\n\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:7:\""version\"";s:3:\""2.0\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:1:{s:0:\""\"";a:1:{s:7:\""channel\"";a:1:{i:0;a:6:{s:4:\""data\"";s:50:\""\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:3:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:14:\""WordPress News\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:25:\""http://wordpress.org/news\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:14:\""WordPress News\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:13:\""lastBuildDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Thu, 30 Sep 2010 03:23:31 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""language\"";a:1:{i:0;a:5:{s:4:\""data\"";s:2:\""en\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:9:\""generator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""http://wordpress.org/?v=3.1-alpha\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""item\"";a:10:{i:0;a:6:{s:4:\""data\"";s:56:\""\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:39:\""WordPress for iPhone/iPad v2.6 Released\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:43:\""http://wordpress.org/news/2010/09/ios-v2-6/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:52:\""http://wordpress.org/news/2010/09/ios-v2-6/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Thu, 30 Sep 2010 03:23:31 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:6:{i:0;a:5:{s:4:\""data\"";s:8:\""Releases\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:5:\""apple\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:2;a:5:{s:4:\""data\"";s:3:\""ios\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:3;a:5:{s:4:\""data\"";s:4:\""ipad\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:4;a:5:{s:4:\""data\"";s:6:\""iphone\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:5;a:5:{s:4:\""data\"";s:6:\""mobile\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""http://wordpress.org/news/?p=1497\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:335:\""Attention Apple-gadget-owning WordPress users! Have you been using the WordPress iOS app for iPhone and iPad? Or maybe you tried it a while back and thought it wasn&#8217;t for you? Either way, the new release &#8212; v2.6 &#8212; will knock your socks off. Why? A bunch of reasons: Video. Record, upload, attach, and play videos [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""Jane Wells\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:2319:\""<p>Attention Apple-gadget-owning WordPress users! Have you been using the WordPress iOS app for iPhone and iPad? Or maybe you tried it a while back and thought it wasn&#8217;t for you? Either way, the new release &#8212; v2.6 &#8212; will knock your socks off. Why? A bunch of reasons:</p>\n<ul>\n<li>Video. Record, upload, attach, and play videos within the app. Yay for being able to catch your friends&#8217; and co-workers&#8217; most <del>embarrassing shenanigans</del> <em>creative moments</em> with iPhone video and publish them immediately for all the world to see on your WordPress site.</li>\n<li>A total rewrite of the way local drafts are handled, to prevent the unintentional loss of your pending posts.</li>\n<li>Autosave/post revisions. Bam! One of the &#8220;oh, thank goodness&#8221; features of the web app makes it into the iOS version.</li>\n<li>Easier setup. Faster and easier process for adding your sites to the app.</li>\n<li>Media Library. We&#8217;re gradually getting closer to the media management you&#8217;re used to in the web app.</li>\n</ul>\n<p>There are also numerous bugfixes and performance enhancements in this release, so if you haven&#8217;t been using the app lately, you should consider giving it another try. I&#8217;m personally pretty excited to start using the iPhone version more often now that there are all these fixes and new features. Especially the video upload. You know, for those <em>creative moments</em> that make life fun. <img src=\'http://wordpress.org/news/wp-includes/images/smilies/icon_smile.gif\' alt=\':)\' class=\'wp-smiley\' /> </p>\n<p>You can read the full <a href=\""http://ios.wordpress.org/2010/09/29/introducing-version-2-6/\"">2.6 release post on the WordPress for iOS blog</a>, and can download v2.6 from iTunes/the app store. Happy mobile blogging!</p>\n<p style=\""text-align: center\"">* * *</p>\n<p>Not an iPhone user? We&#8217;ve still got your on-the-go back! Check out the WordPress apps for <a href=\""http://android.wordpress.org/\"">Android</a>, <a href=\""http://blackberry.wordpress.org/\"">Blackberry</a>, and <a href=\""http://nokia.wordpress.org/\"">Nokia (beta)</a>. They&#8217;re all 100% GPL, of course, and we&#8217;re always looking for contributors to the development projects, so check the blogs if you have mobile dev skills and want to get involved.</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:48:\""http://wordpress.org/news/2010/09/ios-v2-6/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:1;a:6:{s:4:\""data\"";s:50:\""\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""WordPress Trademark Changes Hands\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:51:\""http://wordpress.org/news/2010/09/trademark-to-wpf/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:60:\""http://wordpress.org/news/2010/09/trademark-to-wpf/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Thu, 09 Sep 2010 23:14:13 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:4:{i:0;a:5:{s:4:\""data\"";s:7:\""General\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:10:\""Automattic\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:2;a:5:{s:4:\""data\"";s:9:\""Trademark\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:3;a:5:{s:4:\""data\"";s:20:\""WordPress Foundation\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""http://wordpress.org/news/?p=1488\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:379:\""The WordPress community took a big step forward today when Matt announced that Automattic has donated the WordPress trademark to the non-profit WordPress Foundation. Moving forward, the Foundation will be responsible for safeguarding the trademarked name and logo from misuse toward the end of protecting WordPress and preventing confusion among people trying to figure out [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""Jane Wells\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:502:\""<p>The WordPress community took a big step forward today when <a href=\""http://wp.me/p4oB3-9ie\"">Matt announced</a> that Automattic has donated the WordPress trademark to the non-profit <a href=\""http://wp.me/pMBRF-1u\"">WordPress Foundation</a>. Moving forward, the Foundation will be responsible for safeguarding the trademarked name and logo from misuse toward the end of protecting WordPress and preventing confusion among people trying to figure out if a resource is &#8220;official&#8221; or not.</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:56:\""http://wordpress.org/news/2010/09/trademark-to-wpf/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:2;a:6:{s:4:\""data\"";s:41:\""\n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:15:\""WordPress 3.0.1\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:50:\""http://wordpress.org/news/2010/07/wordpress-3-0-1/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:59:\""http://wordpress.org/news/2010/07/wordpress-3-0-1/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Thu, 29 Jul 2010 21:38:47 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:1:{i:0;a:5:{s:4:\""data\"";s:8:\""Releases\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""http://wordpress.org/news/?p=1475\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:338:\""After nearly 11 million downloads of WordPress 3.0 in just 42 days, we&#8217;re releasing WordPress 3.0.1. The requisite haiku: Three dot oh dot one Bug fixes to make you smile Update your WordPress This maintenance release addresses about 50 minor issues. The testing many of you contributed prior to the release of 3.0 helped make [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:12:\""Andrew Nacin\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:951:\""<p>After nearly <a href=\""http://wordpress.org/download/counter/\"">11 million downloads</a> of WordPress 3.0 in just 42 days, we&#8217;re releasing WordPress 3.0.1. The requisite haiku:</p>\n<p>Three dot oh dot one<br />\nBug fixes to make you smile<br />\nUpdate your WordPress</p>\n<p>This maintenance release addresses <a href=\""http://codex.wordpress.org/Version_3.0.1\"">about 50 minor issues</a>. The testing many of you contributed prior to the release of 3.0 helped make it one of the best and most stable releases we&#8217;ve had.</p>\n<p><a href=\""http://wordpress.org/download/\"">Download 3.0.1</a> or update automatically from the Dashboard &gt; Updates menu in your site&#8217;s admin area.</p>\n<p><em>Note: If you downloaded 3.0.1 in the first 20 minutes of release (before 2200 UTC), you&#8217;ll want to reinstall it, which you can do right from your Updates screen. <a href=\""http://twitter.com/wordpress/status/19859163982\"">Our bad</a>.</em></p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:55:\""http://wordpress.org/news/2010/07/wordpress-3-0-1/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:3;a:6:{s:4:\""data\"";s:50:\""\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:42:\""PHP 4 and MySQL 4 End of Life Announcement\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:58:\""http://wordpress.org/news/2010/07/eol-for-php4-and-mysql4/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:67:\""http://wordpress.org/news/2010/07/eol-for-php4-and-mysql4/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Fri, 23 Jul 2010 19:01:46 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:4:{i:0;a:5:{s:4:\""data\"";s:7:\""Hosting\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:5:\""MySQL\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:2;a:5:{s:4:\""data\"";s:3:\""PHP\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:3;a:5:{s:4:\""data\"";s:12:\""requirements\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:33:\""http://wordpress.org/news/?p=1447\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:348:\""Our approach with WordPress has always been to make it run on common server configurations. We want users to have flexibility when choosing a host for their precious content. Because of this strategy, WordPress runs pretty much anywhere. Web hosting platforms, however, change over time, and we occasionally are able to reevaluate some of the [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:12:\""Mark Jaquith\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:3021:\""<p>Our approach with WordPress has always been to make it run on common server configurations. We want users to have flexibility when choosing a host for their precious content. Because of this strategy, WordPress runs pretty much anywhere. Web hosting platforms, however, change over time, and we occasionally are able to reevaluate some of the requirements for running WordPress. Now is one of those times. You probably guessed it from the title &#8212; we&#8217;re finally ready to announce the end of support for PHP 4 and MySQL 4!</p>\n<p>First up, the announcement that developers really care about. WordPress 3.1, due in late 2010, will be the last version of WordPress to support PHP 4.</p>\n<p>For WordPress 3.2, due in the first half of 2011, we will be raising the minimum required PHP version to 5.2. Why 5.2? Because that&#8217;s what the vast majority of WordPress users are using, and it offers substantial improvements over earlier PHP 5 releases. It is also the minimum PHP version that the <a href=\""http://drupal.org/\"">Drupal</a> and <a href=\""http://www.joomla.org/\"">Joomla</a> projects will be supporting in their next versions, both due out this year.</p>\n<p>The numbers are now, <em>finally</em>, strongly in favor of this move. Only around 11 percent of WordPress installs are running on a PHP version below 5.2. Many of them are on hosts who support PHP 5.2 &#8212; users merely need to change a setting in their hosting control panel to activate it. We believe that percentage will only go down over the rest of the year as hosting providers realize that to support the newest versions of WordPress (or Drupal, or Joomla), they&#8217;re going to have to pull the trigger.</p>\n<p>In less exciting news, we are also going to be dropping support for MySQL 4 after WordPress 3.1. Fewer than 6 percent of WordPress users are running MySQL 4. The new required MySQL version for WordPress 3.2 will be 5.0.15.</p>\n<p>WordPress users will not be able to upgrade to WordPress 3.2 if their hosting environment does not meet these requirements (the built-in updater will prevent it). In order to determine which versions your host provides, we&#8217;ve created the <a href=\""http://wordpress.org/extend/plugins/health-check/\"">Health Check plugin</a>. You can download it manually, or use this <a href=\""http://coveredwebservices.com/wp-plugin-install/?plugin=health-check\"">handy plugin installation</a> tool I whipped up. Right now, Health Check will only tell you if you&#8217;re ready for WordPress 3.2. In a future release it will provide all sorts of useful information about your server and your WordPress install, so hang on to it!</p>\n<p>In summary: WordPress 3.1, due in late 2010, will be the last version of WordPress to support PHP 4 and MySQL 4. WordPress 3.2, due in the first half of 2011, will require PHP 5.2 or higher, and MySQL 5.0.15 or higher. <a href=\""http://coveredwebservices.com/wp-plugin-install/?plugin=health-check\"">Install the Health Check plugin</a> to see if you&#8217;re ready!</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:63:\""http://wordpress.org/news/2010/07/eol-for-php4-and-mysql4/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:4;a:6:{s:4:\""data\"";s:44:\""\n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:41:\""100 Million Plugin Downloads and Counting\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:46:\""http://wordpress.org/news/2010/07/100-million/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:55:\""http://wordpress.org/news/2010/07/100-million/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Fri, 02 Jul 2010 17:48:34 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:2:{i:0;a:5:{s:4:\""data\"";s:9:\""Community\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:11:\""Development\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1429\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:364:\""WordPress 3.0 Thelonious passed 3 million downloads yesterday, and today the plugin directory followed suit with a milestone of its own: 100 million downloads. The WordPress community&#8217;s growth over the years has been tremendous, and we want to reinvest in it. So we&#8217;re taking the next two months to concentrate on improving WordPress.org. A major [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:12:\""Andrew Nacin\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:2319:\""<p>WordPress 3.0 Thelonious passed <a href=\""http://wordpress.org/download/counter/\"">3 million downloads</a> yesterday, and today <a href=\""http://wordpress.org/extend/plugins/\"">the plugin directory</a> followed suit with a milestone of its own: 100 million downloads.</p>\n<p>The WordPress community&#8217;s growth over the years has been tremendous, and we want to reinvest in it. So we&#8217;re taking the next two months to concentrate on improving WordPress.org. A major part of that will be improving the infrastructure of the plugins directory. More than 10,000 plugins are in the directory, every one of them GPL compatible and free as in both beer and speech. Here&#8217;s what we have in mind:</p>\n<p>We want to provide developers the tools they need to build the best possible plugins. We&#8217;re going to provide better integration with the forums so you can support your users. We&#8217;ll make more statistics available to you so you can analyze your user base, and over time we hope to make it easier for you to manage, build, and release localized plugins.</p>\n<p>We want to improve how the core software works with your plugin and the plugin directory. We&#8217;re going to focus on ensuring seamless upgrades by making the best possible determinations about compatibility, and offer continual improvements to the plugin installer. And we also want to give you a better developer tool set like SVN notifications and improvements to the bug tracker.</p>\n<p>We&#8217;re also going to experiment with other great ideas to help the community help plugin authors. We want it to be easy for you to offer comments to plugin authors and the community, including user reviews and better feedback. We may experiment with an adoption process for abandoned plugins as a way to revitalize hidden gems in the directory. I&#8217;m not sure there is a better way to show how extendable WordPress is and how awesome this community is at the same time.</p>\n<p>As <a href=\""http://wordpress.org/development/2010/06/thelonious/\"">Matt said in the 3.0 release announcement</a>, our goal isn&#8217;t to make everything perfect all at once. But we think incremental improvements can provide us with a great base for 3.1 and beyond, and for the tens of millions of users, and hundreds of millions of plugin downloads to come.</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:51:\""http://wordpress.org/news/2010/07/100-million/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:5;a:6:{s:4:\""data\"";s:44:\""\n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:18:\""Summer of WordCamp\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:53:\""http://wordpress.org/news/2010/06/summer-of-wordcamp/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:62:\""http://wordpress.org/news/2010/06/summer-of-wordcamp/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Tue, 29 Jun 2010 17:19:45 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:2:{i:0;a:5:{s:4:\""data\"";s:9:\""Community\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:8:\""WordCamp\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1418\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:355:\""It&#8217;s been summer for about a week now. Whether you&#8217;re on vacation or burning the midnight oil, attending a local/nearby WordCamp is a great way to spend a weekend. Meet other WordPress users, developers, designers &#38; consultants, learn a little something, maybe share a little of your own experience and knowledge, and break bread (or [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""Jane Wells\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:5678:\""<p>It&#8217;s been summer for about a week now. Whether you&#8217;re on vacation or burning the midnight oil, attending a local/nearby <a href=\""http://wordcamp.org\"">WordCamp</a> is a great way to spend a weekend. Meet other WordPress users, developers, designers &amp; consultants, learn a little something, maybe share a little of your own experience and knowledge, and break bread (or raise a toast) with new friends and collaborators. Here are the WordCamps scheduled for this summer, along with what I know about them.</p>\n<p>July 3: <a href=\""http://wordcamp.de/\"">WordCamp Germany</a> &#8211; Berlin, Germany. I love it that they&#8217;re using BuddyPress for their event site. They have multiple tracks, and what looks to be a nice variety of sessions. It&#8217;s only a few days away, so if you&#8217;re thinking of going, get your tickets now!</p>\n<p>July 10: <a href=\""http://2010.boulder.wordcamp.org/\"">WordCamp Boulder</a> &#8211; Boulder, Colorado, USA. This was WordCamp Denver last year, but the organizers have decided to mix it up and go back and forth between Denver and Boulder, which also has a thriving tech community. This year the venue is the Boulder Theater (so pretty!), and there will sessions for bloggers and devs alike, plus a Genius Bar to help people get their WordPress sites all fixed up. The speaker lineup looks good, and I hear they&#8217;re pumping up the wifi this year. I&#8217;ll be there, likely hunched over a notebook with Lisa Sabin-Wilson (author of <em>WordPress for Dummies</em> and <em>BuddyPress for Dummies</em>) to talk about the WordPress User Handbook project, and/or hunched over a sketchbook with Kevin Conboy (designed the new lighter &#8220;on&#8221; state for admin menus in WordPress 3.0) to work out a new default WordCamp.org theme (using BuddyPress). You can still get tickets!</p>\n<p>July 17–18: <a href=\""http://uk.wordcamp.org/\"">WordCamp UK</a>- Manchester, England, UK. The roving WordCamp UK will be in Manchester this year, and is probably the closest to BarCamp style of all the WordCamps, using a wiki to plan some speakers/sessions and organizing the rest ad-hoc on the first day of the event. I&#8217;ll be attending this one as well, and am looking forward to seeing WordPress lead developer Peter Westwood again. I&#8217;m also looking forward to meeting some core contributors for the first time in person, like Simon Wheatley and John O&#8217;Nolan. Mike Little, co-founder of WordPress, is on the organizing team of WordCamp UK. Tickets on sale now!</p>\n<p>July 24: WordCamp Nigeria &#8211; Lagos, Nigeria. Their site seems to have a virus, so no link from here, but if you&#8217;re in Nigeria and interested in attending/getting involved, a quick Google search will get you to the organizers.</p>\n<p>August 7: <a href=\""http://www.wordcamphouston.com/\"">WordCamp Houston</a> &#8211; Houston, TX, USA. Houston, Texas, birthplace of WordPress! Fittingly, Matt Mullenweg will be there to give the keynote. WordCamp Houston is running three tracks &#8212; Business, Blogger and Developer &#8212; in recognition of the fact that people who are interested in using WordPress for their business may not actually be bloggers or developers themselves. This used to get labeled as a &#8220;CMS&#8221; track at previous WordCamps (including NYC 2009), but with WordPress 3.0 supporting CMS functionality out of the box, &#8220;Business&#8221; is a much more appropriate label. Who wants to bet on if there will be BBQ for lunch?</p>\n<p>August 7 : <a href=\""http://wordcampiowa.org/\"">WordCamp Iowa</a> &#8211; Des Moines, Iowa, USA. Another placeholder page. Happening, not happening? I&#8217;ve emailed the organizer and will update this post once I know more.</p>\n<p>August 7–8: <a href=\""http://wordcamp.org.nz/\"">WordCamp New Zealand</a> &#8211; Auckland, New Zealand. They haven&#8217;t announced this year&#8217;s speakers or topics, but they&#8217;ve been running polls to get community input into the program. Of note: in 2011 WordCamp New Zealand will be shifting seasons and will be in February instead, when the weather is nicer.</p>\n<p>August 20–22: <a href=\""http://2010.savannah.wordcamp.org/\"">WordCamp Savannah</a> &#8211; Savannah, Georgia, USA. Disclaimer: I am completely biased about Savannah, since I&#8217;m one of the organizers. This will be the first WordCamp in Savannah, and it&#8217;s being held at the Savannah College of Art and Design River Club, an awesome venue that used to be a cotton warehouse or something like that. Since Savannah doesn&#8217;t really have a cohesive WordPress community yet (though a fair number of people from Savannah attended WordCamp Atlanta earlier this year), this WordCamp is aimed squarely at building a local community. We&#8217;ll have a local meet-and-greet, regular sessions with visiting speakers (lots of core contributors coming to this one, plus Matt), and on Sunday it will be combination unconference/genius bar/collaborative workspace. Oh, and a potluck! We&#8217;ll also be running a pre-WordCamp workshop for people who have never used WordPress but want to get started, so that they&#8217;ll be able to follow the presentations and conversations littered with WordPress-specific vocabulary over the weekend. Ticket sales just opened, so get your tickets now.</p>\n<p>For a <a href=\""http://central.wordcamp.org/schedule/\"">schedule of all upcoming WordCamps</a>, visit <a href=\""http://central.wordcamp.org/\"">wordcamp.org</a>. The autumn schedule is already packed! If you don&#8217;t see WordCamp in your area and are interested in organizing one, <a href=\""http://central.wordcamp.org/about/\"">get more information and let us know</a>.</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:58:\""http://wordpress.org/news/2010/06/summer-of-wordcamp/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:6;a:6:{s:4:\""data\"";s:41:\""\n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:26:\""WordPress 3.0 \""Thelonious\""\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:45:\""http://wordpress.org/news/2010/06/thelonious/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:54:\""http://wordpress.org/news/2010/06/thelonious/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Thu, 17 Jun 2010 16:26:36 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:1:{i:0;a:5:{s:4:\""data\"";s:8:\""Releases\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1380\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:341:\""Arm your vuvuzelas: WordPress 3.0, the thirteenth major release of WordPress and the culmination of half a year of work by 218 contributors, is now available for download (or upgrade within your dashboard). Major new features in this release include a sexy new default theme called Twenty Ten. Theme developers have new APIs that allow [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:14:\""Matt Mullenweg\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:38078:\""<p>Arm your vuvuzelas: WordPress 3.0, the thirteenth major release of WordPress and the culmination of half a year of work by 218 contributors, is <a href=\""http://wordpress.org/download/\"">now available for download</a> (or <a href=\""http://codex.wordpress.org/Dashboard_Updates_SubPanel\"">upgrade within your dashboard</a>). Major new features in this release include a sexy <strong>new default theme called Twenty Ten</strong>. Theme developers have new APIs that allow them to easily implement custom backgrounds, headers, shortlinks, <a href=\""http://codex.wordpress.org/Appearance_Menus_SubPanel\"">menus</a> (no more file editing), <a href=\""http://codex.wordpress.org/Custom_Post_Types\"">post types</a>, and <a href=\""http://codex.wordpress.org/Custom_Taxonomies\"">taxonomies</a>. (Twenty Ten theme shows all of that off.) Developers and network admins will appreciate the long-awaited <strong>merge of MU and WordPress</strong>, creating the new multi-site functionality which makes it possible to run one blog or ten million from the same installation. As a user, you will love the new <strong>lighter interface</strong>, the contextual help on every screen, the <strong>1,217 bug fixes and feature enhancements</strong>, bulk updates so you can upgrade 15 plugins at once with a single click, and blah blah blah just watch the video. <img src=\'http://wordpress.org/news/wp-includes/images/smilies/icon_smile.gif\' alt=\':)\' class=\'wp-smiley\' /> <em>(In HD, if you can, so you can catch the Easter eggs.)</em></p>\n<p><object classid=\""clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\"" width=\""640\"" height=\""360\"" codebase=\""http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\""><param name=\""flashvars\"" value=\""guid=BQtfIEY1&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M\"" /><param name=\""src\"" value=\""http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21\"" /><param name=\""wmode\"" value=\""transparent\"" /><param name=\""allowfullscreen\"" value=\""true\"" /><embed type=\""application/x-shockwave-flash\"" width=\""640\"" height=\""360\"" src=\""http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21\"" allowfullscreen=\""true\"" wmode=\""transparent\"" flashvars=\""guid=BQtfIEY1&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M\""></embed></object></p>\n<p>If you&#8217;d like to embed the WordPress 3.0 video tour in your blog, copy and paste this code for the high quality version:</p>\n<pre class=\""brush: xml;\"">&lt;embed src=&quot;http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21&quot; type=&quot;application/x-shockwave-flash&quot; width=&quot;640&quot; height=&quot;360&quot; wmode=&quot;transparent&quot; seamlesstabbing=&quot;true&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; overstretch=&quot;true&quot; flashvars=&quot;guid=BQtfIEY1&amp;amp;width=640&amp;amp;height=360&amp;amp;locksize=no&amp;amp;dynamicseek=false&amp;amp;qc_publisherId=p-18-mFEk4J448M&quot; title=&quot;Introducing WordPress 3.0 &amp;quot;Thelonious&amp;quot;&quot;&gt;&lt;/embed&gt;</pre>\n<p>For a more comprehensive look at everything that has improved in 3.0 check out <a href=\""http://codex.wordpress.org/Version_3.0\"">3.0&#8242;s Codex page</a> or the <a href=\""http://core.trac.wordpress.org/query?group=status&amp;milestone=3.0&amp;desc=1&amp;order=priority\"">long list of issues in Trac</a>. (We&#8217;re trying to keep these announcement posts shorter.) Whew! That&#8217;s a lot packed into one release. I can&#8217;t think of a better way to kick off the 3.X cycle we&#8217;ll be in for the next two and a half years.</p>\n<h3>The Future</h3>\n<p>Normally this is where I&#8217;d say we&#8217;re about to start work on 3.1, but we&#8217;re actually not. We&#8217;re going to take a release cycle off to focus on all of the things around WordPress. The growth of the community has been breathtaking, including over 10.3 million downloads of version 2.9, but so much of our effort has been focused on the core software it hasn&#8217;t left much time for anything else. Over the next three months we&#8217;re going to split into ninja/pirate teams focused on different areas of the around-WordPress experience, including the showcase, Codex, forums, profiles, update and compatibility APIs, theme directory, plugin directory, mailing lists, core plugins, wordcamp.org&#8230; the possibilities are endless. The goal of the teams isn&#8217;t going to be to make things perfect all at once, just better than they are today. We think this investment of time will give us a much stronger infrastructure to grow WordPress.org for the many tens of millions of users that will join us during the 3.X release cycle.</p>\n<h3>It Takes a Village</h3>\n<p>I&#8217;m proud to acknowledge the contributions of the following <strong>218</strong> people to the 3.0 release cycle. These are the folks that make WordPress what it is, whose collaboration and hard work enable us to build something greater than the sum of our parts. In alphabetical order, of course.</p>\n<p><strong>Committers:</strong> <a href=\""http://www.laptoptips.ca/\"">azaozz (Andrew Ozz)</a> (<a title=\""azaozz at WP Profiles\"" href=\""http://profiles.wordpress.org/azaozz\"">prof</a>), <a href=\""http://dd32.id.au/\"">dd32 (Dion Hulse)</a> (<a title=\""dd32 at WP Profiles\"" href=\""http://profiles.wordpress.org/dd32\"">prof</a>), <a href=\""http://ocaoimh.ie/\"">donncha (Donncha O Caoimh)</a> (<a title=\""donncha at WP Profiles\"" href=\""http://profiles.wordpress.org/donncha\"">prof</a>), <a href=\""http://iammattthomas.com/\"">iammattthomas (Matt Thomas)</a> (<a title=\""iammattthomas at WP Profiles\"" href=\""http://profiles.wordpress.org/iammattthomas\"">prof</a>), <a href=\""http://josephscott.org/\"">josephscott (Joseph Scott)</a> (<a title=\""josephscott at WP Profiles\"" href=\""http://profiles.wordpress.org/josephscott\"">prof</a>), <a href=\""http://txfx.net/\"">markjaquith (Mark Jaquith)</a> (<a title=\""markjaquith at WP Profiles\"" href=\""http://profiles.wordpress.org/markjaquith\"">prof</a>), <a href=\""http://ma.tt/\"">matt (Matt Mullenweg)</a> (<a title=\""matt at WP Profiles\"" href=\""http://profiles.wordpress.org/matt\"">prof</a>), <a href=\""http://andrewnacin.com/\"">nacin (Andrew Nacin)</a> (<a title=\""nacin at WP Profiles\"" href=\""http://profiles.wordpress.org/nacin\"">prof</a>), <a href=\""http://nikolay.bg/\"">nbachiyski (Николай Бачийски)</a> (<a title=\""nbachiyski at WP Profiles\"" href=\""http://profiles.wordpress.org/nbachiyski\"">prof</a>), <a href=\""http://boren.nu/\"">ryan (Ryan Boren)</a> (<a title=\""ryan at WP Profiles\"" href=\""http://profiles.wordpress.org/ryan\"">prof</a>), <a href=\""http://blog.ftwr.co.uk/\"">westi (Peter Westwood)</a> (<a title=\""westi at WP Profiles\"" href=\""http://profiles.wordpress.org/westi\"">prof</a>), and <a href=\""http://wpmututorials.com/\"">wpmuguru (Ron Rennick)</a> (<a title=\""wpmuguru at WP Profiles\"" href=\""http://profiles.wordpress.org/wpmuguru\"">prof</a>). <strong>Contributors:</strong> <a href=\""http://xavisys.com/\"">aaroncampbell (Aaron Campbell)</a> (<a title=\""aaroncampbell at WP Profiles\"" href=\""http://profiles.wordpress.org/aaroncampbell\"">prof</a>), akerem (<a title=\""akerem at WP Profiles\"" href=\""http://profiles.wordpress.org/akerem\"">prof</a>), <a href=\""http://alexking.org/\"">alexkingorg (Alex King)</a> (<a title=\""alexkingorg at WP Profiles\"" href=\""http://profiles.wordpress.org/alexkingorg\"">prof</a>), amattie (<a title=\""amattie at WP Profiles\"" href=\""http://profiles.wordpress.org/amattie\"">prof</a>), <a href=\""http://notfornoone.com/\"">ampt (Luke Gallagher)</a> (<a title=\""ampt at WP Profiles\"" href=\""http://profiles.wordpress.org/ampt\"">prof</a>), <a href=\""http://wpmututorials.com/\"">andrea_r</a> (<a title=\""andrea_r at WP Profiles\"" href=\""http://profiles.wordpress.org/andrea_r\"">prof</a>), <a href=\""http://andreasnurbo.com/\"">andreasnrb (Andreas Nurbo)</a> (<a title=\""andreasnrb at WP Profiles\"" href=\""http://profiles.wordpress.org/andreasnrb\"">prof</a>), <a href=\""http://twitter.com/anilo4ever\"">anilo4ever (Angelo Verona)</a> (<a title=\""anilo4ever at WP Profiles\"" href=\""http://profiles.wordpress.org/anilo4ever\"">prof</a>), <a href=\""http://apeatling.wordpress.com/\"">apeatling (Andy Peatling)</a> (<a title=\""apeatling at WP Profiles\"" href=\""http://profiles.wordpress.org/apeatling\"">prof</a>), <a href=\""http://blog.apokalyptik.com/\"">apokalyptik (Demitrious Kelly)</a> (<a title=\""apokalyptik at WP Profiles\"" href=\""http://profiles.wordpress.org/apokalyptik\"">prof</a>), <a href=\""http://www.mailpress.org/\"">arena (André Renaut)</a> (<a title=\""arena at WP Profiles\"" href=\""http://profiles.wordpress.org/arena\"">prof</a>), <a href=\""http://barry.wordpress.com/\"">barry (Barry Abrahamson)</a> (<a title=\""barry at WP Profiles\"" href=\""http://profiles.wordpress.org/barry\"">prof</a>), <a href=\""http://digitalize.ca/\"">batmoo (Mohammad Jangda)</a> (<a title=\""batmoo at WP Profiles\"" href=\""http://profiles.wordpress.org/batmoo\"">prof</a>), <a href=\""http://dentedreality.com.au/\"">beaulebens (Beau Lebens)</a> (<a title=\""beaulebens at WP Profiles\"" href=\""http://profiles.wordpress.org/beaulebens\"">prof</a>), <a href=\""http://use.perl.org/~belg4mit/\"">belg4mit</a> (<a title=\""belg4mit at WP Profiles\"" href=\""http://profiles.wordpress.org/belg4mit\"">prof</a>), <a href=\""http://matthewgrichmond.com/dev/\"">bigdawggi (Matthew G. Richmond)</a> (<a title=\""blepoxp at WP Profiles\"" href=\""http://profiles.wordpress.org/blepoxp\"">prof</a>), <a href=\""http://fullthrottledevelopment.com/\"">blepoxp (Glenn Ansley)</a> (<a title=\""blepoxp at WP Profiles\"" href=\""http://profiles.wordpress.org/blepoxp\"">prof</a>), <a href=\""http://twitter.com/thenbrent\"">brentes (Brent Shepherd)</a> (<a title=\""brentes at WP Profiles\"" href=\""http://profiles.wordpress.org/brentes\"">prof</a>), <a href=\""http://colinger.com/\"">briancolinger (Brian Colinger)</a> (<a title=\""briancolinger at WP Profiles\"" href=\""http://profiles.wordpress.org/briancolinger\"">prof</a>), <a href=\""http://www.bumbu.ru/\"">bumbu</a> (<a title=\""bumbu at WP Profiles\"" href=\""http://profiles.wordpress.org/bumbu\"">prof</a>), <a href=\""http://www.caesarsgrunt.com/\"">caesarsgrunt (Caesar Schinas)</a> (<a title=\""caesarsgrunt at WP Profiles\"" href=\""http://profiles.wordpress.org/caesarsgrunt\"">prof</a>), camiloclc (<a title=\""camiloclc at WP Profiles\"" href=\""http://profiles.wordpress.org/camiloclc\"">prof</a>), CAMWebDesign (<a title=\""CAMWebDesign at WP Profiles\"" href=\""http://profiles.wordpress.org/CAMWebDesign\"">prof</a>), carbolineum (<a title=\""carbolineum at WP Profiles\"" href=\""http://profiles.wordpress.org/carbolineum\"">prof</a>), <a href=\""http://blog.caspie.net/\"">caspie</a> (<a title=\""caspie at WP Profiles\"" href=\""http://profiles.wordpress.org/caspie\"">prof</a>), <a href=\""http://www.catiakitahara.com.br/\"">catiakitahara (Cátia Kitahara)</a> (<a title=\""catiakitahara at WP Profiles\"" href=\""http://profiles.wordpress.org/catiakitahara\"">prof</a>), <a href=\""http://www.clarksonenergyhomes.com/wordpress/\"">CharlesClarkson (Charles Clarkson)</a> (<a title=\""CharlesClarkson at WP Profiles\"" href=\""http://profiles.wordpress.org/CharlesClarkson\"">prof</a>), <a href=\""http://chdorner.com/\"">chdorner (Christof Dorner)</a> (<a title=\""chdorner at WP Profiles\"" href=\""http://profiles.wordpress.org/chdorner\"">prof</a>), <a href=\""http://gaarai.com/\"">chrisbliss18 (Chris Jean)</a> (<a title=\""chrisbliss18 at WP Profiles\"" href=\""http://profiles.wordpress.org/chrisbliss18\"">prof</a>), <a href=\""http://vocecommunications.com/\"">chrisscott (Chris Scott)</a> (<a title=\""chrisscott at WP Profiles\"" href=\""http://profiles.wordpress.org/chrisscott\"">prof</a>), <a href=\""http://brandonallen.org/\"">cnorris23 (Brandon Allen)</a> (<a title=\""cnorris23 at WP Profiles\"" href=\""http://profiles.wordpress.org/cnorris23\"">prof</a>), <a href=\""http://coffee2code.com/\"">coffee2code (Scott Reilly)</a> (<a title=\""coffee2code at WP Profiles\"" href=\""http://profiles.wordpress.org/coffee2code\"">prof</a>), computerwiz908 (<a title=\""computerwiz908 at WP Profiles\"" href=\""http://profiles.wordpress.org/computerwiz908\"">prof</a>), <a href=\""http://www.cyberhobo.net/\"">cyberhobo (Dylan Kuhn)</a> (<a title=\""cyberhobo at WP Profiles\"" href=\""http://profiles.wordpress.org/cyberhobo\"">prof</a>), <a href=\""http://dan-cole.com/\"">dancole (Dan Cole)</a> (<a title=\""dancole at WP Profiles\"" href=\""http://profiles.wordpress.org/dancole\"">prof</a>), <a href=\""http://danielkoskinen.com/\"">Daniel Koskinen</a> <!--PROF?-->, <a href=\""http://gsocdk.wordpress.com/\"">deepak.seth (Deepak Seth)</a>, <a href=\""http://op111.net/\"">demetris (Δημήτρης Κίκιζας)</a> (<a title=\""demetris at WP Profiles\"" href=\""http://profiles.wordpress.org/demetris\"">prof</a>), <a href=\""http://www.semiologic.com/\"">Denis-de-Bernardy</a> (<a title=\""Denis-de-Bernardy at WP Profiles\"" href=\""http://profiles.wordpress.org/Denis-de-Bernardy\"">prof</a>), <a href=\""http://www.milandinic.com/\"">dimadin (Milan Dinić)</a> (<a title=\""dimadin at WP Profiles\"" href=\""http://profiles.wordpress.org/dimadin\"">prof</a>), <a href=\""http://twitter.com/dndrnkrd\"">dndrnkrd (Dan Drinkard)</a> (<a title=\""dndrnkrd at WP Profiles\"" href=\""http://profiles.wordpress.org/dndrnkrd\"">prof</a>), <a href=\""http://docwhat.org/\"">docwhat</a> (<a title=\""docwhat at WP Profiles\"" href=\""http://profiles.wordpress.org/docwhat\"">prof</a>), <a href=\""http://twitter.com/dougwrites\"">dougwrites</a> (<a title=\""dougwrites at WP Profiles\""<br />\n href=\""http://profiles.wordpress.org/dougwrites\"">prof</a>), <a href=\""http://phiffer.org/\"">dphiffer (Dan Phiffer)</a> (<a title=\""dphiffer at WP Profiles\"" href=\""http://profiles.wordpress.org/dphiffer\"">prof</a>), dragoonis (<a title=\""dragoonis at WP Profiles\"" href=\""http://profiles.wordpress.org/dragoonis\"">prof</a>), <a href=\""http://wpvibe.com/\"">dremeda (Dre Armeda)</a> (<a title=\""dremeda at WP Profiles\"" href=\""http://profiles.wordpress.org/dremeda\"">prof</a>), dtoj <!--PROF?-->, <a href=\""http://dougal.gunters.org/\"">dougal (Dougal Campbell)</a> (<a title=\""dougal at WP Profiles\"" href=\""http://profiles.wordpress.org/dougal\"">prof</a>), <a href=\""http://lionsgoroar.co.uk/\"">duck_ (Jon Cave)</a> (<a title=\""duck_ at WP Profiles\"" href=\""http://profiles.wordpress.org/duck_\"">prof</a>), <a href=\""http://dxjones.com/\"">dxjones (David Jones)</a> (<a title=\""dxjones at WP Profiles\"" href=\""http://profiles.wordpress.org/dxjones\"">prof</a>), <a href=\""http://eddieringle.com/\"">eddieringle (Eddie Ringle)</a> (<a title=\""eddieringle at WP Profiles\"" href=\""http://profiles.wordpress.org/eddieringle\"">prof</a>), <a href=\""http://mindreantre.se/\"">edward mindreantre (Edward Hevlund)</a>, eoinomurchu (<a title=\""eoinomurchu at WP Profiles\"" href=\""http://profiles.wordpress.org/eoinomurchu\"">prof</a>), <a href=\""http://field2.com/\"">empireoflight/Ben Dunkle</a> (<a title=\""empireoflight at WP Profiles\"" href=\""http://profiles.wordpress.org/empireoflight\"">prof</a>), <a href=\""http://www.mindsharestrategy.com/\"">ericmann (Eric Mann)</a> (<a title=\""ericmann at WP Profiles\"" href=\""http://profiles.wordpress.org/ericmann\"">prof</a>), <a href=\""http://www.eddiemonge.com/\"">etiger13 (Eddie Monge Jr.)</a> (<a title=\""etiger13 at WP Profiles\"" href=\""http://profiles.wordpress.org/etiger13\"">prof</a>), <a href=\""http://www.ilfilosofo.com/\"">filosofo (Austin Matzko)</a> (<a title=\""filosofo at WP Profiles\"" href=\""http://profiles.wordpress.org/filosofo\"">prof</a>), firebird75 (<a title=\""firebird75 at WP Profiles\"" href=\""http://profiles.wordpress.org/firebird75\"">prof</a>), <a href=\""http://www.frankieroberto.com/\"">frankieroberto (Frankie Roberto)</a> (<a title=\""frankieroberto at WP Profiles\"" href=\""http://profiles.wordpress.org/frankieroberto\"">prof</a>), <a href=\""http://frumph.net/\"">Frumph (Philip M. Hofer)</a> (<a title=\""Frumph at WP Profiles\"" href=\""http://profiles.wordpress.org/Frumph\"">prof</a>), <a href=\""http://www.garyc40.com/\"">garyc40 (Gary Cao)</a> (<a title=\""garyc40 at WP Profiles\"" href=\""http://profiles.wordpress.org/garyc40\"">prof</a>), <a href=\""http://gaut.am/\"">gautam2011</a> (<a title=\""gautam2011 at WP Profiles\"" href=\""http://profiles.wordpress.org/gautam2011\"">prof</a>), <a href=\""http://twitter.com/garymross\"">Gary Ross (Gazzer)</a> <!--PROF?-->, <a href=\""http://www.dev4press.com/\"">GDragoN (Milan Petrovic)</a> (<a title=\""GDragoN at WP Profiles\"" href=\""http://profiles.wordpress.org/GDragoN\"">prof</a>), <a href=\""http://justintadlock.com/\"">greenshady (Justin Tadlock)</a> (<a title=\""greenshady at WP Profiles\"" href=\""http://profiles.wordpress.org/greenshady\"">prof</a>), <a href=\""http://www.dennismorhardt.de/\"">GIGALinux (Dennis Morhardt)</a> (<a title=\""GIGALinux at WP Profiles\"" href=\""http://profiles.wordpress.org/GIGALinux\"">prof</a>), <a href=\""http://hakre.wordpress.com/\"">hakre</a> (<a title=\""hakre at WP Profiles\"" href=\""http://profiles.wordpress.org/hakre\"">prof</a>), husky (<a title=\""husky at WP Profiles\"" href=\""http://profiles.wordpress.org/husky\"">prof</a>), <a href=\""http://themeshaper.com/\"">iandstewart (Ian Stewart)</a> (<a title=\""iandstewart at WP Profiles\"" href=\""http://profiles.wordpress.org/iandstewart\"">prof</a>), <a href=\""http://ipstenu.org/\"">ipstenu (Mika Epstein)</a> (<a title=\""ipstenu at WP Profiles\"" href=\""http://profiles.wordpress.org/ipstenu\"">prof</a>), <a href=\""http://jacobsantos.com/\"">jacobsantos (Jacob Santos)</a> (<a title=\""jacobsantos at WP Profiles\"" href=\""http://profiles.wordpress.org/jacobsantos\"">prof</a>), <a href=\""http://om4.com.au/\"">jamescollins (James Collins)</a> (<a title=\""jamescollins at WP Profiles\"" href=\""http://profiles.wordpress.org/jamescollins\"">prof</a>), <a href=\""http://jane.wordpress.com\"">jane (Jane Wells)</a> (<a title=\""jane at WP Profiles\"" href=\""http://profiles.wordpress.org/jane\"">prof</a>), <a href=\""http://blog.trailmeme.com/\"">jbsil (Jesse Silverstein)</a> (<a title=\""jbsil at WP Profiles\"" href=\""http://profiles.wordpress.org/jbsil\"">prof</a>), <a href=\""http://bethesignal.org/\"">jdub (Jeff Waugh)</a> (<a title=\""jdub at WP Profiles\"" href=\""http://profiles.wordpress.org/jdub\"">prof</a>), <a href=\""http://www.jeffikus.com/\"">jeffikus (Jeffrey Pearce)</a> (<a title=\""jeffikus at WP Profiles\"" href=\""http://profiles.wordpress.org/jeffikus\"">prof</a>), <a href=\""http://blog.jeffstieler.com/\"">jeffstieler (Jeff Stieler)</a> (<a title=\""jeffstieler at WP Profiles\"" href=\""http://profiles.wordpress.org/jeffstieler\"">prof</a>), <a href=\""http://simianuprising.com/\"">jeremyclarke (Jeremy Clarke)</a> (<a title=\""jeremyclarke at WP Profiles\"" href=\""http://profiles.wordpress.org/jeremyclarke\"">prof</a>), <a href=\""http://www.jfarthing.com/\"">jfarthing84 (Jeff Farthing)</a> (<a title=\""jfarthing84 at WP Profiles\"" href=\""http://profiles.wordpress.org/jfarthing84\"">prof</a>), <a href=\""http://www.jamesdimick.com/\"">Jick (James Dimick)</a> (<a title=\""Jick at WP Profiles\"" href=\""http://profiles.wordpress.org/Jick\"">prof</a>), <a href=\""http://jonsview.com/\"">jmstacey (Jon Stacey)</a> (<a title=\""jmstacey at WP Profiles\"" href=\""http://profiles.wordpress.org/jmstacey\"">prof</a>), <a href=\""http://jobjorn.se/\"">jobjorn (Jobjörn Folkesson)</a> (<a title=\""jobjorn at WP Profiles\"" href=\""http://profiles.wordpress.org/jobjorn\"">prof</a>), <a href=\""http://devel.kostdoktorn.se/\"">johanee (Johan Eenfeldt)</a> (<a title=\""johanee at WP Profiles\"" href=\""http://profiles.wordpress.org/johanee\"">prof</a>), <a href=\""http://lud.icro.us/\"">johnbillion (John Blackbourn)</a> (<a title=\""johnbillion at WP Profiles\"" href=\""http://profiles.wordpress.org/johnbillion\"">prof</a>), <a href=\""http://johnjamesjacoby.com/\"">johnjamesjacoby/jjj (John James Jacoby)</a> (<a title=\""johnjamesjacoby at WP Profiles\"" href=\""http://profiles.wordpress.org/johnjamesjacoby\"">prof</a>), <a href=\""http://johnjosephbachir.org/\"">johnjosephbachir (John Joseph Bachir)</a> (<a title=\""johnjosephbachir at WP Profiles\"" href=\""http://profiles.wordpress.org/johnjosephbachir\"">prof</a>), <a href=\""http://johnluetke.net/\"">johnl1479 (John Luetke)</a> (<a title=\""johnl1479 at WP Profiles\"" href=\""http://profiles.wordpress.org/johnl1479\"">prof</a>), <a href=\""http://john.onolan.org/\"">johnonolan (John O’Nolan)</a> (<a title=\""johnonolan at WP Profiles\"" href=\""http://profiles.wordpress.org/johnonolan\"">prof</a>), <a href=\""http://www.johnpbloch.com/\"">JohnPBloch/wmrom (John Bloch)</a> (<a title=\""JohnPBloch at WP Profiles\"" href=\""http://profiles.wordpress.org/JohnPBloch\"">prof</a>), <a href=\""http://yoast.com/\"">joostdevalk/yoast (Joost de Valk)</a> (<a title=\""joostdevalk at WP Profiles\"" href=\""http://profiles.wordpress.org/joostdevalk\"">prof</a>), <a href=\""http://aaron.jorb.in/\"">jorbin (Aaron Jorbin)</a> (<a title=\""jorbin at WP Profiles\"" href=\""http://profiles.wordpress.org/jorbin\"">prof</a>), joshtime (<a title=\""joshtime at WP Profiles\"" href=\""http://profiles.wordpress.org/joshtime\"">prof</a>), <a href=\""http://serenelabs.com/\"">jshreve</a> (<a title=\""jshreve at WP Profiles\"" href=\""http://profiles.wordpress.org/jshreve\"">prof</a>), <a href=\""http://tyco.ws/\"">junsuijin</a> (<a title=\""junsuijin at WP Profiles\"" href=\""http://profiles.wordpress.org/junsuijin\"">prof</a>), <a href=\""http://www.wangstedt.net/\"">kallewangstedt (Karl Wångstedt)</a> (<a title=\""kallewangstedt at WP Profiles\"" href=\""http://profiles.wordpress.org/kallewangstedt\"">prof</a>), <a href=\""http://www.keighl.com/\"">keighl (Kyle Truscott)</a> (<a title=\""keighl at WP Profiles\"" href=\""http://profiles.wordpress.org/keighl\"">prof</a>), <a href=\""http://agapetry.net/\"">kevinB (Kevin Behrens)</a> (<a title=\""kevinB at WP Profiles\"" href=\""http://profiles.wordpress.org/kevinB\"">prof</a>), <a href=\""http://drylk.com/\"">koopersmith (Daryl Koopersmith)</a> (<a title=\""koopersmith at WP Profiles\"" href=\""http://profiles.wordpress.org/koopersmith\"">prof</a>), <a href=\""http://www.kpdesign.net/\"">kpdesign (Kim Parsell)<br />\n</a> (<a title=\""kpdesign at WP Profiles\"" href=\""http://profiles.wordpress.org/kpdesign\"">prof</a>), <a href=\""http://www.ktdreyer.com/\"">ktdreyer (Ken Dreyer)</a> (<a title=\""ktdreyer at WP Profiles\"" href=\""http://profiles.wordpress.org/ktdreyer\"">prof</a>), <a href=\""http://kurtmckee.livejournal.com/\"">kurtmckee (Kurt McKee)</a> (<a title=\""kurtmckee at WP Profiles\"" href=\""http://profiles.wordpress.org/kurtmckee\"">prof</a>), <a href=\""http://moggy.laceous.com/\"">laceous</a> (<a title=\""laceous at WP Profiles\"" href=\""http://profiles.wordpress.org/laceous\"">prof</a>), <a href=\""http://simpledream.net/\"">lancewillett (Lance Willett)</a> (<a title=\""lancewillett at WP Profiles\"" href=\""http://profiles.wordpress.org/lancewillett\"">prof</a>), <a href=\""http://lloydbudd.com/\"">lloydbudd (Lloyd Budd)</a> (<a title=\""lloydbudd at WP Profiles\"" href=\""http://profiles.wordpress.org/lloydbudd\"">prof</a>), lriggle (<a title=\""lriggle at WP Profiles\"" href=\""http://profiles.wordpress.org/lriggle\"">prof</a>), markauk (<a title=\""markauk at WP Profiles\"" href=\""http://profiles.wordpress.org/markauk\"">prof</a>), <a href=\""http://www.mark-mcwilliams.com/\"">markmcwilliams (Mark McWilliams)</a> (<a title=\""markmcwilliams at WP Profiles\"" href=\""http://profiles.wordpress.org/markmcwilliams\"">prof</a>), <a href=\""http://markoheijnen.com/\"">markoheijnen (Marko Heijnen)</a> (<a title=\""markoheijnen at WP Profiles\"" href=\""http://profiles.wordpress.org/markoheijnen\"">prof</a>), <a href=\""http://markup.com.ua/\"">markup (Sasha Mukhin)</a> (<a title=\""markup at WP Profiles\"" href=\""http://profiles.wordpress.org/markup\"">prof</a>), mattsains (<a title=\""mattsains at WP Profiles\"" href=\""http://profiles.wordpress.org/mattsains\"">prof</a>), <a href=\""http://matiasventura.com/\"">matveb (Matias Ventura)</a> (<a title=\""matveb at WP Profiles\"" href=\""http://profiles.wordpress.org/matveb\"">prof</a>), <a href=\""http://blogwaffe.com/\"">mdawaffe (Michael Adams)</a> (<a title=\""mdawaffe at WP Profiles\"" href=\""http://profiles.wordpress.org/mdawaffe\"">prof</a>) <!--mdwaffe on r12524-->, mentel_br (<a title=\""mentel_br at WP Profiles\"" href=\""http://profiles.wordpress.org/mentel_br\"">prof</a>), <a href=\""http://webdevstudios.com/about/brian-messenlehner/\"">messenlehner (Brian Messenlehner)</a> (<a title=\""messenlehner at WP Profiles\"" href=\""http://profiles.wordpress.org/messenlehner\"">prof</a>), <a href=\""http://twitter.com/miau_jp\"">miau_jp</a> (<a title=\""miau_jp at WP Profiles\"" href=\""http://profiles.wordpress.org/miau_jp\"">prof</a>), <a href=\""http://binarybonsai.com/\"">Michael (Michael Heilemann)</a> (<a title=\""Michael at WP Profiles\"" href=\""http://profiles.wordpress.org/Michael\"">prof</a>), <a href=\""http://codex.wordpress.org/User:MichaelH\"">MichaelH</a> (<a title=\""MichaelH at WP Profiles\"" href=\""http://profiles.wordpress.org/MichaelH\"">prof</a>), <a href=\""http://mikeschinkel.com/\"">mikeschinkel (Mike Schinkel)</a> (<a title=\""mikeschinkel at WP Profiles\"" href=\""http://profiles.wordpress.org/mikeschinkel\"">prof</a>), Miloslav Beňo <!--r14540, r14545-->, <a href=\""http://www.minusfive.com/\"">minusfive</a> (<a title=\""minusfive at WP Profiles\"" href=\""http://profiles.wordpress.org/minusfive\"">prof</a>), <a href=\""http://blogyul.miqrogroove.com/\"">miqrogroove (Robert Chapin)</a> (<a title=\""miqrogroove at WP Profiles\"" href=\""http://profiles.wordpress.org/miqrogroove\"">prof</a>), <a href=\""http://maisonbisson.com/\"">misterbisson (Casey Bisson)</a> (<a title=\""misterbisson at WP Profiles\"" href=\""http://profiles.wordpress.org/misterbisson\"">prof</a>), <a href=\""http://mitcho.com/\"">mitchoyoshitaka (mitcho (Michael 芳貴 Erlewine))</a> (<a title=\""mitchoyoshitaka at WP Profiles\"" href=\""http://profiles.wordpress.org/mitchoyoshitaka\"">prof</a>), <a href=\""http://blog.mmn-o.se/\"">MMN-o</a> (<a title=\""MMN-o at WP Profiles\"" href=\""http://profiles.wordpress.org/MMN-o\"">prof</a>), <a href=\""http://www.herewithme.fr/a-propos\"">momo360modena (Amaury Balmer)</a> (<a title=\""momo360modena at WP Profiles\"" href=\""http://profiles.wordpress.org/momo360modena\"">prof</a>), <a href=\""http://morganestes.wordpress.com/\"">morganestes (Morgan Estes)</a> (<a title=\""morganestes at WP Profiles\"" href=\""http://profiles.wordpress.org/morganestes\"">prof</a>), <a href=\""http://www.misthaven.org.uk/blog/\"">mrmist (David McFarlane)</a> (<a title=\""mrmist at WP Profiles\"" href=\""http://profiles.wordpress.org/mrmist\"">prof</a>), <a href=\""http://nickmomrik.com/\"">mtdewvirus (Nick Momrik)</a> (<a title=\""mtdewvirus at WP Profiles\"" href=\""http://profiles.wordpress.org/mtdewvirus\"">prof</a>), nadavvin (<a title=\""nadavvin at WP Profiles\"" href=\""http://profiles.wordpress.org/nadavvin\"">prof</a>), <a href=\""http://blog.detlog.org/\"">Nao (Naoko McCracken)</a> (<a title=\""Nao at WP Profiles\"" href=\""http://profiles.wordpress.org/Nao\"">prof</a>), <a href=\""http://www.nathanrice.net/\"">nathanrice (Nathan Rice)</a> (<a title=\""nathanrice at WP Profiles\"" href=\""http://profiles.wordpress.org/nathanrice\"">prof</a>), <a href=\""http://www.neotrinity.at/\"">neoxx (Bernhard Riedl)</a> (<a title=\""neoxx at WP Profiles\"" href=\""http://profiles.wordpress.org/nathanrice\"">prof</a>), <a href=\""http://www.niallkennedy.com/\"">niallkennedy (Niall Kennedy)</a> (<a title=\""niallkennedy at WP Profiles\"" href=\""http://profiles.wordpress.org/niallkennedy\"">prof</a>), <a href=\""http://www.rpmurphy.com/\"">ninjaWR (Ryan Murphy)</a> (<a title=\""ninjaWR at WP Profiles\"" href=\""http://profiles.wordpress.org/ninjaWR\"">prof</a>), <a href=\""http://noel.io/\"">noel (Noël Jackson)</a> (<a title=\""noel at WP Profiles\"" href=\""http://profiles.wordpress.org/noel\"">prof</a>), <a href=\""http://nomulous.com/\"">nomulous (Fletcher Tomalty)</a> (<a title=\""nomulous at WP Profiles\"" href=\""http://profiles.wordpress.org/nomulous\"">prof</a>), <a href=\""http://ocean90.wphelper.de/\"">ocean90 (Dominik Schilling)</a> (<a title=\""ocean90 at WP Profiles\"" href=\""http://profiles.wordpress.org/ocean90\"">prof</a>), <a href=\""http://ottodestruct.com/\"">Otto42 (Samuel Wood)</a> (<a title=\""Otto42 at WP Profiles\"" href=\""http://profiles.wordpress.org/Otto42\"">prof</a>), pedger (<a title=\""pedger at WP Profiles\"" href=\""http://profiles.wordpress.org/pedger\"">prof</a>), <a href=\""http://developersmind.com/\"">PeteMall</a> (<a title=\""PeteMall at WP Profiles\"" href=\""http://profiles.wordpress.org/PeteMall\"">prof</a>), pampfelimetten (<a title=\""pampfelimetten at WP Profiles\"" href=\""http://profiles.wordpress.org/pampfelimetten\"">prof</a>), pnettle (<a title=\""pnettle at WP Profiles\"" href=\""http://profiles.wordpress.org/pnettle\"">prof</a>), <a href=\""http://www.pslabs.cl/\"">PotterSys (Juan)</a> (<a title=\""PotterSys at WP Profiles\"" href=\""http://profiles.wordpress.org/PotterSys\"">prof</a>), <a href=\""http://cnpstudio.com/\"">prettyboymp (Michael Pretty)</a> (<a title=\""prettyboymp at WP Profiles\"" href=\""http://profiles.wordpress.org/prettyboymp\"">prof</a>), <a href=\""http://ptahdunbar.com/\"">ptahdunbar (Ptah Dunbar)</a> (<a title=\""ptahdunbar at WP Profiles\"" href=\""http://profiles.wordpress.org/ptahdunbar\"">prof</a>), <a href=\""http://www.bdihot.co.il/\"">ramiy</a> (<a title=\""ramiy at WP Profiles\"" href=\""http://profiles.wordpress.org/ramiy\"">prof</a>), <a href=\""http://ranh.co.il/\"">RanYanivHartstein (Ran Yaniv Hartstein)</a> (<a title=\""RanYanivHartstein at WP Profiles\"" href=\""http://profiles.wordpress.org/RanYanivHartstein\"">prof</a>), <a href=\""http://langui.sh/\"">reaperhulk (Paul Kehrer)</a> (<a title=\""reaperhulk at WP Profiles\"" href=\""http://profiles.wordpress.org/reaperhulk\"">prof</a>), reko (<a title=\""reko at WP Profiles\"" href=\""http://profiles.wordpress.org/reko\"">prof</a>), <a href=\""http://remiprevost.com/\"">remi (Rémi Prévost)</a> (<a title=\""remi at WP Profiles\"" href=\""http://profiles.wordpress.org/remi\"">prof</a>), <a href=\""http://toys.lerdorf.com/\"">rlerdorf (Rasmus Lerdorf)</a> (<a title=\""rlerdorf at WP Profiles\"" href=\""http://profiles.wordpress.org/rlerdorf\"">prof</a>) <!--ALSO r13684-->, <a href=\""http://ryanmccue.info/\"">rmccue (Ryan McCue)</a> (<a title=\""rmccue at WP Profiles\"" href=\""http://profiles.wordpress.org/rmccue\"">prof</a>), rooodini (<a title=\""rooodini at WP Profiles\"" href=\""http://profiles.wordpress.org/rooodini\"">prof</a>), rovo89 (<a title=\""rovo89 at WP Profiles\"" href=\""http://profiles.wordpress.org/rovo89\"">prof</a>), <a href=\""http://ruslany.net/\"">ruslany</a> (<a title=\""ruslany at WP Profiles\"" href=<br />\n\""http://profiles.wordpress.org/ruslany\"">prof</a>), <a href=\""http://skcdev.com/\"">sc0ttkclark (Scott Kingsley Clark)</a> (<a title=\""sc0ttkclark at WP Profiles\"" href=\""http://profiles.wordpress.org/sc0ttkclark\"">prof</a>), scottbasgaard (Scott Basgaard) (<a title=\""scottbasgaard at WP Profiles\"" href=\""http://profiles.wordpress.org/scottbasgaard\"">prof</a>), ScottMac (<a title=\""ScottMac at WP Profiles\"" href=\""http://profiles.wordpress.org/ScottMac\"">prof</a>), <a href=\""http://scribu.net/\"">scribu</a> (<a title=\""scribu at WP Profiles\"" href=\""http://profiles.wordpress.org/scribu\"">prof</a>), <a href=\""http://sergeybiryukov.ru/\"">SergeyBiryukov (Сергей Бирюков)</a> (<a title=\""SergeyBiryukov at WP Profiles\"" href=\""http://profiles.wordpress.org/SergeyBiryukov\"">prof</a>), <a href=\""http://bugssite.org/\"">ShaneF</a> (<a title=\""ShaneF at WP Profiles\"" href=\""http://profiles.wordpress.org/ShaneF\"">prof</a>), <a href=\""http://sillybean.net/\"">sillybean (Stephanie Leary)</a> (<a title=\""sillybean at WP Profiles\"" href=\""http://profiles.wordpress.org/sillybean\"">prof</a>), <a href=\""http://simekdesign.eu/\"">Simek (Bartosz Kaszubowski)</a> (<a title=\""simek at WP Profiles\"" href=\""http://profiles.wordpress.org/simek\"">prof</a>), <a href=\""http://www.simonwheatley.co.uk/\"">simonwheatley (Simon Wheatley)</a> (<a title=\""simonwheatley at WP Profiles\"" href=\""http://profiles.wordpress.org/simonwheatley\"">prof</a>), <a href=\""http://simos.info/blog/\"">simosx (Σίμος Ξενιτέλλης)</a> (<a title=\""simosx at WP Profiles\"" href=\""http://profiles.wordpress.org/simosx\"">prof</a>), <a href=\""http://www.poradnik-webmastera.com/\"">sirzooro (Daniel Frużyński)</a> (<a title=\""sirzooro at WP Profiles\"" href=\""http://profiles.wordpress.org/sirzooro\"">prof</a>), <a href=\""http://sivel.net/\"">sivel (Matt Martz)</a> (<a title=\""sivel at WP Profiles\"" href=\""http://profiles.wordpress.org/sivel\"">prof</a>), <a href=\""http://skeltoac.com/\"">skeltoac (Andy Skelton)</a> (<a title=\""skeltoac at WP Profiles\"" href=\""http://profiles.wordpress.org/skeltoac\"">prof</a>), <a href=\""http://www.lukehowell.com/\"">snumb130 (Luke Howell)</a> (<a title=\""snumb130 at WP Profiles\"" href=\""http://profiles.wordpress.org/snumb130\"">prof</a>), <a href=\""http://rayofsolaris.net/\"">solarissmoke (Samir Shah)</a> (<a title=\""solarissmoke at WP Profiles\"" href=\""http://profiles.wordpress.org/solarissmoke\"">prof</a>), sorich87 (<a title=\""sorich87 at WP Profiles\"" href=\""http://profiles.wordpress.org/sorich87\"">prof</a>), ssandison (<a title=\""ssandison at WP Profiles\"" href=\""http://profiles.wordpress.org/ssandison\"">prof</a>), stencil (<a title=\""stencil at WP Profiles\"" href=\""http://profiles.wordpress.org/stencil\"">prof</a>), <a href=\""http://stephdau.wordpress.com/\"">stephdau (Stephane Daury)</a> (<a title=\""stephdau at WP Profiles\"" href=\""http://profiles.wordpress.org/stephdau\"">prof</a>), <a href=\""http://wp.tekapo.com/\"">tai</a> (<a title=\""tai at WP Profiles\"" href=\""http://profiles.wordpress.org/tai\"">prof</a>), TECannon (Tracy Cannon) (<a title=\""TECannon at WP Profiles\"" href=\""http://profiles.wordpress.org/TECannon\"">prof</a>), <a href=\""http://technosailor.com/\"">technosailor (Aaron Brazell)</a> (<a title=\""technosailor at WP Profiles\"" href=\""http://profiles.wordpress.org/technosailor\"">prof</a>), <a href=\""http://eastcoder.com/\"">tenpura</a> (<a title=\""tenpura at WP Profiles\"" href=\""http://profiles.wordpress.org/tenpura\"">prof</a>), thales.tede <!--PROF?-->, TheDeadMedic (<a title=\""TheDeadMedic at WP Profiles\"" href=\""http://profiles.wordpress.org/TheDeadMedic\"">prof</a>), <a href=\""http://cefm.ca/\"">thee17 (Charles E. Frees-Melvin)</a> (<a title=\""thee17 at WP Profiles\"" href=\""http://profiles.wordpress.org/thee17\"">prof</a>), <a href=\""http://www.toine.ca/\"">thetoine (Antoine Girard)</a> (<a title=\""thetoine at WP Profiles\"" href=\""http://profiles.wordpress.org/thetoine\"">prof</a>), <a href=\""http://bavotasan.com/\"">tinkerpriest (c.bavota)</a> (<a title=\""tinkerpriest at WP Profiles\"" href=\""http://profiles.wordpress.org/tinkerpriest\"">prof</a>), <a href=\""http://tobias.baethge.com/\"">TobiasBg (Tobias Bäthge)</a> (<a title=\""TobiasBg at WP Profiles\"" href=\""http://profiles.wordpress.org/TobiasBg\"">prof</a>), tomtomp (<a title=\""tomtomp at WP Profiles\"" href=\""http://profiles.wordpress.org/tomtomp\"">prof</a>), <a href=\""http://terrychay.com/\"">tychay (Terry Chay)</a> (<a title=\""tychay at WP Profiles\"" href=\""http://profiles.wordpress.org/tychay\"">prof</a>), typeomedia (<a title=\""typeomedia at WP Profiles\"" href=\""http://profiles.wordpress.org/typeomedia\"">prof</a>), <a href=\""http://uglyrobot.com/\"">uglyrobot (Aaron Edwards)</a> (<a title=\""uglyrobot at WP Profiles\"" href=\""http://profiles.wordpress.org/uglyrobot\"">prof</a>), UnderWordPressure (<a title=\""UnderWordPressure at WP Profiles\"" href=\""http://profiles.wordpress.org/UnderWordPressure\"">prof</a>), usermrpapa (<a title=\""usermrpapa at WP Profiles\"" href=\""http://profiles.wordpress.org/usermrpapa\"">prof</a>), <a href=\""http://utkar.sh/\"">Utkarsh (Utkarsh Kukreti)</a> (<a title=\""Utkarsh at WP Profiles\"" href=\""http://profiles.wordpress.org/Utkarsh\"">prof</a>), <a href=\""http://www.ai-development.com/\"">validben (Benoit Gilloz )</a> (<a title=\""validben at WP Profiles\"" href=\""http://profiles.wordpress.org/validben\"">prof</a>), <a href=\""http://www.viper007bond.com/\"">Viper007Bond (Alex Mills)</a> (<a title=\""Viper007Bond at WP Profiles\"" href=\""http://profiles.wordpress.org/Viper007Bond\"">prof</a>), <a href=\""http://blog.sjinks.org.ua/\"">vladimir_kolesnikov (Vladimir Kolesnikov)</a> (<a title=\""vladimir_kolesnikov at WP Profiles\"" href=\""http://profiles.wordpress.org/vladimir_kolesnikov\"">prof</a>), <a href=\""http://edgedesigns.org/\"">willmot (Tom Willmot)</a> (<a title=\""willmot at WP Profiles\"" href=\""http://profiles.wordpress.org/willmot\"">prof</a>), <a href=\""http://emphaticallystatic.org/\"">wahgnube</a> (<a title=\""wahgnube at WP Profiles\"" href=\""http://profiles.wordpress.org/wahgnube\"">prof</a>), <a href=\""http://www.waltervos.com/\"">waltervos (Walter Vos)</a> (<a title=\""waltervos at WP Profiles\"" href=\""http://profiles.wordpress.org/waltervos\"">prof</a>), <a href=\""http://www.nothingcliche.com/\"">wds-chris (Christopher Cochran)</a> (<a title=\""wds-chris at WP Profiles\"" href=\""http://profiles.wordpress.org/wds-chris\"">prof</a>), <a href=\""http://strangework.com/\"">williamsba1 (Brad Williams)</a> (<a title=\""williamsba1 at WP Profiles\"" href=\""http://profiles.wordpress.org/williamsba1\"">prof</a>), <a href=\""http://willnorris.com/\"">wnorris (Will Norris)</a> (<a title=\""wnorris at WP Profiles\"" href=\""http://profiles.wordpress.org/wnorris\"">prof</a>), <a href=\""http://xavier.borderie.net/\"">xibe (Xavier Borderie)</a> (<a title=\""xibe at WP Profiles\"" href=\""http://profiles.wordpress.org/xibe\"">prof</a>), <a href=\""http://blog.yoavfarhi.com/\"">yoavf (Yoav Farhi)</a> (<a title=\""yoavf at WP Profiles\"" href=\""http://profiles.wordpress.org/yoavf\"">prof</a>), <a href=\""http://zeo.my/\"">zeo (Safirul Alredha)</a> (<a title=\""zeo at WP Profiles\"" href=\""http://profiles.wordpress.org/zeo\"">prof</a>), <a href=\""http://h6e.net/\"">znarfor (François Hodierne)</a> (<a title=\""znarfor at WP Profiles\"" href=\""http://profiles.wordpress.org/znarfor\"">prof</a>), and <a href=\""http://zoranzaric.de/\"">zoranzaric (Zoran Zaric)</a> (<a title=\""zoranzaric at WP Profiles\"" href=\""http://profiles.wordpress.org/zoranzaric\"">prof</a>).</p>\n<h3>Bonus</h3>\n<p>If you&#8217;ve made it this far, check out my 2010 State of the Word speech at WordCamp San Francisco, it&#8217;s jam-packed with information on the growth of WordPress, 3.0, what we&#8217;re planning for the future, and the philosophy of WordPress.</p>\n<p><object classid=\""clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\"" width=\""640\"" height=\""360\"" codebase=\""http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\""><param name=\""flashvars\"" value=\""guid=xj8pDCM4&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M\"" /><param name=\""src\"" value=\""http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21\"" /><param name=\""wmode\"" value=\""transparent\"" /><param name=\""allowfullscreen\"" value=\""true\"" /><embed type=\""application/x-shockwave-flash\"" width=\""640\"" height=\""360\"" src=\""http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21\"" allowfullscreen=\""true\"" wmode=\""transparent\"" flashvars=\""guid=xj8pDCM4&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M\""></embed></object></p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:50:\""http://wordpress.org/news/2010/06/thelonious/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""5\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:7;a:6:{s:4:\""data\"";s:41:\""\n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:7:\""3.0 RC3\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:42:\""http://wordpress.org/news/2010/06/3-0-rc3/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:51:\""http://wordpress.org/news/2010/06/3-0-rc3/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Fri, 11 Jun 2010 20:49:38 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:1:{i:0;a:5:{s:4:\""data\"";s:11:\""Development\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1376\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:257:\""A weekend present, in haiku: Last call; final bugs Itch, scratch, contort; calmly wait For now: RC3 That&#8217;s right. What will hopefully be the final release candidate, RC3, is now available for download and testing. Plugin developers: test your plugins!\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""Jane Wells\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:438:\""<p>A weekend present, in haiku:</p>\n<blockquote><p>Last call; final bugs<br />\nItch, scratch, contort; calmly wait<br />\nFor now: <a href=\""http://wordpress.org/wordpress-3.0-RC3.zip\"">RC3 </a></p></blockquote>\n<p>That&#8217;s right. What will hopefully be the final release candidate, <a href=\""http://wordpress.org/wordpress-3.0-RC3.zip\"">RC3, is now available for download</a> and testing.</p>\n<p>Plugin developers: test your plugins!</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:47:\""http://wordpress.org/news/2010/06/3-0-rc3/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:8;a:6:{s:4:\""data\"";s:47:\""\n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:37:\""Expanding the Theme Review Experiment\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:72:\""http://wordpress.org/news/2010/06/expanding-the-theme-review-experiment/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:81:\""http://wordpress.org/news/2010/06/expanding-the-theme-review-experiment/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Wed, 09 Jun 2010 16:06:11 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:3:{i:0;a:5:{s:4:\""data\"";s:9:\""Community\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:1;a:5:{s:4:\""data\"";s:11:\""Development\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}i:2;a:5:{s:4:\""data\"";s:6:\""Themes\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1347\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:272:\""When I was a kid my dad used to practice his typing skills (on a real typewriter no less) with the phrase: Now is the time for all good men to come to the aid of their country. For some reason that has stuck with me all these years. Today I’m going to rephrase and [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:12:\""Joseph Scott\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1962:\""<p>When I was a kid my dad used to practice his typing skills (on a real typewriter no less) with the phrase:</p>\n<blockquote><p>Now is the time for all good men to come to the aid of their country.</p></blockquote>\n<p>For some reason that has stuck with me all these years. Today I’m going to rephrase and re-purpose that line:</p>\n<blockquote><p>Now is the time for great theme developers to come to the aid of their community.</p></blockquote>\n<p>The theme directory has been chugging along for more than a year now. During that time we’ve tinkered with the review process and some of the management tools, but haven’t really opened it up as much as we’d like. It&#8217;s time to rip off the band-aid and take some action; to that end, we&#8217;re looking for community members to help with the process of reviewing themes for the directory.</p>\n<p>Right now this is a bit like a New Year’s resolution to exercise every day: it’s what we need to do, but we’re still figuring out exactly how it will all work. That’s part of the community involvement as well &#8212; we expect that those who pitch in will also help shape the process.</p>\n<p>What’s involved in reviewing themes for the directory? There are some obvious things, such as being familiar with PHP and WordPress theme code (and the <a href=\""http://codex.wordpress.org/Theme_Development_Checklist\"">theme development checklist</a>), with an eye for security issues. You would also need to have the ability to set up a separate install of the latest version of WordPress for testing theme submissions.</p>\n<p>Hopefully a few talented theme developers are reading this right now and saying to themselves, &#8220;I’d love to help! How do I get started?&#8221; Just join the new <a href=\""http://lists.wordpress.org/mailman/listinfo/theme-reviewers\"">theme reviewers mailing list</a> and we&#8217;ll get you up to speed on this new opportunity to come to the aid of your community.</p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:77:\""http://wordpress.org/news/2010/06/expanding-the-theme-review-experiment/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}i:9;a:6:{s:4:\""data\"";s:41:\""\n \n \n \n \n \n \n\n \n \n \n \n \n \"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";s:5:\""child\"";a:5:{s:0:\""\"";a:7:{s:5:\""title\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""WordPress 3.0 Release Candidate\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:66:\""http://wordpress.org/news/2010/05/wordpress-3-0-release-candidate/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:75:\""http://wordpress.org/news/2010/05/wordpress-3-0-release-candidate/#comments\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:7:\""pubDate\"";a:1:{i:0;a:5:{s:4:\""data\"";s:31:\""Fri, 28 May 2010 02:35:04 +0000\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:8:\""category\"";a:1:{i:0;a:5:{s:4:\""data\"";s:11:\""Development\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:4:\""guid\"";a:1:{i:0;a:5:{s:4:\""data\"";s:40:\""http://wordpress.org/development/?p=1358\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:1:{s:11:\""isPermaLink\"";s:5:\""false\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:11:\""description\"";a:1:{i:0;a:5:{s:4:\""data\"";s:345:\""As Matt teased earlier, the first release candidate (RC1) for WordPress 3.0 is now available. What&#8217;s an RC? An RC comes after beta and before the final launch. It means we think we&#8217;ve got everything done: all features finished, all bugs squashed, and all potential issues addressed. But, then, with over 20 million people using [...]\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:32:\""http://purl.org/dc/elements/1.1/\"";a:1:{s:7:\""creator\"";a:1:{i:0;a:5:{s:4:\""data\"";s:10:\""Jane Wells\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:40:\""http://purl.org/rss/1.0/modules/content/\"";a:1:{s:7:\""encoded\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1993:\""<p>As Matt teased earlier, the first release candidate (RC1) for WordPress 3.0 is now available. What&#8217;s an RC? An RC comes after beta and before the final launch. It means we think we&#8217;ve got everything done: all features finished, all bugs squashed, and all potential issues addressed. But, then, with over 20 million people using WordPress with a wide variety of configurations and hosting setups, it&#8217;s entirely possible that we&#8217;ve missed something. So! For the brave of heart, please download the RC and test it out (but not on your live site unless you&#8217;re extra adventurous). Some things to know:</p>\n<ul>\n<li>Custom menus are finished! Yay!</li>\n<li>Multi-site is all set.</li>\n<li>The look of the WordPress admin has been lightened up a little bit, so you can focus more on your content.</li>\n<li>There are a ton of changes, so plugin authors, please test your plugins <strong>now</strong>, so that if there is a compatibility issue, we can figure it out before the final release.</li>\n<li>Plugin and theme *users* are also encouraged to test things out. If you find problems, let your plugin/theme authors know so they can figure out the cause.</li>\n<li>There are a couple of <a href=\"" http://core.trac.wordpress.org/report/5\"">known issues</a>.</li>\n</ul>\n<p>If you are testing the RC and come across a bug, you can:</p>\n<ul>\n<li>Report it on the <a href=\""http://lists.automattic.com/mailman/listinfo/wp-testers\"">wp-testers mailing list</a></li>\n<li>Join the dev chat and tell us live at irc.freenode.net #wordpress-dev</li>\n<li>File a bug ticket on the <a href=\""https://core.trac.wordpress.org/query?status=reopened&amp;status=assigned&amp;status=reviewing&amp;status=new&amp;status=accepted&amp;group=status&amp;milestone=3.0\"">WordPress Trac </a></li>\n</ul>\n<p>We hope you enjoy playing with the 3.0 RC as much as we&#8217;ve enjoyed making it for you. Enjoy!</p>\n<p><a href=\""http://wordpress.org/wordpress-3.0-RC1.zip\"">Download WordPress 3.0 RC1</a></p>\n\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:36:\""http://wellformedweb.org/CommentAPI/\"";a:1:{s:10:\""commentRss\"";a:1:{i:0;a:5:{s:4:\""data\"";s:71:\""http://wordpress.org/news/2010/05/wordpress-3-0-release-candidate/feed/\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:38:\""http://purl.org/rss/1.0/modules/slash/\"";a:1:{s:8:\""comments\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""0\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}}}s:27:\""http://www.w3.org/2005/Atom\"";a:1:{s:4:\""link\"";a:1:{i:0;a:5:{s:4:\""data\"";s:0:\""\"";s:7:\""attribs\"";a:1:{s:0:\""\"";a:3:{s:4:\""href\"";s:31:\""http://wordpress.org/news/feed/\"";s:3:\""rel\"";s:4:\""self\"";s:4:\""type\"";s:19:\""application/rss+xml\"";}}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}s:44:\""http://purl.org/rss/1.0/modules/syndication/\"";a:2:{s:12:\""updatePeriod\"";a:1:{i:0;a:5:{s:4:\""data\"";s:6:\""hourly\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}s:15:\""updateFrequency\"";a:1:{i:0;a:5:{s:4:\""data\"";s:1:\""1\"";s:7:\""attribs\"";a:0:{}s:8:\""xml_base\"";s:0:\""\"";s:17:\""xml_base_explicit\"";b:0;s:8:\""xml_lang\"";s:0:\""\"";}}}}}}}}}}}}s:4:\""type\"";i:128;s:7:\""headers\"";a:8:{s:6:\""server\"";s:5:\""nginx\"";s:4:\""date\"";s:29:\""Thu, 18 Nov 2010 07:10:47 GMT\"";s:12:\""content-type\"";s:23:\""text/xml; charset=UTF-8\"";s:10:\""connection\"";s:5:\""close\"";s:4:\""vary\"";s:15:\""Accept-Encoding\"";s:10:\""x-pingback\"";s:36:\""http://wordpress.org/news/xmlrpc.php\"";s:13:\""last-modified\"";s:29:\""Thu, 30 Sep 2010 03:23:31 GMT\"";s:4:\""x-nc\"";s:11:\""HIT luv 138\"";}s:5:\""build\"";s:14:\""20090627192103\"";}', 'no') ON DUPLICATE KEY UPDATE `option_name` = VALUES(`option_name`), `option_value` = VALUES(`option_value`), `autoload` = VALUES(`autoload`)

    WordPress for iPhone/iPad v2.6 Released September 30th, 2010
    Attention Apple-gadget-owning WordPress users! Have you been using the WordPress iOS app for iPhone and iPad? Or maybe you tried it a while back and thought it wasn’t for you? Either way, the new release — v2.6 — will knock your socks off. Why? A bunch of reasons: Video. Record, upload, attach, and play videos […]
    WordPress Trademark Changes Hands September 9th, 2010
    The WordPress community took a big step forward today when Matt announced that Automattic has donated the WordPress trademark to the non-profit WordPress Foundation. Moving forward, the Foundation will be responsible for safeguarding the trademarked name and logo from misuse toward the end of protecting WordPress and preventing confusion among people trying […]
}}}
",Viper007Bond
18563,Disallowing editing of .php files in the plugin editor blocks access to allowable extensions,,Administration,2.8,normal,minor,Future Release,defect (bug),new,,2011-09-01T04:12:29Z,2011-11-02T00:06:47Z,"By using the editable_extensions filter, a user can disallow the editing of php files (more accurately: files with a php extension...)

{{{
add_filter( 'editable_extensions', 'disallow_php_file_editing' );
function disallow_php_file_editing( $editable_extensions ) {
	unset( $editable_extensions[0] );	
	return $editable_extensions;
}
}}}

However, the file selected when first clicking on the Editor link in the menu is always a php file, so the user is given the ""Files of this type are not editable"" wp_die() message without being presented with a chance to select a file with a different/allowable extension.",trepmal
16475,Displaying submenus in custom taxonomy of active parent,,Administration,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2011-02-07T02:26:20Z,2011-07-22T09:27:13Z,"In a hierarchical taxonomy, if a top level item in the hierarchy is selected when editing a post, after save that item's orphaned children and grandchildren will also show as top level items. It flattens the hierarchy.",nick4fake
22600,Editor sizing JS puts the resize handle in the wrong place,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2012-11-27T03:58:09Z,2012-12-14T23:51:29Z,"If you do the following, say to deal with the post content editor in a different way, the resize handle ends up in the wrong place because there is no status bar:

{{{
wp_editor( $post->post_content, 'content', array( 'tinymce' => false ) );
}}}

The JS that deals with the editor size/height should probably be checking for the status bar before moving the resize handle. Discovered while working on #22491.",helen
17916,Enqueued styles are only printed on login_footer in wp-login.php,,Administration,3.2,normal,normal,Future Release,defect (bug),reopened,,2011-06-28T00:29:48Z,2012-11-05T19:19:34Z,"In my plugin I have this include:
wp_register_style(""cimy_uef_register"", $cuef_css_webpath.""/cimy_uef_register.css"", false, false);

now independently where and when I use the above css, even if I never enqueue or print it... it basically forces the admin panel to be always left instead of the right.

In particular it changes the admin panel menu #adminmenu to stick to the left, also other little things.
The question is:
why this happens even if the CSS is not included at all? Browsing the documentation quickly on that function I didn't find anything useful, please help me.",Cimmo
15659,Entity escaping needed for comments list table,,Administration,,normal,normal,Future Release,defect (bug),new,has-patch,2010-12-03T07:05:52Z,2011-02-14T06:32:02Z,"Perhaps only as a result of the fact that the URL will be truncated for display, it is possible that URLs will have entities in URLs such as &amp; truncated, thereby creating a non-well-formed entity for application/xhtml+xml . The following patch fixes it (quotation escaping is not needed since this is element content).

This is an easy fix which I hope can be applied given that its lack breaks reviewing the important comments editing page. Thanks.",brettz95
21947,Fix 3-column dashboard display,,Administration,3.4,low,normal,Awaiting Review,defect (bug),new,has-patch,2012-09-20T20:06:46Z,2013-04-14T06:02:52Z,"Issue #20015 'enhanced' the dashboard with a pure-CSS based multi-column dashboard. Excellent.

The CSS used makes gross assumptions about how many columns are appropriate for different-sized displays. Double plus ungood.
Users should be left to decide how many columns they wish to use.

There was [http://wordpress.org/support/topic/three-column-dashboard/ considerable discussion] of this when 3.4 was released, but no remedy yet, other than to hack away at the CSS of one's install, precluding upgrades; I've changed {{{@media only screen and (min-width:800px) and (max-width:1200px){}}} to {{{@media only screen and (min-width:800px) and (max-width900px){}}} in wp-admin.css to get a usable interface.",belg4mit
24084,Fix possible PHP notices after a user is deleted,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2013-04-14T22:24:48Z,2013-04-15T23:09:34Z,"`get_comment_author()` doesn't check if a user that has commented still exists and may throw a notice. Also can return the user_login where a user name is expected.

Same in `edit-form-advanced.php` in the code block that outputs ""Last edited by ..."" under the editor.",azaozz
18264,Future private posts listed as already published with future date specified,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2011-07-27T00:05:27Z,2013-02-04T09:27:17Z,"Setting a post to private, and scheduling it for some future date or time, results in the stamp that the post was ""Published on (future date)"" in the publish module.

The discussion on tickets #5608 and #9136 suggests that all private posts are published immediately (and privately), and that this is intentional. So, it's misleading and confusing to report that it already was published on some future date.

In source:trunk/wp-admin/includes/meta-boxes.php#L163, I suggest we replace:

{{{
else if ( 'publish' == $post->post_status || 'private' == $post->post_status ) { // already published
		$stamp = __('Published on: <b>%1$s</b>'); }
}}}

with:

{{{
else if ( 'publish' == $post->post_status ) { // already publicly published
		$stamp = __('Published on: <b>%1$s</b>');
	} else if (  'private' == $post->post_status ) { // published privately
		$stamp = __('Published privately'); }
}}}",chrisrudzki
17607,Google blog search API shutdown,westi,Administration,3.2,normal,normal,Future Release,defect (bug),assigned,has-patch,2011-05-29T11:21:19Z,2012-10-11T23:13:54Z,"I have done a search and can't see that this has already been reported.

On the wordpresss dashboard the 'incoming link search' uses google blog search API. Google has announced that this api is being shutdown as of effect 26 May 2011 (http://code.google.com/apis/blogsearch/). It will continue to work but with limited functionality (due to their deprecation policy). I therefore suggest that this be removed or use a different API.",jcnetsys
20848,Header images are cropped and resized with improper permissions.,,Administration,3.3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-06-05T17:41:45Z,2012-06-05T17:41:45Z,"On some systems the cropped and resized header images become unreadable by the web server.  

The attached patch makes the files inherit the permissions from the parent folder.


",gtenney99
19206,Improve internal admin menu code,,Administration,3.3,normal,normal,Future Release,defect (bug),new,has-patch,2011-11-08T17:53:44Z,2011-11-09T16:27:02Z,"The internal admin menu code is both hard to read and filled with several unnecessary branches. This makes maintaining the code quite difficult.

A few uses of list and smarter branching can considerably improve _wp_menu_output. Patch attached. Let's revisit this when we branch for 3.4.",koopersmith
22214,Inconsistency in the show_ui parameter for register_post_type,,Administration,3.4.2,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-10-17T20:58:42Z,2012-10-18T00:58:36Z,"There is an inconsistency with the `show_ui` argument to `register_post_type`. When set to false, the post type listing page is open, while the 'Add new' page is not accessible.",nofearinc
12789,Inconsistent left or right margins on admin screens,,Administration,,low,minor,Future Release,defect (bug),new,,2010-04-01T02:46:07Z,2012-12-06T06:06:53Z,There are a couple of admin screens where the screen icon is not aligned to the left of the content.,scribu
16972,Input type radio losts its checked focus when metabox is dragged,azaozz,Administration,3.0,normal,normal,Future Release,defect (bug),reviewing,has-patch,2011-03-26T14:16:05Z,2012-11-07T21:31:46Z,"This happens when I use a radio button in a metabox. Once I try to drag it to different position or just drag and let it go the checked focus is lost. (in code it of course still remain checked, but visually not)

Bug not happens with other fields I tested (checkboxes, inputs, textareas)",depi
18101,Last theme reported in Feature Search is Duplicated as first theme in page 2,,Administration,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-07-13T13:59:36Z,2011-07-14T11:53:46Z,"Search for themes using the features filtering mode. The last theme theme of the first page (if you search for custom background feature the theme is Nona) will be duplicated as the first theme in page 2. Page count in the navigation is correct, and you will get one more theme in the end (e.g. with 121 themes, last page will have two themes instead of just one).",lorthirk
18449,List Table Factory Needs to be Pluggable,,Administration,3.1,normal,normal,Future Release,defect (bug),new,,2011-08-16T19:51:33Z,2012-03-31T08:34:37Z,"Better design planning should have been considered for http://core.trac.wordpress.org/browser/trunk/wp-admin/includes/list-table.php

function _get_list_table() is identical to an object factory pattern, which would make more sense as a static member of WP_List_Table.  In other words...

{{{
$wp_list_table = _get_list_table('WP_Terms_List_Table');
}}}

... which looks simple, is actually confusing because it would be more intuitive if written as ...

{{{
$wp_list_table = WP_List_Table::factory('Terms');
}}}

Further, the factory hasn't offered any extensibility.  Locking edit-tags.php against WP_Terms_List_Table makes it unusable for custom taxonomies that need a custom UI.  Despite all of the great API improvements for taxonomies, this case still necessitates duplicating the entire category editing UI within a plugin just to tweak a table column or a link path.

Please adjust the ticket Type and Component as necessary.  It could be a taxonomy design flaw or an administration enhancement, depending how you look at it.",miqrogroove
14949,Login gives false assurance of having logged out,filosofo,Administration,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-09-23T10:39:34Z,2012-09-20T22:02:19Z,"If you visit `wp-login.php?loggedout=true` while logged in, WordPress falsely tells you that ""You are now logged out.""

This is a problem because it could lead you to think, e.g., that a public computer is no longer authenticated with access to your WP admin.

Patch redirects a still-authenticated user back to the admin from the login page if she requests the above page without actually having logged out.",filosofo
13655,Login/Install/User Edit should stripslashes() $_POST data,,Administration,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-05-31T11:33:17Z,2010-11-13T08:05:36Z,"Following on from #13654 All Login/Registration/Install/User Edit functionality should stripslash $_POST data.

At present, it seems that we do not stripslash at all.

For existing user passwords, we should migrate passwords to their non-stripslashed versions:

 [5/31/10 6:34:11 AM] Mark Jaquith: We could migrate people.[[BR]]

 [5/31/10 6:34:13 AM] Dion (dd32): Perhaps oughta just add proper stripslashing in 3.1, and add back-compat to change password from non-stripslashed to stripslashed.. similar to the md5->phpass implementation..[[BR]]

 [5/31/10 6:35:13 AM] Mark Jaquith: Yep. If the PW doesn't match, addslashes() and compare again. If that matches, set the new PW hash. Right?[[BR]]

 [5/31/10 6:35:19 AM] Dion (dd32): yep

",dd32
17675,Masked Domain Issue Introduced with New Update,,Administration,3.1.3,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2011-06-03T18:09:03Z,2011-06-03T19:59:41Z,"Hi,

I'm experiencing an issue accessing my wp-admin login page, only when using a masked domain.

My root setup is configured as so:
http://rootdomain.com/othersite/wordpress/

The domain I'm using to access it is located here:
http://redirect.com

When I use the root domain to access the login page directly, there's no problem.  But, when I go to http://redirect.com/wp-admin, or click on any login links while at the redirect.com site, the page doesn't load.  The title bar will load, but nothing else.

This is a new issue introduced with the 3.1.3 update.  The masked domain was working prior to 3.1.3.

I've tried this both on Safari & Firefox (latest versions), using Mac OS X.",ital_dj
20453,Media screen links to non-public post types,,Administration,,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-04-16T02:31:56Z,2012-04-16T03:23:46Z,"I have a non-public custom post type registered, so it doesn't get an admin UI.

A file in the media library is attached to one of my custom posts (done at the point the file is uploaded using `media_handle_upload()`). The media item shows up in the Media Library as expected, but the 'Attached To' column links to the editing screen for the parent post, even though the post is non-public.

This allows a user to see the post editing screen for a non-public post type.",johnbillion
21015,Months dropdown should not show if only posts are 'auto-draft' status,,Administration,3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-06-18T19:16:54Z,2012-09-28T14:42:09Z,"The months dropdown at the top of edit.php should only show if there are actually posts in the list.

Right now, if you click 'Add new' an auto draft post will be saved. Leave the post edit screen without saving the post (so no draft will be created) and go back to the edit.php screen. There is no post in the list, but the month drop down will be shown because the auto draft is counted.",CoenJacobs
21770,Multiple New Feature Pop-ups mess UI,,Administration,3.4.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-09-02T11:09:51Z,2013-01-22T03:06:39Z,"WordPress admin and plugins [[Image(http://dl.dropbox.com/u/184353/wordpress-admin-pop-ups.png)]] New Feature Pop-up messages appear on the admin simultaneously, blocking each other messages and functionality. The UI gets seriously messed up.

User attention focuses on how to get rid the overlaping pop-ups rather than reading the messages and understand and start using the new features.",titanas
16696,"No synchronisation between ""most used"" and ""all categories"" in link edit",,Administration,3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-02-28T07:14:37Z,2011-03-04T14:02:26Z,"There are issues with the ""all categories"" and ""most used"" tabs when editing links:

- Go to edit a link

- Click on ""Most used"" in the category section. All the listed categories are unchecked - including the ones that are checked in the ""All Categories"" tab. There is no sync between the two.

- Now check a category in the ""most used"" tab. Go to the ""all categories"" tab and you will find that the same category is now checked (as expected). Now uncheck it from the ""all categories"" tab. Go to ""most used"" and it is still checked there. The sync only works one way ( ""most used"" -> ""all categories"" ).

The first issue is because `wp_popular_terms_checklist()` assumes that you're using it in the context of a particular post, and sets checkedness based on whether the `$post` global has that term. If the `$post` global is empty (as when editing links), nothing is checked. I don't think we should be using `wp_popular_terms_checklist()` as it's context is for individual posts.

The second issue is because the IDs on the most used elements are wrong compared to what the Javascript is looking for.

Patch to follow. 

",solarissmoke
22509,No-JS fallback for default color in color picker,,Administration,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-11-19T19:42:19Z,2012-12-19T20:48:22Z,"The no-JS fallback for the color picker is just a plain input. Since the color picker implementation now includes the ability to reset to a specified default, it seems to make sense to include a no-JS fallback for the default, even just as a little bit of hidden descriptive text.

See #22461 for discussion stemming from the custom header screen.",helen
18724,Non functioning 'paged' input on theme/plugin search,,Administration,3.1,normal,minor,Future Release,defect (bug),new,has-patch,2011-09-20T13:09:04Z,2011-11-08T20:56:31Z,"In the WordPress Admin -> Install Themes -> Search ... The page number input is not functional.

Same for plugin search.",kurtpayne
16683,"Nonce failure error message causes a warning, and also ugly error.",,Administration,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2011-02-27T04:05:15Z,2011-02-27T07:25:36Z,"{{{
( ! ) Notice: Undefined offset: 4 in C:\www\wordpress-commit\wp-includes\functions.php on line 2624
Call Stack
#	Time	Memory	Function	Location
1	0.1991	455408	{main}( )	..\options-permalink.php:0
2	15.8632	23506944	check_admin_referer( )	..\options-permalink.php:69
3	15.8637	23507168	wp_nonce_ays( )	..\pluggable.php:839
4	15.8638	23507240	wp_explain_nonce( )	..\functions.php:2657


Your attempt to change your permalink structure to: has failed.
}}}

I left the permalink page open for a few hours, and just went to update it. Upon clicking update, I was given the above error (see attached jpeg). It feels pretty clunky and average to have a simple text like that.

The warning looks to be caused by the nonce error not being set possibly..",dd32
16162,Pagination and sorting reset after bulk media deletion,,Administration,3.1,normal,normal,Future Release,defect (bug),reopened,,2011-01-09T11:43:33Z,2011-10-27T06:23:48Z,"When doing Bulk Deletes on paginated Media Library, after performing the delete, I'm back on page 1 regardless on which page I've been before.",hakre
18974,Plugin table IDs can collide with core IDs,,Administration,3.3,low,minor,Future Release,defect (bug),new,,2011-10-17T23:14:04Z,2012-01-05T05:33:52Z,"Go to Plugins > Add New and install my ""Local Time"" plugin.

Go to Plugins > Installed Plugins. My plugin's details will show up in italics. This is because the table row is given the ID `local-time` (my plugin's slug) and core has this CSS:

{{{
#utc-time, #local-time {
	padding-left: 25px;
	font-style: italic;
	font-family: sans-serif;
}
}}}

https://core.trac.wordpress.org/browser/tags/3.2.1/wp-admin/css/wp-admin.dev.css#L4287

Targeting this in `options-general.php`:

{{{
<span id=""local-time""><?php printf(__('Local time is <code>%1$s</code>'), date_i18n($timezone_format)); ?></span>
}}}

https://core.trac.wordpress.org/browser/tags/3.2.1/wp-admin/options-general.php#L167

I'm not quite sure why core is using an ID instead of a class. I'm also not quite sure why the plugins table isn't using a prefix of say `plugin-` since the slug can literally be pretty much anything.

Probably better to change the former than the latter for backwards compatibility reasons though.",Viper007Bond
17115,Publishing an empty post results in success,,Administration,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-04-12T11:32:50Z,2012-11-17T00:15:31Z,"'''Steps to reproduce:'''
1. Go to Add New post screen
1. Publish post
1. Success message is displayed with link to initial auto-draft of post

The issue can be traced back to the `editpost` switch case in `post.php` (line 204), which calls `edit_post()` and `redirect_post()`.

`edit_post()` saves any meta values passed with the post to the auto-draft, which isn't necessarily desirable, and returns the auto-draft post ID.

`redirect_post()` then defaults to status message code 6 which incorrectly reports success in publishing.",kawauso
14188,Quick Edit Parentage,filosofo,Administration,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-07-03T19:55:37Z,2012-10-19T22:06:25Z,"If you change a page's page via quick edit, the page item stays below its current parent.

It seems to me that it ought to move underneath the new parent or disappear if that parent is not on the current page.",filosofo
15981,Quick edit (and other actions) need to cancel AJAX actions,garyc40,Administration,3.1,low,normal,Future Release,defect (bug),assigned,has-patch,2010-12-26T05:17:36Z,2010-12-26T21:03:24Z,"Right after you click to paginate, sort or try to search something, you may be inclined to click another link on the page. This happens often when I'm browsing, and on a server with a relatively slow AJAX round trip, it can happen quite commonly.

Problem: If you open Quick Edit, then the ajax results should noop. There might be other actions, but this one in particular does not lead to another page (which obviously would kill the ajax).

The reverse is also an issue. You can search, paginate, or sort when Quick Edit is open, and you lose your edit. This might be bad when quick editing a comment, as you could be losing actual content. Searching and paginating might be explicit actions, but it's not difficult to accidentally click a th and trigger a sort, especially if the first row's quick edit (or bulk edit) is open.

I'm not sure what to do here, other than a JS popup for any time a Quick/Bulk Edit is open, asking you if you want to lose your changes.

So again, two things:

 - Kill the AJAX action if Quick Edit is opened. I would consider this lower priority.

 - 'Lose your changes' confirmation for quick edit and bulk edit before an AJAX action. (We can probably fire the AJAX action and trigger the alert simultaneously, but delay processing the results until the confirm() is true.)",nacin
6342,"Rapidly spamming/deleting comments can break ""infinite river"" feature on comment moderation pages",mdawaffe,Administration,2.5,normal,normal,Future Release,defect (bug),new,,2008-03-21T22:05:16Z,2011-12-14T13:18:06Z,"Comment moderation pages have an ""infinite river"" feature whereby when you remove one comment (spam/delete), it'll load a new one at the bottom.  Unfortunately, it doesn't seem to catch up if you click more rapidly than about once every 2 or 3 seconds, and you'll ""lose"" comments.  At the end, you may just have one comment that, when dealt with, will be replaced by only one comment.  This may have to do with doubleclicking the ""spam"" link, or maybe clicking the ""spam"" link of the next comment before the river action has finished.",markjaquith
24104,Remove duplicated separators in admin menu,,Administration,2.7,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-04-16T17:26:37Z,2013-04-17T02:37:08Z,"I'm working on WordPress admin menu, and I found that the code to remove duplicated separators in admin menu in `wp-admin/includes/menu.php` doesn't work correctly.

Assuming we have these items in the `$menu`:


{{{
$menu = array(
	100 => array(
		0 => 'Admin Style',
		2 => 'wp-admin-style.php',
		1 => 'read',
		4 => 'menu-top menu-icon-generic toplevel_page_wp-admin-style menu-top-first menu-top-last',
		6 => 'none',
	),
	110 => array(
		0 => '',
		1 => 'read',
		2 => 'separator1',
		3 => '',
		4 => 'wp-menu-separator',
	),
	130 => array(
		0 => '',
		1 => 'read',
		2 => 'separator2',
		3 => '',
		4 => 'wp-menu-separator',
	),
	140 => array(
		0 => '',
		1 => 'read',
		2 => 'separator-last',
		3 => '',
		4 => 'wp-menu-separator',
	),
	150 => array(
		0 => 'Hide Menu',
		1 => 'manage_options',
		2 => 'hide-admin-menu',
		3 => 'Hide Admin Menu',
		4 => 'menu-top toplevel_page_hide-admin-menu',
		5 => 'toplevel_page_hide-admin-menu',
		6 => 'http://localhost:8080/wp/wp-content/plugins/hide-admin-menu/img/icon.png',
	),
);
}}}

WordPress will remove only the 1st duplicated separator (130) and still keeps the 2nd one (140).

Another problem with current code is if separator menu item has classes like `'wp-menu-separator woocommerce'` (WooCommerce does this), it won't be recognized as a separator, because the function to check separator uses `strcmp`.

",rilwis
19085,Removing First Submenu Page in Admin Menu breaks URL for Menu Page,,Administration,3.1,normal,major,Awaiting Review,defect (bug),new,,2011-10-29T18:44:19Z,2011-10-29T20:39:29Z,"If you attempt to remove the Post Type Submenu Page in the Admin it breaks the Menu Page URL; it causes the Menu Page URL to be the same as the new first Submenu Page URL:

[[Image(http://screenshots.newclarity.net/skitched-20111029-142108.png)]]

Here is a simple class you can drop into the theme's `functions.php` file to experience this bug. This example is a minimum to trigger the error ''(I simplified the `register_post_type()` call so the example code would have fewer lines):''

{{{
<?php

class Trigger_Admin_Menu_Bug {
  static function on_load() {
    add_action( 'init', array( __CLASS__, 'init' ) );
    add_action( 'parent_file', array( __CLASS__, 'parent_file' ) );
  }
  static function init() {
    global $wpdb;
    register_post_type( 'test-cpt', array(
      'label'   => 'Test CPT',
      'show_ui' => true,
    ));
  }
  static function parent_file( $parent_file ) {
    remove_submenu_page( 'edit.php?post_type=test-cpt', 
                         'edit.php?post_type=test-cpt' );
    return $parent_file;
  }
}
Trigger_Admin_Menu_Bug::on_load();
}}}

I'd provide a patch but the admin menu code is more complex than I can fully understand.  Maybe the person who originally wrote it could fix it? 

Note: Sadly, this is a blocker for one of my client projects.  The client wants the admin menus simplified to reduce the conceptual load on their end users because we are adding many other submenu pages.  Plus I've traced through the core WP code with a debugger for many hours looking for hooks that would allow me to get around this issue, but there simply are no hooks where it would be needed to hack a fix for this.",mikeschinkel
22200,Require users to set a site title,,Administration,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-10-15T18:52:14Z,2013-01-26T20:43:26Z,"Currently, users can get away with setting a blank site title under Settings -> General.

As a consequence, meta and title tags in both the front-end site and wp-admin may be empty, or contain extraneous spaces and separators. 

A common reason why users leave site titles blank is due to the misperception that the site title is necessarily displayed in the header on the front-end site. 

I suggest that we display an alert when users attempt to set a blank site title, and possibly suggest that if they don't want it to appear in their header, they can edit their CSS or hide header text under Appearance -> Header.",chrisrudzki
15414,Rework admin searches and make them compatible with no-js again,ocean90*,Administration,3.1,normal,normal,Future Release,defect (bug),accepted,,2010-11-13T13:53:19Z,2010-12-10T19:36:56Z,"I'm working on #15355 and found some problems with the searches. I will use this ticket to add the patches, one patch for each problem which I have found.

A list with what it not working:
 - ~~Comments search doesn't work without JS~~ fixed
 - ~~Users search doesn't work with and without JS~~ fixed
 - http://grab.by/7nC2 I like the idea with the new tab ""Search Results (1)"", but you will see it only in no-js version and only for themes and plugins search. We should add it for all searches, AJAX search and with no grey bgcolor to be consistent. '''Or''' we must respect the active tab like we did it on comments search, so if 'Sticky' tab is active search only through sticky posts and not all as it is yet. Consistent is the word here.
- Behaviour after a search without any results: With JS it's an empty table and with no-js we have the message ""No xxx found.""",ocean90
21421,Sanitize/remove admin page slug  from admin menu CSS classes,,Administration,,normal,normal,Awaiting Review,defect (bug),new,,2012-07-30T11:26:15Z,2013-03-02T21:00:41Z,"As I discovered when testing #21307, browsers won't parse a CSS class name with both underscores and hyphens. Instead, they handle it ''really'' badly.

For example: `.toplevel_page_link-manager` will affect `body` in both Firefox and Chrome.

Plugin page menu items have both an ID and class generated as such, which seems rather redundant. I propose either dropping the redundant and only partly functional CSS class or standardising the menu slug to produce a valid class name.",kawauso
22003,Saving custom fields goes to post-new.php rather than post.php,,Administration,2.5,normal,normal,Awaiting Review,defect (bug),reopened,,2012-09-26T15:57:01Z,2012-09-26T19:19:54Z,"Create a new post or page.
Add a title and message.
Add a custom field (click ""Add Custom Field"")

The post is saved, but as you are taken to post-new.php rather than post.php, it looks as if your post has disappeared! All is well - it is actually saved - but it's confusing.

Tested on 3.5-alpha-21989",curiousdannii
17636,Search subtitles are handled inconsistently across admin,,Administration,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-01T12:15:48Z,2011-07-09T11:44:29Z,"Try the following strings in the Comments admin screen and any other:

`\'""\fs""\\\""` 

`imareallylongstringlookatmegoandgoandgoandgoandgoandgoandgoandgoandgoandgoandgoandgoandgoandgo`

The Comments screen uses `strip_slashes()` and `wp_html_excerpt()` to limit search strings to 50 characters, while other screens do not.",kawauso
24149,Set RTL body class for iframes,,Administration,,normal,minor,Future Release,defect (bug),new,commit,2013-04-21T03:57:06Z,2013-04-22T06:36:02Z,"iframe_header() sets the current locale string in the body class, but not the RTL flag. Please add this.

This came up in MP6 development, where MP6 does not (at this moment) rely on a separate rtl stylesheet like in the current admin CSS, but instead relies more on the body having .rtl set.",mitchoyoshitaka
9296,Settings API & Permalink Settings Page Bug,jfarthing84,Administration,2.7.1,normal,major,Future Release,defect (bug),reopened,has-patch,2009-03-07T05:33:55Z,2013-04-22T20:58:19Z,"Although there is a hook in the options-permalink.php to insert custom settings, it does not actually save any custom setting which is added to that page.  Instead of posting to options.php like all the other options pages, it posts to itself and only handles the form data which is built into the wordpress core.  It should be implemented on that page to also store custom settings that may be hooked onto that page.",jfarthing84
18307,Settings mixed with WP installations sharing same database,,Administration,3.2.1,normal,major,Awaiting Review,defect (bug),new,,2011-07-31T21:22:09Z,2012-02-20T20:27:18Z,"I have WP website installed on main domain, and another WP installation on subdomain. These two share users tables.

When I rearrange admin dashboard widgets, or post editor widgets in one installation, other one uses same settings making the mess due to differences in available elements (different plugins installed).

All WP settings cookies are saved without proper setting of the cookie path/domain, and all sub-domains use same cookies as the main domain does. Cookies have to have full domain set to avoid mix-up like it happens now.

Same issue happens with Opera, Chrome and Firefox.

Milan ",GDragoN
16345,Some submit buttons shouldn't have names,,Administration,3.1,normal,normal,Future Release,defect (bug),reopened,has-patch,2011-01-22T18:24:30Z,2011-02-13T14:38:59Z,"Technically a regression due to the submit_button implementation. What happens instead is the URL gets polluted.

Noticed especially after we moved back to GET on a bunch of screens.

In these cases, we just need the form to be sent. Don't need the context info.",nacin
15993,Sort arrows improperly wrap on narrow columns,,Administration,3.1,normal,normal,Future Release,defect (bug),reopened,,2010-12-27T06:14:21Z,2012-11-01T06:22:32Z,"Specifically, I noticed the 'Posts' column on a taxonomy screen (or 'Links' for link categories, etc).",nacin
15861,Sorting users by post count,,Administration,,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-12-17T10:21:24Z,2012-01-18T22:48:06Z,"Currently, to enable sorting by post count, there's a JOIN made between the users table and the posts table.

This is bad, because users is a global table, which might be stored in a separate database.

Short-term solution for 3.1 is to disable sorting.

Long-term solution is to avoid the JOIN somehow. ",scribu
17036,Theme editor shouldn't override root directory files with same names in child directories,,Administration,3.1,normal,normal,Future Release,defect (bug),new,,2011-04-03T19:11:33Z,2012-06-27T10:23:07Z,"'''Steps to reproduce:'''
1. Create subdirectory: blogs
1. Create file in subdirectory: index.php
1. Try selecting Main Index Template in Theme Editor

Example is taken from BuddyPress' theme structure. `get_file_description()` doesn't account in any way for the presence of subdirectories since it uses `basename()`.",kawauso
17635,Themes page should have search subtitle,,Administration,3.2,normal,normal,Awaiting Review,defect (bug),new,,2011-06-01T12:15:05Z,2011-06-01T14:26:16Z,"Most admin pages display the term that the user has searched for when displaying search results, but the Themes page (under site admin) doesn't.

[16525] seems to have excluded it in the AJAXified list tables, but gives no reasoning.",kawauso
23316,Top level admin sidebar menu items with conflicting positions bury one another,,Administration,3.5.1,normal,major,Awaiting Review,defect (bug),new,,2013-01-29T21:07:27Z,2013-01-30T04:23:58Z,"I have now seen two separate instances where a top level admin sidebar menu item wasn't showing up when another Plugin or Theme was activated. In the most recent case, using WP 3.5.1. my Plugin was creating a top level menu item with no position specified (blank, default). When I activated my client's Theme, our Plugin sidebar item disappeared and in place came the Theme Options item. I set our Plugin to use position 70, and it came back in place of the Users top level menu item.

In the earlier case, I had a custom post type that was requesting position 20. Whenever I activated Gravity Forms, my custom post type menu item was disappearing. This was with WordPress v3.5

According to the codex page: ""''WARNING: if two menu items use the same position attribute, one of the items may be overwritten so that only one item displays! Risk of conflict can be reduced by using decimal instead of integer values, e.g. 63.3 instead of 63 (Note: Use quotes in code, IE '63.3').''""

This seems like a bug to me. Why should items be allowed to completely overwrite one another? Shouldn't they just fall in line, albeit randomly when two conflict? I can see tons of problems with Themes and Plugins killing one another's top level menu items, and the user not understanding what's going on when they loose something unexpectedly.",beautomated
22195,URL for views are defined statically.,,Administration,,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2012-10-15T11:31:11Z,2013-05-08T10:44:27Z,"URLs for views/screens on wp-admin/edit.php are defined statically.
[[BR]][[BR]]
why we are not using add_query_arg(); or remove_query_arg(); while adding URL? This is causing serious issues like resetting extra parameters passed to view/screens.
[[BR]][[BR]]
need expert opinion on this i can write patch if required.
[[BR]][[BR]]

{{{
WP_Posts_List_Table->get_views();
}}}



",valllabh
16858,Usage of HTTP_HOST in the administration,,Administration,3.1,normal,normal,Awaiting Review,defect (bug),reopened,reporter-feedback,2011-03-15T13:33:47Z,2012-08-09T18:46:29Z,"In some files like wp-admin/includes/class-wp-list-table.php (there are more files I think), some links are created by using the HTTP_HOST variable.

It's better to use the defined wordpress URL to create those links.

In our case, we have a wordpress running behind a Squid cache. When you check for HTTP_HOST you get the *real* HOST and not the one with the Squid server.

To bypass the problem, I added in the main config.php a line like this :

{{{
$_SERVER['HTTP_HOST'] = 'www.my-visible-http-host.com';
}}}

Without this setting and in our case, some links in the admin (next, previous page, re-ordering...) where pointing to the wrong server.
",amirhabibi
23886,Use set_url_scheme for draft Preview links in post table,,Administration,trunk,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-03-29T01:20:52Z,2013-03-29T01:23:03Z,"When using FORCE_SSL_ADMIN and this filter to prevent non-SSL preview of posts:

{{{
add_filter('secure_logged_in_cookie', '__return_true');
}}}

Preview links for unpublished drafts on `wp-admin/edit.php` do not use SSL and will 404.

This can be fixed by using `set_url_scheme` for the unpublished preview link. A similar unpublished preview link in `meta-boxes.php` was changed to use `set_url_scheme` in [21664]. For context, see #20759, #13328.",reidburke
17959,WP-Tab css,WraithKenny,Administration,3.2,normal,minor,Awaiting Review,defect (bug),reopened,has-patch,2011-07-01T17:03:44Z,2013-01-21T23:20:35Z,"The classes wp-tab-panel, wp-tab-bar, and wp-tab-active should adjust to side tabs in the post column (to match the behavior of categories for example)

Also, there are several unneeded duplicate css classes that can be cleaned up.",WraithKenny
21249,WP_List_Table::single_row_columns() needs to do an exact comparison,,Administration,,lowest,trivial,Future Release,defect (bug),new,has-patch,2012-07-13T01:20:28Z,2012-11-07T22:05:29Z,"If for whatever reason you pass a column ID of `0` when dealing with a list table, !WordPress thinks it's a checkbox column because of the loose comparison, i.e. `==` instead of `===`.

Since I don't see why passing a number instead of a string shouldn'r be allowed, attached is a patch.",Viper007Bond
16864,WP_Terms_List_Table doesn't call sanitize_term() on display,,Administration,2.9,normal,minor,Awaiting Review,defect (bug),new,has-patch,2011-03-16T12:54:07Z,2011-06-22T17:05:26Z,"Steps to reproduce:

Add this filter:

{{{
add_filter( 'category_slug', function() {
  return 'filtered';
} );
}}}

and go to {{{edit-tags.php?taxonomy=category}}}",scribu
22700,Walker_Category_Checklist should sometimes set the value as the term name,,Administration,3.0,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-12-03T19:45:57Z,2013-02-19T05:12:08Z,"The `Walker_Category_Checklist` class has been partially adapted to work with taxonomies other than `category`, but it does not seem to cope with non-hierachical taxonomies.

For non-hierachical taxonomies, the HTML form elements (checkboxes, radios, dropdowns, whatever) need to set the term **name** as the value, not the ID… otherwise WordPress will cast the ID to a string and create a new term with that string as a name.

To see the problem:

* Use `Walker_Category_Checklist` to create a checkbox in a metabox on the post edit screen for a non-hierarchical taxonomy
* Add some terms to the taxonomy
* Check the box for the taxonomy and update the post
* Watch a new term appear with its name set to the ID of the term you checked


",simonwheatley
24297,WordPress 3.6 UI - Post Visibility Buttons Jumps User to Bottom of Page and Does Not Open Option,,Administration,trunk,normal,major,Awaiting Review,defect (bug),new,close,2013-05-09T17:40:52Z,2013-05-10T21:22:30Z,"Using the WordPress.com 3.6 UI test version, in Firefox older than version 19 (tested on 17-19 across multiple Windows computers in my college class) clicking Post Edit > Publish > Visibility jumps the user to the bottom of the web page and the Visibility option does not open to reveal the Public, Private, and Password Protection options. 

Works in Chrome, so the students all switch to Chrome for that exercise. 

This has been in play for almost three weeks. 

These tickets might be associated with the issue: #23817, #23684.

Thanks!


",Lorelle
11207,WordPress may display incorrect message when post is saved/published/etc,bsamrajni*,Administration,2.9,normal,normal,Future Release,defect (bug),accepted,has-patch,2009-11-20T20:23:23Z,2011-06-25T20:35:42Z,"When post is saved, WP calls `wp_insert_post_data` filter. Plugin can use it to change post status. But even post status has been changed via plugin, WP still displays message basing on action originally executed by user. Need to change this and take into account final post status too.",sirzooro
19531,Wrong error message after correcting an error in username,,Administration,,normal,normal,Awaiting Review,defect (bug),reopened,dev-feedback,2011-12-13T10:07:56Z,2012-12-17T16:11:17Z,"After entering an illegal username (fe. ""Wim (wim@go2people.nl)""), WordPress gives an error message saying:
""ERROR: This username is invalid because it uses illegal characters. Please enter a valid username.""
So far so good.

Now, when I correct the issue and click ""Add new user"" again, the above error message remains in the screen, while the illegal characters are no longer there and the actual error I am facing is that I forgot my password. Which is confusing for me.

The same occurs, when I enter an e-mail which has already been registered. I get the error message:
""ERROR: This email is already registered, please choose another one.""
When I correct, the error message remains, while this particular problem has been solved.

WP v: 3.3
Browser: Google Chrome 14.0 on Ubuntu 11.10
",wimfeijen
23836,add_submenu_page() duplicate menus,,Administration,,normal,major,Awaiting Review,defect (bug),new,,2013-03-21T16:43:24Z,2013-04-04T03:22:08Z,"Creating two sub-menus with the same ""menu slug"" using add_submenu_page() should create only the last sub-menu.
But it creates two sub-menus with the same ""menu slug"".

Based on documentation ""menu slug"" should be unique for each sub-menu.",king_of_the_ring
19068,"admin comment search never resets URL, grows infinitely",,Administration,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-10-27T15:23:48Z,2011-10-28T11:53:53Z,"When searching from {{{ /wp-admin/edit-comments.php }}}
the URL will grow infinitely and never reset to it's base.

To reproduce this bug, simply search comments several times and then examine the resulting URL )by copying it to an editor). It will be over 1000 characters easily, because it's simply appending the previous searches and previous nonces for no useful reason.

Instead the form should just use {{{ /wp-admin/edit-comments.php }}} as it's submit base.

But that form should not be using GET in the first place.

Allowing overly long URLs is also a security problem as it can give a window for XSS attacks.

I wouldn't be surprised if this design flaw exists in other parts of WP admin but I'll leave that up to someone else who has more patience.

",_ck_
24328,blogname and blogdescription strip content between angle brackets,,Administration,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-05-13T09:12:06Z,2013-05-15T13:18:35Z,"I was trying to set my Site Title to '''<?= test ?>'''. On saving the settings, the field returned empty. The same problem occurred with the Tagline.

After looking into `wp-admin/options.php`, I noticed that there was no provision made for escaping the fields.",aniketpant
22236,edit.php: Apply when Bulk Actions selected forgets tag= filter,,Administration,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-10-20T22:54:28Z,2013-05-04T04:29:47Z,"Using WordPress 3.4.2, go to Posts, and click on one of the tags on one of your posts. The URL now contains tag=<tag>, and the screen shows the first 20 posts with that tag.

Now click the Apply button just next to the ""Bulk Actions"" drop-down at the top left.

I expect this to reload the page but otherwise have no effect.

Instead, it reloads the page without the tag=<tag> URL parameter, and shows the first 20 posts (irrespective of tag).

This is surprising and confusing - it's easy to accidentally hit ""Apply"" without having chosen an action, but at first glance it looks like nothing has happened. The user can then go on to do a bulk action (e.g., add category) without realising the tag they previously had selected is now no longer selected.

Note that filters (e.g., by category) that are set up using the Filter button *are* preserved when Bulk Actions / Apply is chosen - it's just tags that are lost.",kw217
22669,iPad: Can't Scroll Plugins Modal,,Administration,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-01T02:31:23Z,2012-12-02T01:43:48Z,"Steps to reproduce:
1. Tap Plugins
1. Tap Add New
1. Tap Featured
1. On any item, tap Details.
1. Tap Changelog
1. Swipe to scroll

Expected result:

See more Changelog.

Actual result:

The page is scrolling around behind the modal.  Modal not scrolling.

Related: #22064",miqrogroove
11311,"kses converts ampersands to &amp; in post titles, post content, and more",,Administration,2.9,normal,normal,Future Release,defect (bug),new,,2009-12-03T01:49:32Z,2013-05-17T10:03:16Z,"Make a test user that has the ""author"" role (i.e. no `unfiltered_html`) and write a post with a title that has `&` in it. After saving, it will becomes `&amp;` due to `wp_filter_kses()`. It gets saved in the database this way too.

It's confusing to the user.",Viper007Bond
13416,media for install.css missing (patch),,Administration,3.0,normal,normal,Awaiting Review,defect (bug),new,has-patch,2010-05-16T18:48:17Z,2013-01-22T07:40:13Z,In /core-root/wp-includes/general_template.php the function wp_admin_css is missing the @media definition. See patch.,F J Kaiser
16258,nav menus dont save the right type of menu items,,Administration,3.0.4,normal,minor,Awaiting Review,defect (bug),new,reporter-feedback,2011-01-16T12:57:50Z,2011-01-20T20:47:27Z,"the new Navigation menus when the flag is set ""Automatically add new top-level pages"" when adding a new page to the menu and saves the new menuitem will change from ""page"" to ""userdefined"" as type.

It is always only the last item in the menu there is changeing. ",J0rDZ
23477,r21789 creates a breaking change in behavior for get_submit_button,,Administration,3.5,normal,minor,Awaiting Review,defect (bug),new,,2013-02-14T23:23:57Z,2013-02-15T17:32:18Z,"A recent change made to get_submit_button (http://core.trac.wordpress.org/changeset/21789/trunk/wp-admin/includes/template.php) has caused an unwanted change in behavior for a button on a site I maintain. Previously, the string passed as the second argument, `$type`, was matched against a switch statement with several unique cases. In the event of a non-match in the switch, the default action prior to [21789] was to assign the parameter's value as the `$class` string without altering it.

The change introduced in [21789] now breaks a string into individual classes, which prevents the use of the unique class names within a string of additional class names. For example, the string `button-secondary save-button action` used to generate a class string in HTML of `button-secondary save-button action`, but now generates the unexpected result `button save-button action` (note lack of '-secondary') because it matches against the following if check on line 1600:

`if ( 'secondary' === $t || 'button-secondary' === $t )`

It should be noted that the phpdoc associated with the function does not name the use case that I was employing, but that the behavior of passing in a space-separated class string has previously resulted in the string being passed through untouched (and the comment here indicates it was known and expected behavior (http://core.trac.wordpress.org/browser/trunk/wp-admin/includes/template.php?rev=21781#L1649), and this is no longer the case. Not sure if this is worth a programmatic fix, or if it might just be worth noting in the function docblock that certain classes are now 'reserved' and cannot be passed into the `$type` string.",vhauri
17249,thickbox modal window dimensions are fixed in wp-admin,,Administration,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-04-27T05:01:38Z,2012-01-19T00:03:35Z,"Hello,

When invoking a thickbox modal in wordpress wp-admin, the dimensions of the modal window can't be customized. Because of media-upload.js is replacing the tb_position() function.

This is not needed that way, and media upload modal window size can be set when calling it.

The workaround is rather complicated, please read: http://binarybonsai.com/2010/02/27/using-thickbox-in-the-wordpress-admin/ down to ""The Media Manager Horror""",DreadLox
21989,update_option() calls sanitize_option() twice when option does not exist,,Administration,,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-09-25T05:04:34Z,2012-09-25T05:54:32Z,"
I just spent several hours tracking down an issue when using the Settings API where `sanitize_option()` is called twice which is unnecessary execution especially if sanitization includes calling an external API for username/password authorization ''(this was how another developer set it up for a plugin I was debugging.)''

What happens is that a call to `update_option()` will call `sanitize_option()` and then if the option wasn't previously in the options table `update_option()` will delegate to `add_option()` which calls `santize_option()` a second time.  This would normally be easy to workaround by first calling `get_option()` and testing for `false` and calling `add_option()` instead of `update_option()` if `false`, but not when the Settings API chooses how to call it.

I've looked at the problem and can envision several different ways to solve it such but don't know which the core developers would choose ''(or if they'd choose yet another option I haven't envisioned)'' so I didn't submit a patch:

- Adding a 3rd parameter `$mode` to `sanitize_option()` that identifies the mode ''('add', 'edit', default = 'unknown')'' and thus allow the hook to ignore one of the options ''(this would be more backward compatible but would put the onus on the developer to know to do this)'',  
- Adding a 5th parameter `$bypass_sanitize` to `add_option()` defaulted to `false` that is only passed as `true` in `update_option()` allowing `update_option()` to disable the call to `sanitize_option()` found in `add_option()` ''(this would be less backward compatible and hacky, but seemless to the developer)''
- Adding a 3rd parameter `$bypass_sanitize` to `update_option()` defaulted to `false` that is only passed as `true` from `/wp-admin/options.php` allowing `update_option()` to bypass the call to `sanitize_option()` if an `add_option()` will happen ''(this would be less backward compatible and hacky, but seemless to the developer)''
- Have `/wp-admin/options.php` test for no pre-existing option and then call `add_option()` or `update_option()`, respectively ''(this would be seemless to the developer but less backward compatible and not hacky, and it wouldn't handle the general case.)''

So is this worth fixing to save other users and developers debugging time, and to reduce the chance of subtle errors in new code? If yes, how best to approach?",MikeSchinkel
24334,"""edit_form_after_title"" and ""edit_form_after_editor"" hooks wrapper optional?",,Administration,trunk,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2013-05-14T10:51:21Z,2013-05-14T18:38:39Z,"Would it be possible to make the `DIV.edit-form-section` wrapper applied around `edit_form_after_title` and `edit_form_after_editor` hooks in post/page edit screen optional in WP3.6? Or create additional non-wrapped hooks besides?

[http://core.trac.wordpress.org/browser/trunk/wp-admin/edit-form-advanced.php#L462]
[http://core.trac.wordpress.org/browser/trunk/wp-admin/edit-form-advanced.php#L502]

These wrappers were actually introduced in WP3.6, the WP3.5 version was without them. 

'''Explanation of what I do:'''
* `edit_form_after_title` hook - I output UL list of tabbed interface here and open the first tab content DIV
* `edit_form_after_editor` hook - I close the first tab content DIV and output the other tab content DIVs

The first content DIV is always a visual editor. But as you can see, when I open the DIV in one hook and closing it in another one, this was working fine in WP3.5 as no wrapper was added to those hooks. Once there is a wrapper, it obviously messes up the HTML and closes divs prematurely. This is causing issues obviously for tabbed interface.

Screenshot: [http://awesomescreenshot.com/09915rzc37]
Ticket started on Alpha/Beta support forum: [http://wordpress.org/support/topic/wrapper-of-edit_form_after_title-and-edit_form_after_editor-hooks-optional]

Thank you!",lemmonaid
16865,'post' definition should use menu_position,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2011-03-16T15:03:00Z,2011-03-17T10:32:11Z,"Since WP 3.1, we don't need to hardcode the Posts $menu array, since register_post_type() is flexible enough to handle it.",scribu
7756,AJAX saving method instead of reloading the page,,Administration,,normal,normal,Future Release,enhancement,new,,2008-09-16T17:36:44Z,2013-01-03T16:12:25Z,"Instead of using a traditional page refresh after saving a post, utilize AJAX, similar to how auto-saving already functions, to save the post.

this would help decrease the load on the server and enhance the user experience.",jdingman
18413,"Ability to Add Custom ""Add User"" Link",,Administration,,normal,normal,Awaiting Review,enhancement,new,,2011-08-15T14:44:54Z,2011-08-15T14:44:54Z,"For the ldap plugin i'd like to be able to utilize the current location of the ""Add New"" and ""Add Existing"" button to override it to show a button to link to the custom page for the ldap add user page.

Currently there are no hooks or filters that would allow me to add something in there - would it be possible to add in an action in there after the existing code to print out the add buttons?",axelseaa
21938,"Add ""no-store"" to Cache-Control header to prevent history caching of admin resources",,Administration,3.4,normal,trivial,Awaiting Review,enhancement,new,has-patch,2012-09-20T10:54:27Z,2012-09-28T07:56:36Z,"The current implementation of [http://core.trac.wordpress.org/browser/trunk/wp-includes/functions.php#L891 wp_get_nocache_headers] does not take into account history caching, which results in a browser serving a cached copy of pages from history (by pressing the Back button) even if the user has long logged out.

[http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.2 RFC 2616 14.9.2 no-store] describes this cache directive.

To repoduce: login to dashboard, logout, press the back button.
Expected: the login screen.
Reality: a copy of the previous page.

By adding the ""no-store"" directive to all non-cachable resources the behavior was mitigated successfully in Chrome 21, Firefox 15. Fails on Opera 12 (they chose to disregard ""no-store"" when applied to history, RFC allows this).",soulseekah
21911,"Add 'All Themes', 'Parent Themes' and 'Child Themes' tabs",,Administration,3.4.2,normal,minor,Awaiting Review,enhancement,new,close,2012-09-17T18:37:44Z,2013-03-08T15:31:36Z,"When you have multiple themes installed which are a mixture of parent and child themes, it can be a bit overwhelming sometimes to have ALL themes lumped together in one view.

It would be nice on the themes.php page to replace the 'Available Themes' text with some tabs such as:

All Themes | Parent Themes | Child Themes

The 'All Themes' tab would show all available themes (default view), 'Parent Themes' tab would only show parent themes, and 'Child Themes' for child themes, but only if any are installed (to prevent an empty tab from being shown).

Hopefully this wouldn't be too hard to implement, but would be pretty handy for the end user for multiple available themes.

An extension to this could have a further tab called something like 'Favorites' where you can flag certain themes you like. This could be a great way of displaying just a select custom subset of themes that you have complete control over (only if at least one theme had been flagged as a favorite).


All Themes | Parent Themes | Child Themes | Favorites
",dgwyer
22333,Add IDs to .misc-pub-section divs in meta-boxes.php,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-10-31T16:25:40Z,2012-11-13T01:39:40Z,"In `wp-admin/includes/meta-boxes.php` the `post_submit_meta_box` has several sections with class .misc-pub-section. Should you have to style/alter any of them, it's not consistent as:

1. first div has only `class=""misc-pub-section""`
2. second div has `class=""misc-pub-section"" id=""visibility""`
3. third div has `class=""misc-pub-section curtime""`

Since this is a unique box on the screen, I've added two more IDs to div blocks 1 and 3 to allow for easier styling changes. ",nofearinc
11164,Add Theme Sort Filter,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2009-11-17T16:03:18Z,2009-12-01T18:16:20Z,"I've run across the need for this in a few plugins. You can't adjust the order of themes in the theme browser as all filters are applied before the sort.

Aaron (for Incsub)",uglyrobot
21190,Add a action in check_admin_referer() in the event the nonce auth fails,,Administration,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-07-08T09:12:56Z,2012-07-08T09:12:56Z,"Currently plugins don't have a way to perform custom handling in the event that a nonce fails in `check_admin_referer()` - Whilst in most cases this will never be needed, I'd like the ability for plugins to be able to use `check_admin_referer()` directly AND have the option of redirecting failed nonces to their own page.

We currently have an action which is fired when a nonce passes:
{{{
do_action('check_admin_referer', $action, $result);
}}}",dd32
15406,Add a pending post count indicator to the admin menu,,Administration,3.0.1,normal,trivial,Awaiting Review,enhancement,new,dev-feedback,2010-11-12T17:28:49Z,2013-01-22T15:21:49Z,"Comments has an indicator bubble on the dashboard with the pending comments count.

Pending posts should have such a feature, since they are quite more important.",iign
15355,Add ability to clear search results,garyc40,Administration,,normal,normal,Future Release,enhancement,assigned,has-patch,2010-11-09T08:11:56Z,2012-04-13T11:32:28Z,"Let's put a (X) next to ""Search results for `string`"" that immediately clears the search results. Otherwise there is no way to do it, without clearing the box manually and hitting enter.

We would use the same X we use for bulk edit.",nacin
18357,Add action to do stuff before the admin menu is rendered,,Administration,3.2.1,normal,trivial,Awaiting Review,enhancement,new,has-patch,2011-08-08T22:08:23Z,2011-08-08T23:34:15Z,"Here is a trivial patch to allow users to inject some stuff in the Admin pages HTML body before the menu is rendered. The new action is called 'before_admin_menu_header', feel free to use a better name.",llucax
21636,Add category dropdown to QuickPress in Dashboard,,Administration,3.4.1,lowest,minor,Awaiting Review,enhancement,new,has-patch,2012-08-19T20:14:09Z,2012-08-31T18:28:22Z,"This would make QuickPress more useful to people who use categories instead of tags, have been meaning to do this for years.


",jane
11200,Add count for approved comments filter,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2009-11-20T15:17:04Z,2011-06-29T17:28:19Z,"On wp-admin/edit-comments.php, Approved is the only filter that doesn't have a count after it.",scribu
15261,Add do_action to form tag in edit-tag-form.php,,Administration,3.1,normal,normal,Future Release,enhancement,reopened,has-patch,2010-10-30T16:07:46Z,2011-01-19T23:50:20Z,"How about adding additional actions to the form tags in admin taxonomy pages like ''edit-tag-form.php''?

An example can be found in ''user-edit.php'' line 183:


{{{
<form id=""your-profile"" ... method=""post""<?php do_action('user_edit_form_tag'); ?>>
}}}
",linguasite
23986,Add filter for <html> css class in admin,,Administration,trunk,normal,minor,Awaiting Review,enhancement,new,,2013-04-08T08:23:10Z,2013-04-08T08:23:10Z,"It would be handy (looking at MP6), if it would be possible to alter the CSS class of `<html>` in the backend.",tillkruess
13605,Add filter for admin-ajax get-tagcloud's arguments for wp_generate_tag_cloud,,Administration,3.0,low,minor,Future Release,enhancement,new,has-patch,2010-05-28T20:30:43Z,2010-10-27T10:13:29Z,Patch attached.,mitchoyoshitaka
13227,Add filters above forms in wp-login.php,,Administration,3.0,normal,normal,Awaiting Review,enhancement,new,has-patch,2010-05-03T13:25:58Z,2013-01-22T02:00:35Z,"Sometimes I need more descriptive text to have above forms on wp-login.php (login, register, lost password).

This patch add filters above those forms.

Example usage:

{{{
function above_login_form_filter() {
	return '<p class=""message"">Tip: If you forgot your password, go to <a href=""wp-login.php?action=lostpassword"">Lost Password</a> page</p>';
}
add_filter('above_login_form','above_login_form_filter');
}}}


",dimadin
16512,Add hook after set_current_screen(),,Administration,3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-02-10T02:24:56Z,2011-02-10T03:00:55Z,"There needs to be a hook after {{{set_current_screen()}}} as it does a lot of work setting up the {{{$current_screen}}} global.. I'd hate to have to repeat it in {{{admin_init}}} as that's the last generic hook before {{{load-$pagenow}}}.

Patch adds new hook {{{admin_loaded}}} after {{{set_current_screen()}}}",ptahdunbar
14126,Add hook for message on admin-header in h1-privacy,,Administration,,normal,normal,Future Release,enhancement,new,needs-refresh,2010-06-28T08:35:10Z,2010-10-28T08:46:46Z,"Add a hook for add a message inside from h1 in admin-header.php, same as privacy message in WP 3.0, see example images: [http://drp.ly/1glQ2G]
I think, its great for the UI and create messages about all sites in backend. I change also the ID in class, no redunace on use this style.
Please see the files and sorry for my bad english.",bueltge
16204,Add hooks to enable access to pages in the admin when the menu layout has been changed by plugin,westi,Administration,3.1,normal,normal,Awaiting Review,enhancement,reviewing,has-patch,2011-01-12T16:31:33Z,2011-01-15T08:54:45Z,"This patch and ticket is a follow on to tickets #16048 and #16050 and indirectly related to this discussion on hackers: http://lists.automattic.com/pipermail/wp-hackers/2011-January/037129.html

This patch simply adds the following hooks, all within /wp-admin/includes/plugin.php.  

 - menu_page_url
 - admin_page_parent
 - admin_page_title 
 - plugin_page_hookname 
 - user_can_access_admin_page

The patch does not attempt to unravel the many early exits of the various functions instead it simply redundantly adds the hooks at each exit point. As such it's backward compatibility can be reviewed simply by viewing the code.

The use-case for this patch is when the menus are not exactly in the format expected by WordPress (but instead desired by the client) it can sometimes take hours of trial and error to get the permissions to allow users access to the menus they should be allowed access to. 

For example, if the first submenu page for a menu page is removed from the menu, even when it makes logical sense to the user WordPress currently does not allow that menu option to be viewed. These hooks would give plugin developers the ability to modify the menus and still enable users access to the pages they need access to.",mikeschinkel
16105,Add info re mobile apps to admin,isaackeyet*,Administration,,normal,minor,Future Release,enhancement,accepted,dev-feedback,2011-01-05T11:54:59Z,2013-04-17T01:14:56Z,"Not sure if it belongs in Tools, or in Writing Settings (or whatever that shakes out to be when we redesign settings), or what, but there should be a screen somewhere in the admin that lists/links all the mobile apps, probably in same area as Press This is promoted. ",jane
20007,Add option for new user registration notifications,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-02-10T06:15:35Z,2012-11-22T03:36:08Z,"This patch adds an single checkbox option to WordPress's Settings > Discussion page, allowing users to quickly toggle new user registration notifications/emails on or off.


While the notification function is currently pluggable, allowing non-technical users to easily toggle this feature themselves is both intuitively simple, and should prove generally advantageous to the community.",Veraxus
13005,Add plugin hook for ajax-tag-search,westi*,Administration,,normal,normal,Future Release,enhancement,accepted,has-patch,2010-04-14T20:21:50Z,2013-05-10T12:44:02Z,I would like to have a new plugin action hook added in the ajax-tag-search section of wp-admin/admin-ajax.php,jimmcq
19247,Add post type and taxonomy to admin body class,,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-11-15T08:19:35Z,2013-04-14T10:03:13Z,"I often have a need for targetted CSS selectors based on the current screen's post type (eg. to hide unwanted UI elements), so I usually end up adding `post-type-{$post_type}` with the `admin_body_class` filter. It'd be nice if this was in core.",johnbillion
20928,Add regular-text style to textareas,,Administration,,low,normal,Awaiting Review,enhancement,new,has-patch,2012-06-12T20:13:43Z,2012-06-12T20:14:38Z,The `regular-text` class style is only applied to input elements. It would be nice to get this on textareas too so my textareas are the same width as my single line text inputs.,johnbillion
21667,Add some user agent to wp_is_mobile,,Administration,3.4.1,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-08-23T12:35:29Z,2013-05-07T18:45:53Z,"Hello,

I've run some test with the help of the twitter/G+ community on wp_is_mobile and found some mobile browser that don't pass the test. 

You can see the test here : http://www.inpixelitrust.fr/blog/wp_is_mobile/

I was able to get the user agent of 3 of those which don't work : 

HTC sensation z710 4.0.3 native browser (UA:  Mozilla/5.0 (X11;Linux x86_64; HTC/Sensation/3.32.162.11; fr-de) 
AplliWebkit/534.24(KHTML,like Gecko) Chrome/11.0.696.32 Safari/534.34 )

BlackBerry Playbook (Ua Mozilla/5.0 (PlayBook; U; RIM Tablet OS 2.0.1; en-US) AplleWebkit/535.8+ (KHTML, like Gecko) Version/7.2.0.1 Safari/535.8+ )

Could be great to add those to the UA sniffing :)

",inpixelitrust
15796,Add spacing in the menu between 59 and 60 to allow menu items to appear above appearance,,Administration,3.1,normal,normal,Future Release,enhancement,new,,2010-12-13T14:12:51Z,2011-01-06T12:44:41Z,"I would like to place a menu item above appearance however the spacer is directly above the Appearance menu item at 60, the spacer is at 59, just a simple request to appropriate more space that is empty, 55 for the spacer and keep the appearance 60 giving 56,57,58,59 for add_menu items above 60

",Frumph
11469,Additional Admin UI hooks / filters,,Administration,2.9,normal,normal,Future Release,enhancement,new,has-patch,2009-12-17T05:54:04Z,2010-12-13T12:43:33Z,"Some might classify this as overkill, others as making Wordpress as completely extendable as people want it.

I'd like to propose the addition of numerou hooks to the Wordpress core Admin UI which would allow the addition of UI elements outside of the current constraints, such as meta boxes. 

If that doesn't make sense, I have an example to illustrate:

Given the ""Subtitle"" example from http://digwp.com/2009/10/ideas-for-plugins/, there would be a new hook named ""edit_post_form_after_title"" (or something along those lines) which would be placed directly after the post title is displayed on the screen and allow a plugin developer to insert a text field for a subtitle directly below the title field. See the attached patch.",johnl1479
10652,Additional arguments required for page_template_dropdown,,Administration,2.8.4,normal,trivial,Future Release,enhancement,new,has-patch,2009-08-19T17:29:05Z,2010-08-13T12:23:56Z,"As a plugin/theme developer, it would be really useful to be able to call the page_template_dropdown function with a parameter string similar to [http://codex.wordpress.org/Template_Tags/wp_dropdown_pages wp_dropdown_pages].

For example, the current '$default' argument should accept a string of arguments where:

- 'selected' is the selected template (replaces the current $default)[[BR]]
- 'echo' can be set to 1 to return instead of output[[BR]]
- 'name' will set a name/id for the menu[[BR]]

This would make it easier to create plugin/theme options where you could select which templates you want to use for different content.

At the moment it is possible to do this by replicating and adapting this function but I think it would make more sense to use the same multi-parameter argument as [http://codex.wordpress.org/Template_Tags/wp_dropdown_pages wp_dropdown_pages] and [http://codex.wordpress.org/Template_Tags/wp_dropdown_categories wp_dropdown_categories] and include it in core?",husobj
6822,Admin colors should be per-blog,ryan,Administration,2.5,normal,normal,Future Release,enhancement,new,,2008-04-23T02:07:08Z,2010-03-25T05:58:52Z,"When shared user tables are used, changing the colors for one blog should not change it for all.",matt
11515,Admin needs standardized way of handling messages (notices) displayed to the user,,Administration,3.0,normal,normal,Future Release,enhancement,new,,2009-12-19T19:53:03Z,2013-03-15T23:45:50Z,"If you try to upload a media item under Media > Add new without an uploads directory, you get the following vague error message:

{{{
Error saving media attachment.
}}}

If you try instead to upload from the post edit page, you get a much more helpful message:

{{{
Unable to create directory /path/wp-content/uploads. Is its parent directory writable by the server?
}}}

In each case, the root error is the same, but the second error message points the way to a solution.  Even if the user doesn't know herself what that message means, it's a message that provides the necessary information to someone else who does and is trying to help the user. The first message is completely useless, as it states only what we already know: something went wrong.

The reason Media > Add new doesn't offer a helpful message is that the error is generated on one page request, and ''then'' the user is redirected to another page.

We need a standard, cross-page-load way of conveying messages in admin.

I've thought of a few possible ways of doing this:

 * Define and use a standardized set of error codes and associated error messages.  This is similar to what happens currently on many pages: the unhelpful ""Error saving media attachment."" appears when the message argument is set to ""3.""  What I'm suggesting would use a common set of message codes across the admin and be much more detailed.  So the above situation would instead produce a message like ""Unable to create the uploads directory.""
 * Save error messages to a cookie.  Unlike the previous method, this would allow messages to be made particular to their event.
 * Have some kind of user messaging stack.  New messages would be pushed into a user's stack (stored in usermeta) and popped off after a certain time, or when read, etc.  This has the advantage of lasting across sessions and browsers and being usable for other applications, such as PMs between users. 

What do you think?",filosofo
10726,Admin notifications for more than 1 email,,Administration,2.8.4,normal,normal,Future Release,enhancement,reopened,,2009-09-05T02:18:51Z,2013-01-03T05:59:29Z,"Please allow admin notifications to go to more than 1 email address. It could be as simple as allowing a comma-separated list.

Better yet, allow sending '''admin''' notifications to all people in the '''administrators''' role.",novasource
18769,Admin should not break if URL changes,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2011-09-24T22:58:42Z,2012-06-06T01:02:30Z,"We manage a lot of users who have WordPress blogs, and probably the number one user support request we have to field comes out of this situation:

1. User decides they want to move their WordPress,
2. They move the folder to a new URL,
3. Their admin page stops working, because it still had the old URL hard-coded.

This is silly and should be fixed.",AmbushCommander
19278,Allow WP_List_Table ::get_bulk_items() to receive a nested array and output optgroups,,Administration,,normal,minor,Awaiting Review,enhancement,new,,2011-11-17T17:25:37Z,2011-11-17T21:38:59Z,"I'm just putting this out there as a possible enhancement to the WP_List_Table... would like feedback as to whether anyone else would find it helpful. If so, I'm more than happy to write up a patch for this.

I think it may be useful to be able to pass a nested array to `WP_List_Table::get_bulk_actions()` and have it output the options within the subarray in an `<optgroup>`. My specific use case is in applying meta fields to a custom table. I would like to be able to define something like this in my `get_bulk_items` function:

{{{

function get_bulk_actions() {
	$actions = array(
		'delete' => 'Delete',
		'outofstock' => 'Mark out of stock',
		'applytags' => array(
			'label' => 'Apply tags to products',
			'actions' => array(
				'featured' => 'Featured',
				'sale' => 'On Sale'
				)
			)
		);
	return $actions;
}

}}}

and have the output look something like this:


{{{
<select name=""action"">
	<option value='-1' selected='selected'>Bulk Actions</option>

	<option value='delete'>Delete</option>
	<option value='outofstock'>Mark out of stock</option>
	<optgroup label=""Apply tags to products"">
		<option value='feature'>Featured</option>
		<option value='sale'>On sale</option>
	</optgroup>
</select>

}}}

A very minor feature, and possibly too fringe of a use case to bother with. But I've worked on a couple projects now where being able to specify markup like that would have made that screen more user-friendly. Any thoughts?",goldenapples
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,has-patch,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
7723,Allow filtering by author on Manage > Posts,,Administration,,normal,normal,Future Release,enhancement,reopened,,2008-09-10T19:59:37Z,2011-12-19T18:04:36Z,"In versions of wp before 2.5 you could select an author from a dropdown on MANAGE > POSTS to see only posts owned by that author. This was very useful for quickly sorting posts and is absolutely necessary when you have editor users without  the 'edit_users' capability, as unlike admin users (most of us) they don't have access to the 'users' tab and thus have no way to see the manage screen sorted by user. The manage screen sorts by user simply by adding ?&author=$id in the url, but for users without access to the 'users' tab, even author id's are innaccessible. 

In the #wordpress-dev irc channel ryan boren expressed that the filter was removed because in some cases there were too many users in the system and the resulting dropdown was slowing down pageload time and ruining user experience. This is a paradox, because the more users your system has the more likely you are to need this filter. 

Wordpress needs to support filtering by author somehow if it wants to be a serious multi-user platform. Our editors are pulling out their hair.

My personal opinion is that the dropdown select should be reinstated. Filters should be added to the list such that only users who can post are listed (other users have no use in the Manage > Posts screen), as well as to show only users with at least 1 post. This should avoid slowing down pages for installations where most users are 'subscribers', which would otherwise mean all open-registration blogs would have hugely long lists. 

Given those two filters, I think that anyone who still has load-time problems should deal with their problem themselves using a plugin. It should be easy to remove the filter dropdown if you don't want it using a plugin, as well as to further filter the authors shown to reduce their number. 

Any installation with that many users deserves the option of deciding if they want the pulldown or not, and I think many would choose to keep it even if there are problems because it is so incredibly useful in filtering through hundreds of users worth of posts. 

(Consider: the full categories list is shown, even if there are hundreds, despite the fact that this has the same effect on performance as many authors does). 

Also in IRC Matt M proposed that some kind of text box + ajax to predict which author you mean could be used for this purpose. I think that is a great idea but would take a lot more work than what I propose (the work for hte pulldown is already done and the old functions are still there, all that's needed is to add filtering and re-work it into edit.php). It could also be used in the 'Users' context for search though, so it could be worth the effort. ",jeremyclarke
18504,"Allow filtering of ""Add New [Post Type]"" URL on edit.php",,Administration,3.2.1,normal,trivial,Awaiting Review,enhancement,new,has-patch,2011-08-24T00:54:56Z,2011-08-24T12:01:54Z,"I've recently attempted to use add_filter('admin_url','filter_function'), only to discover that there are many URLs in the admin area that are not passed through the admin_url() function. While there may be a good reason for that to happen, I figured it wouldn't hurt to check the possibility of changing one of them.

The one URL I haven't been able to find a workaround to is the ""Add New [Post Type]"" button on the edit.php screen, on top the post table, which also appears when editing an existing post. From what I gather, it is generated in the following file/line [http://core.trac.wordpress.org/browser/trunk/wp-admin/edit.php#L189] for the first case, and on this one [http://core.trac.wordpress.org/browser/trunk/wp-admin/edit-form-advanced.php#L198] for the second case.

Fixing this, assuming it's possible without compromising a functionality I'm not aware of, would be as simple as replacing this:

{{{
<a href=""<?php echo $post_new_file ?>"" ...
}}}

And this:

{{{
<a href=""<?php echo esc_url( $post_new_file ) ?>"" ...
}}}

With this:

{{{
<a href=""<?php echo admin_url($post_new_file); ?>"" ...
}}}

And this:

{{{
<a href=""<?php echo esc_url( admin_url($post_new_file) ) ?>"" ...
}}}",tbuteler
4221,Allow pure wp_nonce_url urls,,Administration,2.3,normal,normal,Future Release,enhancement,reopened,close,2007-05-04T04:29:33Z,2012-08-15T03:44:11Z,"wp_nonce_url sends the url through wp_specialchars, which converts {{{&}}} into {{{&#038;}}}

That's great for standards-compliant links, but if you're trying, for example, to use a nonce in a url passed to JavaScript, it can cause problems, as at least Firefox chokes when JavaScript requests a url with {{{&#038;}}} instead of {{{&}}}. 

My patch allows you to toggle off the wp_specialchars; the default behavior remains the same.",filosofo
23162,Allow to call parent_dropdown() for an arbitrary post,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2013-01-09T22:48:08Z,2013-01-09T23:24:26Z,"parent_dropdown() can no longer be used outside of the loop, such as within the wp-admin, because an E_NOTICE will be emitted in template.php:683 since $post is null. 

A simple fix is to change the function argument declarations from 

{{{
function parent_dropdown( $default = 0, $parent = 0, $level = 0 ) {
}}}
to:
{{{
function parent_dropdown( $default = 0, $parent = 0, $level = 0, $post = array() ) {
}}}

and then also change:
{{{
$post = get_post();
}}}
to
{{{
	if ( empty( $post )) {
		$post = get_post();
	}	
}}}

which would allow a WP post object to be passed into the function.

Sorry I am unable to provide an SVN patch.
",charliespider
24071,Allow users to set three columns on Add Post/Add Page screen,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2013-04-12T23:53:07Z,2013-04-14T06:02:48Z,"These days, an increasing number of people have desktops or laptops with high-resolution monitors. On such monitors, the layout of the WordPress Add Post/Add Page UI is not optimal. 

On, say, a 1920x1080 screen, the first column, containing the TinyMCE editor and title field, occupies the vast middle of the screen, with the WordPress chrome at the left and Column No. 2 at the right. 

If a user has chosen to show additional fields not shown by default - like Excerpt, Send Trackbacks, Custom Fields, Discussion, Slug, and Author - these all appear below the TinyMCE editor, out of sight on a widescreen. Take a lot at the screenshot attached to this ticket. 

Showing two columns by default is perfectly fine, but those with widescreen displays would benefit from gaining the ability to change the number of columns in the screen layout to three without needing a plugin, or having to hack the admin. This doesn't seem like it would be too difficult of an option to add to core. 

Allowing three columns to be set would permit users with hi-res monitors to easily make better use of the screen real estate: all of the available fields would be visible without the need for scrolling. 

Many users, incidentally, utilize fixed-width themes on their sites, and if the theme is sending its CSS to the post editor in order to enable the user to accurately preview what the text will look like (truer WYSIWYG), having a really wide post editor is especially useless. 

I've attached a three-column mockup I made in KolourPaint. The mockup shows what a three-column post editor layout could look like. As you can see from the mockup, all available fields in WordPress Core fit into the viewport. ",avcascade
23738,Audit our secondary button uses,,Administration,trunk,normal,normal,Future Release,enhancement,new,,2013-03-11T17:31:26Z,2013-05-16T12:12:03Z,"helen pondered in #wordpress-ui that maybe the ""apply"" button in the Screen Options dropdown should be a primary button. There's a good argument to be made that when this panel is down, that ""apply"" button is your new primary.

We should do an audit of our buttons to see if there are any other cases where we could make an action or a temporarily primary action more obvious by using the primary button style.",markjaquith
17704,Automatically enqueue necessary scripts when custom meta boxes are used,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2011-06-06T05:53:43Z,2011-11-08T21:30:11Z,"Right now if you add_meta_box() to a custom page, like using add_submenu_page() and then calling do_meta_boxes(), the screen options and post box JS don't work automagically. They should.",mitchoyoshitaka
23577,Better Date Fields,,Administration,3.5.1,normal,normal,Awaiting Review,enhancement,new,close,2013-02-21T11:52:59Z,2013-02-22T16:15:20Z,"I think the Dates should be prettified (i.e 2 days ago etc) and the last state put in front i.e (""Published 2 days ago"" rather than ""2 days ago Published"")

As I think it would make it even more user friendly to used.

I have attached a Image showing what I mean.",jscampbell.05
17766,Browser update dismiss button lacks non-JavaScript fallback,,Administration,3.2,normal,minor,Future Release,enhancement,new,,2011-06-11T11:20:58Z,2011-08-27T15:42:14Z,The 'Dismiss' button in the browser update dashboard box doesn't do its thing without JavaScript enabled.,johnbillion
19691,Cannot modify admin messages for /wp-admin/edit.php,,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-12-30T02:10:01Z,2013-02-26T17:51:13Z,"The admin console messages output on line `264` of WordPress 3.3's file `/wp-admin/edit.php` are not filterable. This causes problems when added row actions need to HTTP GET from to WordPress to modify a post and then display an appropriate message complete with a revert link ''(like the ""Trash"" link does.)''

An example use-case could be for a custom post type used for both quotes and invoices where a row action might be ''""Convert Quote to Invoice""'' where you'd want a message and link displayed at the top of the admin after similar to this:

- ''Quote #{$post_id} converted to Invoice. __Revert__''

Currently the only way to accomplish this is to pick hooks before and after the messages are output and use PHP's output buffering;  clearly not a ''""best practice""'' approach.

In order to address this I'm proposing an '''`'admin_messages'`''' filter hook to run just before the messages are output:

{{{
$messages = apply_filters( 'admin_messages', $messages );
}}}

However, since messages are output in numerous locations in the WordPress admin it seemed best to add the hook in every location where messages are output, which is what my patch does.  Thus a hook can look at `$pagenow` or `get_current_screen()` to decide it is needs to do anything.

Also while searching for places in the admin code that echo messages I found `$messages` are sometimes an array of HTML where the entire array is echoed and other times the $messages are an array with an index passed via `$_GET` and only one message will be displayed. For those cases I created another hook '''`'admin_message'`''' ''(note that this hook name is singular)'':

{{{
$message = apply_filters( 'admin_message', $message, $messages, $_GET['message'] );
}}}

I really only found a specific need for `/wp-admin/edit.php` today, but it seemed that it would be better for consistency if all messages were made hook filterable. That's why I created a larger patch when all my use-case needs is one new line.  

Looking forward to your feedback.
",mikeschinkel
23230,"Change hyphen in front of ""Draft"" to em dash",,Administration,3.5,normal,normal,Awaiting Review,enhancement,new,,2013-01-18T09:08:47Z,2013-01-25T20:08:00Z,"When a post/page/etc. is saved as a draft there is a ""- Draft"" appended after the title in the overview list in the dashboard.

Rather than using an hyphen (-) it should be an em dash (—) and ideally it should be translatable as the typographic rules for dashes varies with languages.

Rather than ""- Draft"" it should say ""— Draft""",kkalvaa
17360,Change text from Options to Settings,,Administration,3.2,normal,minor,Future Release,enhancement,new,has-patch,2011-05-09T23:31:56Z,2011-12-06T04:47:31Z,"In various admin screens, change test from options to settings.

",michaelh
12350,Check folder permissions before uploading file,,Administration,,normal,normal,Awaiting Review,enhancement,reopened,,2010-02-23T18:41:57Z,2011-10-09T14:54:04Z,"It would be nice if wordpress - or especially the media-upload module would check if its able or has the necessary file permissions to create the upload directory.
",not2bug
18860,Chromeless metaboxes,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-10-05T14:28:14Z,2011-10-06T13:39:07Z,"On the post editing screen, the title and editor portions are just conditionally echoed based on post_type_supports().

Because of this, you can't add anything between them or above them, without using JavaScript.

The proposal:

 - wrap them in callbacks and inject them through add_meta_box()
 - add a $show_handle parameter to add_meta_box()

{{{$show_handle == false}}} would mean that the handle around the box would be invisible. This would mean that you wouldn't be able to drag the title and editor boxes around, which is ok, but you would be able to re-order them in PHP.",scribu
17852,Collapsed menu fly-out headers should be clickable,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2011-06-20T03:13:00Z,2012-03-07T20:59:48Z,"When you hover over a collapsed admin menu icon, the extension of the icon is not clickable, only the submenu screens are.

This is the same behavior in 2.7 to 3.1, but I think it should be considered.",nacin
15782,Consolidate header Javascript,,Administration,3.1,normal,normal,Future Release,enhancement,new,has-patch,2010-12-12T05:45:53Z,2011-03-24T08:48:43Z,"As a followon to #15781

Currently there is a block of Javascript required on all admin pages, this is stored directly within admin-header.php, and iframe_header(). Unfortunately, when someone changes/adds code to one, the other is not always updated.

This inline Javascript should be moved to a function and printed on a header action in order to reduce code duplication and prevent future issues.",dd32
7797,Consolidate iframe headers,,Administration,2.7,normal,normal,Future Release,enhancement,new,,2008-09-26T23:35:46Z,2012-10-30T16:40:45Z,"Currently iframes are being used in multiple locations (ie. thickbox, plugin re-activation, etc) and in each case, theres generally a function for the header and footer, or its inline.

What i suggest, Is to create a standard set of admin templates which print the headers out for the pages.

And a side suggestion:[[BR]]
As an added bonus, It should probably be possible to automatically detect if it was loaded via thickbox ($_GET[TB_iframe] shouldnt be set) and serve the correct header (ie. Full admin side menu if no thickbox)",DD32
19898,Create a is_login() function similar to is_admin(),,Administration,3.3.1,normal,normal,Future Release,enhancement,new,dev-feedback,2012-01-25T23:13:43Z,2013-02-12T15:34:47Z,"It would be useful for developers to have better detection of being on the wp-login.php and wp-register.php pages. Sure, this can currently be done by using the $pagenow global variable but having a similar function like is_admin() would make things easier/cleaner.

One use case:

-Using a hosted javascript file but then requiring SSL (FORCE_SSL_LOGIN).    

{{{
#!php
function javascript_init() {
    if ( $pagenow == 'wp-login.php' || is_admin() )
        return;

    wp_deregister_script( 'jquery' );
    wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js');
    wp_enqueue_script( 'jquery' );
}
add_action( 'wp_print_scripts', 'javascript_init' );
}}}


Proposed solution:
Create a new function that does all the checking. 
{{{
#!php
function is_login() {
    return in_array( $GLOBALS['pagenow'], array( 'wp-login.php', 'wp-register.php' ) );
}
}}}",dcowgill
18569,Custom header images should deletable from the Custom Header page,danielbachhuber*,Administration,3.3,normal,normal,Awaiting Review,enhancement,accepted,has-patch,2011-09-01T18:30:22Z,2011-12-06T05:11:52Z,"Currently, if a theme supports custom header images and a user uploads one of their own images, they need to go to the Media library in order to delete the image. This is not intuitive, there's no text in the admin explaining this step, and it's a problem if they want to rotate randomly through their custom header images.

It would be nice of the user could delete images they've uploaded from the Custom Header page directly.",danielbachhuber
18641,Date and post status are the wrong way around in post lists,,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-09-11T20:31:41Z,2011-09-11T20:35:13Z,"On a post listing screen, a draft post that has been modified within the last 24 hours will show the following in the 'Date' column:

{{{
X hours ago
Last Modified
}}}

This doesn't make a lot of sense. Better would be:

{{{
Last Modified
X hours ago
}}}

Ideally the table cell should be treated as a whole to aid l10n and to improve the English presentation.",johnbillion
15790,Date column for Scheduled posts should also state the time,,Administration,3.0.4,normal,normal,Future Release,enhancement,new,,2010-12-13T04:37:07Z,2013-01-22T17:33:17Z,"For obvious reasons, for scheduled posts, it's very useful to see not just the date but the time, but the wp-admin posts interface does not show it - only the date.

It'd be very useful to see the time as well.

Thanks.",archon810
17703,Decrement update count bubbles when you update things,koopersmith,Administration,,normal,trivial,Awaiting Review,enhancement,reviewing,has-patch,2011-06-06T01:30:31Z,2011-08-16T01:02:13Z,"This can be done via some JavaScript, including for the bulk updater case, and it looks pretty cool. :) Video attached, as well as a first-pass patch.",mitchoyoshitaka
18199,Deprecate IE7 in the Admin,,Administration,,normal,normal,Future Release,enhancement,new,,2011-07-21T21:05:15Z,2013-04-26T01:27:26Z,"markjaquith:
> Everyone hates IE7. It’s insecure. Let’s make it go away. Also, dropping IE6 didn’t give us much beyond goodwill, because most of the hacks we needed for IE6, we also need for IE7. So we could actually clean up our CSS a bit if we dropped IE7.",nacin
23108,Deprecate add_object_page() and add_utility_page(),,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2013-01-03T02:47:52Z,2013-05-16T11:55:27Z,"`add_object_page()` and `add_utility_page()` are not used in core and are just wrappers which pass `$_wp_last_object_menu++` and `$_wp_last_utility_menu++`, respectively, to `add_menu_page()`.

This can lead to a conflict with other menu items added by plugins, see #23095.",SergeyBiryukov
18030,Die with HTTP status 403 forbidden when capability check fails in wp-admin,,Administration,,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-07-07T22:42:29Z,2011-07-07T22:42:29Z,"The default HTTP status code of [http://core.trac.wordpress.org/browser/tags/3.2/wp-includes/functions.php#L2740 wp_die()] is a [http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1 500 Internal Service Error] communicating !WordPress encountered an ""unexpected condition which prevented it from fulfilling the request."" Multiple pages trigger wp_die() in wp-admin when a minimum user capability is not met (e.g. Cheatin', uh?). In these cases we know why the request failed and could better communicate the failure in the HTTP status code. We want to communicate the same request should not be repeated without a modification to permissions. We also would like to shift the error class from a server error (5xx) to a client error (4xx).

HTTP status [http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.4 403 Forbidden] communicates the authorization failure in HTTP status form. The server can be reached, we understood your request, but we declined access to the page.

A !WordPress install could catch this unique status code in its wp_die_handler and suggest further the viewer contact the IT department, admin, etc. for additional permissions.

Patch attached for wp-admin/edit.php. If the general idea behind the change is acceptable I can broaden the patch to other occurrences of wp_die() for failed capability checks in wp-admin.",niallkennedy
8420,Disable error redirects when in DOING_AJAX,kapeels*,Administration,2.7,low,minor,Future Release,enhancement,accepted,has-patch,2008-11-29T00:28:10Z,2010-11-28T11:30:25Z,"If a DB/install error occurs in admin during ajax requests (like autosave), the response shouldn't return the whole redirected page, see $ATT (admin-ajax-install-trigger.png). If something goes awry and we're DOING_AJAX, an error message that could fit inline would be better.",janbrasna
17470,Display warning when editing the page_for_posts page,,Administration,3.2,normal,normal,Future Release,enhancement,new,has-patch,2011-05-17T06:27:13Z,2012-11-19T16:33:34Z,"I recently ran into a situation where someone was very confused by the page_for_posts setting and why their page edits were not being respected. It occurred to me that this feature is not terribly well described in the UI for users that don't already understand what it does.

The attached patch will simply add a warning as an admin_notice when you are editing the page that is specified as the page_for_posts page.

I used a class of error for the admin_notice, but updated might be more appropriate.",alexkingorg
20345,Don't show Author column on posts screen for single author sites,,Administration,3.4,low,normal,Future Release,enhancement,new,has-patch,2012-04-02T20:42:56Z,2012-04-18T20:39:05Z,"The 'Author' column on post listing screens is a bit pointless for single-author sites.

To simplify this screen, I think it would make sense to remove this column for sites which only have one user, and possibly also remove it for sites with more than one user but still only one author (ie. `!is_multi_author()`).

I'm not sure how best to handle the column's visibility and a user's column visibility preferences at the point when a site goes from being a single-author site to a multi-author site.",johnbillion
12890,Draft and scheduled pages not listed in the Parent dropdown,,Administration,3.0,normal,normal,Future Release,enhancement,assigned,,2010-04-07T11:59:55Z,2012-07-03T14:15:23Z,"Draft and scheduled pages are not available as choices in the Parent dropdown of the Attributes module.

This is very similar to ticket #8592, regarding private pages. I'm hoping the fix might be simpler for drafts and future posts.",rooodini
9604,Edit screens expire,,Administration,2.8,normal,normal,Future Release,enhancement,new,,2009-04-21T06:35:08Z,2009-06-13T02:02:48Z,"Steps to reproduce:
1) Open an edit post (or page) screen
2) Take your browser offline for 24 hours
3) Put the browser back online
4) Edit the post, type a lengthy, thoughtful, dramatic entry
5) Click save draft / publish as you prefer

Expected result: Your poetic prose is committed to infallible digital memory.

Actual result: You're told ""Your attempt to edit blah has failed."" Press the back button and likely see the previous version of your post. Your latest prose exists now only in your memory.

Technical details: I think the nonce expires, so the post screen becomes invalid after a while.

Proposed solution: Add a javascript timeout to warn the user that the edit screen has expired. Provide a mechanism for the nonce to be updated.",chmac
6479,Encourage people to change default tagline,markjaquith,Administration,2.5,normal,normal,Future Release,enhancement,assigned,,2008-03-30T19:09:41Z,2013-01-22T00:42:25Z,"A lot of people don't change the default tagline, especially if using a theme that doesn't display it.  But it still displays in their feed.  We should check to see if they still have the default tagline and if so, put a little contextual help in Settings - General that (nicely) encourages them to change it.

Props to Chris Silver Smith for bringing this issue up at WordCamp Dallas.",markjaquith
16853,Error 500 when a user has too many sites,PeteMall*,Administration,3.0.1,normal,minor,Future Release,enhancement,accepted,,2011-03-14T11:15:57Z,2012-02-13T09:36:58Z,"'''My installation'''
[[BR]]
3.0.1 multi-site installation with more than 7500 blogs, with one user each. I also have one moderation user that can administer each of the blogs.
[[BR]]
[[BR]]
'''The issue'''
[[BR]]
In the admin interface, when I go to Super-Admin -> Users, and when I display the page that contains my moderation user, I get ""''An error (500 Internal Server Error) has occured in response to this request''"". The page tries to display all the sites administered by him (around 7500 of them), hence the error.
[[BR]]
[[BR]]
Updating to 3.1 didn't resolve the problem.
[[BR]]
[[BR]]
'''Recommended enhancement'''
[[BR]]
For each user in the list, display only a certain number of sites, with a possibility to see all of that user's sites, if needed.",luuzan@…
9931,Extra class for the wrap div's in custom-header.php,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2009-05-24T17:25:40Z,2010-08-13T11:41:15Z,"I'm using custom-header.php to complete the options section for my own themes but for some themes I only need the image section to be visible>

Would it be possible to add an extra class reference to the <div class=""wrap""> sections? This would make it possible for me (and others) to ''not'' display the irrelevant sections (and thus avoid questions from users about why changes aren't reflected).

My suggestions is to go for something like this:

{{{
<div class=""wrap custom-header-text"">
<div class=""wrap custom-header-image"">
<div class=""wrap custom-header-reset"">
}}}

And perhaps that:

{{{
<div class=""wrap custom-header-text"">
<?php screen_icon(); ?>
}}}

needs to be changed into something like:

{{{
<?php screen_icon(); ?>
<div class=""wrap custom-header-text"">
}}}

to keep the icon available when you choose to hide the text section.

Cheers :)",stgoos
22650,Filter the Gravatars on credits.php,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-11-30T08:39:58Z,2012-11-30T08:51:59Z,"All Gravatars should be generated by get_avatar() or at least run through apply_filters('get_avatar', $avatar) for the sake of extensibility.

Related: #22329",miqrogroove
21034,Flyout Menu on Backend doesn't Loades Untill Whole Page is Loaded,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-06-21T09:43:55Z,2012-06-25T05:30:06Z,"I have noticed this ever since the flyout menu was introduced. Menu items on flyout menus is not shows until the whole page gets loaded. For high speed connection its not a problem but it gets annoying people who connected in dial up (last week my ISP was down so i had to work with dial up for couple of days).

So, we could make the flyout menu items css/js to load on header so it doesn't wait for to load the whole page and make the backend accessible to and less annoying to low speed users.. For testing it you have to log into backend with low speed connection. If you need proof i can make a video with my dial up. Just let me know.

BTW: What i see on firebug that the css for flyout menu loads on header so i don't really find out what causes the menu to not showing on hover until the page loads.",prionkor
22086,"HTML5 and cellspacing=""0"" in admin pages",,Administration,3.4,normal,minor,Awaiting Review,enhancement,new,dev-feedback,2012-10-03T19:37:25Z,2013-02-19T20:46:43Z,"There are several instances where generated table content uses 'cellspacing=""0""' in the admin areas of WordPress.

The W3C validator (albeit experimental) states that this parameter should be dropped and CSS used instead for HTML5 compliance.

I think the patch I'm going to attach in a moment will fix these validation issues.",MattyRob
21856,Hide category selection when no posts are available,,Administration,3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-09-09T14:38:10Z,2012-11-13T20:18:02Z,"Just an idea that popped up while testing #21015. The months dropdown gets hidden when there are no posts available, so why not hide the category dropdown list too?

Might be a bit confusing though, when certain elements are not showing when you first start using the screens that these elements are used. But showing something that does not do what it looks like is even more confusing, I think.",CoenJacobs
22139,Hooks for wp-login customization,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-10-09T14:18:07Z,2013-01-22T22:18:57Z,"I have an application that leverages wp-login.php as the login page (of course), however, the HTML on the wp-login.php doesn't have a way for my application to insert its navigational elements, branding, etc.

I propose the addition of two new action hooks: ''login_before_container'' and ''login_after_container'' which would come before and after the login div, respectively.  ",borkweb
18709,Hooks in user-new.php,,Administration,3.2.1,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-09-19T21:06:16Z,2013-04-19T11:38:49Z,"It would be nice to be able to enter extra metadata for users when manually creating them from the admin control panel. 

I assume it should be as simple as adding a new action, along the lines of the edit_user_profile_update one? 


",standardtoaster
14097,Idea for placeholder text,,Administration,,lowest,trivial,Future Release,enhancement,new,,2010-06-26T06:28:25Z,2013-01-22T17:40:03Z,"Placeholder text has a fatal flaw, in my mind: once the field is focused, that placeholder text is gone. This can be confusing, especially if you tabbed into that field or it was selected by default. You can actually use placeholder text instead of labels, for a minimalistic form layout, but only if you correct this flaw.

So here's a potential solution:

http://txfx.net/files/wordpress/labels/

It uses HTML 5's {{{placeholder}}} attribute (newest Safari and Chrome support it), with a jQuery plugin to handle that support for other browsers.

Thoughts?",markjaquith
19023,Images in Edit Comments break SSL,nacin,Administration,3.2.1,high,normal,Awaiting Review,enhancement,reviewing,dev-feedback,2011-10-21T11:19:43Z,2012-09-17T22:52:02Z,"In trunk, when I'm on my edit comments page, the SSL get's broken because of an attachment image that isn't served over SSL:

[http://uploads.yoast.nl/Comments-20111021-131843.png]",joostdevalk
17783,Inconsistent theme management screens,,Administration,3.0,normal,normal,Future Release,enhancement,new,,2011-06-13T12:32:26Z,2011-06-13T13:12:51Z,"On single-site you have tabs, while on multi-site you have an ""Add New"" button:

/wp-admin/themes.php (single-site):

[[Image(http://core.trac.wordpress.org/raw-attachment/ticket/17783/themes.png)]]

/wp-admin/themes.php (multi-site):

[[Image(http://core.trac.wordpress.org/raw-attachment/ticket/17783/ms-themes.png)]]

/wp-admin/network/themes.php (multi-site):

[[Image(http://core.trac.wordpress.org/raw-attachment/ticket/17783/ms-themes-network.png)]]",scribu
22183,"Input type=""email""",,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2012-10-13T19:01:18Z,2012-11-07T07:53:37Z,"Text inputs for email addresses were replaced with email inputs in [20168] but reverted in [20196] due to poor client-side validation by Chrome 17 and Firefox 10, however we've had input type=""email"" on the registration form since [18763].

We should:
 1. Test the current state of client-side validation.
 2. Either introduce email inputs in the admin area or revert [18763] depending on the results of point 1.

See http://core.trac.wordpress.org/ticket/17863#comment:25 for the email input validation issue.",johnbillion
24209,Install Themes/Plugins Custom Page Hooks,,Administration,3.5.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-04-28T03:04:05Z,2013-04-28T05:45:40Z,"Upon trying to add a custom page to the '''Plugins > Add New''' section for private plugins, I realized there wasn't a hook that allowed overriding the plugin_api call.

The custom tab on the page could easily be added via the ''install_plugins_tab'' filter, but in the '''class-wp-plugin-install-list-table.php''' class method ''prepare_items()'', there isn't a hook to override the api call.

I checked the functions for the themes and it's the same thing, so I've added the patches containing the proposed filters for both classes in order to help future customization of WordPress by developers.

Here's an example of the custom tab and the desired results via the hooks in a plugin:

[[Image(http://i.imgur.com/iF9gbMf.png)]]

These filters can also be used to prohibit clients from adding 3rd-party plugins for security & performance reasons and even limit them to only using a private Repository API.

Thanks!",amereservant
23432,Links in Setting pages to open in new window,,Administration,3.5.1,normal,minor,Awaiting Review,enhancement,new,has-patch,2013-02-09T15:26:25Z,2013-02-10T16:02:57Z,"Some links in the Setting Pages (General, Discussion, Permalink) pages open in same window, which sometime can be awful. [[BR]]
While the users can press cmd/ctrl + click and click the link to open it in new tab but If the user does not open the link in new window, options (which are not saved) will be lost and one have to go through them again.[[BR]]
Also links in the Edit Profile page and all the links in the help tab open in new window except a few.(so it is possible that users may just click it thinking them to alike other links which open in new window)[[BR]]
So a consistency will be there and ux can be a little better.",theadityajain
21132,"List tables' ""select all"" should let you really select all, regardless of screen options",,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-07-02T04:38:38Z,2012-07-05T15:13:48Z,"The select all checkbox in list tables selects all the items in your current view.  Usually what I really want is to select all the items on all the pages.

As a hack, I'll often leave the screen options setting for items per page on something really high, like 1,000.  Unfortunately this means the tables are often really slow for no benefit (most of the time I don't need them all).  A better solution would be a way to intelligently select all items without needing to show them on the page.

The best example of this that I know of is Gmail, which adds a line above the list of emails when you click the select all box that looks something like this: ""All 50 conversations on this page are selected. Select all 653 conversations in Spam"".  The second sentence is a link that, as expected, selects all of your emails that fit the current view, regardless of paging.  Screenshot attached.",evansolomon
20335,Make Default Post Listing Mode Filterable,,Administration,3.3.1,normal,trivial,Awaiting Review,enhancement,new,has-patch,2012-03-30T15:54:23Z,2013-02-08T07:32:35Z,"Inspired by [http://wordpress.stackexchange.com/q/34956/46 a question] on the WordPress Answers Stack Exchange.

By default, WordPress displays the post list in the admin as a list view.  There's an option to switch to an excerpt view that many people use and some would like to set this as the default mode.

Unfortunately, the default is hard-coded into WordPress and is not filterable.  I propose we add a basic filter to allow developers to override the default ""list"" setting for the view mode.",ericmann
21271,Make admin backend unit-tests friendly,,Administration,3.4.1,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-07-14T14:19:20Z,2012-12-11T13:12:31Z,"Recently I started writing unit tests for my plugins. Beside tests focused on functionality (where I directly call my plugin functions) I write some basic integrations tests, which should test that WordPress will call my function, pass data in expected format and recognize data returned from it. For frontend it is quite easy - theme API is well-defined, so I can write something like this:
{{{
public function test_something() {
	// add new post
	$post_id = wp_insert_post( array( ... ) );
	$this->assertGreaterThan( 0, $post_id );
	
	// go to post page
	$this->go_to( get_permalink( $post_id ) );
	
	// main loop
	$checked_post = false;
	while ( have_posts() ) {
		the_post();
		if ( $post_id == get_the_ID() ) {
			$checked_post = true;
			
			// test that content is modified
			ob_start();
			the_content();
			$result = ob_get_clean();
			$this->assertEquals( '...', $result );
		}
	}
	
	// make sure test above was executed
	$this->assertTrue( $checked_post );
}
}}}
Unfortunately this is not true for admin backend - there most of code is written directly at file level (not in functions and classes), so I would need to either duplicate this code in my tests (bad approach, because would have to monitor original code for changes), or test using whole file (either load it directly or use Selenium) - in this case test would be more complicated.

Therefore I logged this ticket, to start discussion how we can perform refactoring of admin backend to make it more tests-friendly, and how to test it more thoroughly. Most probably we would also need to modify the testing framework (e.g. introduce new `admin_go_to()` method).",sirzooro
14515,Make admin table content filterable by column,sirzooro,Administration,3.0.1,normal,normal,Future Release,enhancement,assigned,,2010-08-03T06:16:40Z,2011-10-21T09:15:42Z,"I would like to modify Author column on post list - add link to user's profile. Now the only way is to add it to 1st column or custom column, and optionally move it later using JavaScript. Therefore I ask to add new actions for default columns, which will allow to do this.

It may be also beneficial to implement this as a general hook which will be called on all columns, including custom ones.",sirzooro
8243,"Make draft pages to appear in ""recent drafts"" dashboard gadget",,Administration,2.7,normal,normal,Future Release,enhancement,new,has-patch,2008-11-16T11:08:50Z,2010-06-25T20:21:01Z,"In 2.7 beta 2, draft Pages do not appear in ""recent drafts"" dashboard gadget. It would be very nice to see draft pages there as well. Another option is to make it optional and allow one to select whether he/she wants to see draft pages in the gadget.
",asandler
15865,Make it easy to disable options / user settings,westi,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2010-12-17T17:52:29Z,2013-01-21T04:12:48Z,"We have a wonderful option white listing system.

The one thing it doesn't support is hiding the ui of core options if you don't want them changed.

We should have a generic way of doing this.",westi
21516,Make the entire .check-column the click target for the checkbox,,Administration,,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-08-08T03:34:38Z,2012-10-22T15:27:26Z,"Sometimes checkboxes are quite small. In various list tables, checkboxes are wrapped in a .check-column. Why not make the entire .check-column clickable, in case people (like me) miss?",mitchoyoshitaka
16165,Media Library Bulk Delete: Error in deleting...,nacin,Administration,3.1,low,normal,Future Release,enhancement,assigned,dev-feedback,2011-01-09T14:20:39Z,2012-11-07T20:17:43Z,"While Bulk Deletion, when a user gets the ""Error in deleting..."" message, there is no information given of how many elements have been deleted so far.

Let's say there was a bulk of N deletions, getting this error can mean up to N-1 items have been deleted already.

Same is the case if for some item, no permissions are granted to delete it. The number of successfully deleted items is missing as well.",hakre
20288,"Missing bottom border for bulk-actions checkbox th in wp-posts-list-table if current user can't ""edit_post"".",,Administration,3.3.1,normal,normal,Awaiting Review,enhancement,new,reporter-feedback,2012-03-23T10:04:20Z,2013-01-22T03:36:59Z,"If current user can't ""edit_post"" the bulk-actions checkbox isn't present but also the bottom border for th in wp-posts-list-table.

I think it can be fixed by modifying line 495 in class-wp-posts-list-table.php like so:

`<th scope=""row"" class=""check-column""><?php if ( $can_edit_post ) { ?><input type=""checkbox"" name=""post[]"" value=""<?php the_ID(); ?>"" /><?php } else { ?> &nbsp; <?php } ?></th>`",szaqal21
20956,Navigation changes: Posts/Pages,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-06-14T14:42:25Z,2013-01-22T03:30:06Z,"1. Explaining the difference between Posts and Pages to new users is time consuming and often frustrating. We've all done it, have our best/fastest version of the talk down pat, but it still takes longer than it should to get many new users to the point of understanding the difference.

2. Back in 2.7, when we set up the left navigation we put Pages at the bottom of the content nav section because in testing 2.5/2.6 so many people complained about accidentally clicking Posts/Pages by accident because they were close together in the old UI and both started with P (blame it on capital_p). Because of this, Pages falls below the less-frequently accessed areas of Media and Links, and people don't necessarily see it right away because they expect it to be higher up.

I've been testing out two changes to the left navigation aimed at reducing these two issues on my test blog for some time now, and have been using it during demos with both new and existing users to great success, so I think it's time to propose it for core.

Change 1: Change the Posts label to Blog. All Posts can remain as is, or could be reduced to just Posts, since the reason we added the All in the first place was that Matt thought it looked weird to have the same word shown twice. 

This change reduces the amount of time it takes me to get a new user really understanding the difference between posts and pages by about 75% (very informal testing, have kept track with about 30 new users by just keeping an eye on the computer clock to see how long it is before we move on). The dynamic blog/static site difference is much easier to grasp when they see that familiar word Blog instead of Posts because ""posting"" is an action that applies even to static content, and even posts are displayed in web pages (vs Pages).

Change 2: move Pages up the menu to sit below Blog, so the two most important content types are at the top. Since they wouldn't look similar (ha ha capital_p) there would be much less risk of accidental misclick based on letter shape (poor manual dexterity would not be affected, but in that case those people are already clicking the wrong things, right?)

I've attached a screenshot showing what the navigation would look like with these changes. ",jane
23091,Need to remove deprecated get_bloginfo('url') from _fix_attachment_links() function,,Administration,3.5,normal,normal,Awaiting Review,enhancement,new,close,2012-12-31T01:57:33Z,2013-01-29T21:51:19Z,"get_bloginfo('url'); is deprecated.
Should be home_url();",hexalys
22589,Network Admin + Ajax requests,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-11-26T09:12:18Z,2012-11-26T14:40:53Z,"Currently there is no Network admin based ajax handler, forcing plugins which exist solely within the Network Admin to either use `wp-admin/admin-ajax.php` or using the `load-{$page_hook}` hook to perform any actions.

This is primarily a problem when the plugin only includes code on a conditional such as `is_network_admin()`, which would be false for a `/wp-admin/admin-ajax.php` request, as a result, only the `load-{$page_hook}` option above is viable for those.[[BR]]
As a work around, plugins can include code on `is_network_admin() || DOING_AJAX` to allow the usage of admin-ajax.php.

Of course, the User Admin also suffers the same issue.

I didn't see any previous tickets, and kind of want to say the existing 'workaround' is appropriate, but recording it here so we can at least close it as wontfix if appropriate.",dd32
16031,New bulk actions hook missing catcher behavior,,Administration,3.1,normal,normal,Future Release,enhancement,assigned,,2010-12-29T20:31:04Z,2013-03-12T16:47:57Z,"The new bulk actions filter allows you to modify the bulk-actions arrays, but neglects to add the ability to handle the new custom actions. 

The fix is to simply add one new do_action() hook to the default case of each affected page (similar to the way 'wp_ajax_' handles custom ajax requests).

For example, the following might be added to users.php at line 285, immediately after <tt>default:</tt>

do_action( 'bulk_action-'. $wp_list_table->current_action() );",Veraxus
12670,Non-standard htaccess filename breaks mod-rewrite setup,ryan,Administration,2.9.2,normal,normal,Future Release,enhancement,assigned,has-patch,2010-03-22T17:44:41Z,2010-04-17T23:38:54Z,"I use a non-standard .htaccess filename and thus the mod-rewrite for permalinks didn't work for me as the admin script wrote to a file called .htaccess - this also made my wordpress site throw an HTTP 500 error due to the ""missing"" .htaccess file

I think it would be worth adding a check to see what the .htaccess filename is before writing it (the Apache config var is called ""AccessFileName"")

I have worked around the problem by creating a symlink from the filename I use to .htaccess.",thedotproduct
18596,Not possible to filter comment screen by post type,,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-09-05T16:50:33Z,2011-10-03T20:41:20Z,"The `post_type` query var has no effect on the Comments screen so it's not possible to filter this screen by post type.

I'll work on a patch.",johnbillion
23680,Obsolete function previously used in Theme Editor,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2013-03-04T03:15:56Z,2013-03-04T03:15:56Z,"`get_real_file_to_edit()` is unused since [12063] and should probably be deprecated: [[BR]]
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-admin/includes/file.php#L96",SergeyBiryukov
19114,Optimise admin css colors,,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,,2011-11-02T11:16:11Z,2012-12-24T11:26:56Z,"It is really pain to create own admin color pallete, as the current ones are too complex. E.g. in current colors-fresh.css you are using circa 90 colors, many of them almost identical so noone can see the difference (especially when they are on different pages, places) and you are also using different naming conventions

6hexa #666666

3hexa #666

color name black

and also different case in hexa e.g. #FFFBCC vs. #f1f1f1

IMO the default number of different colors could be decreased to about half without visible concerns and also standardising naming convention would help for creating own themes",thomask
12694,"Orphan themes are listed as broken, but can't be deleted from wp-admin",,Administration,2.9.2,low,minor,Future Release,enhancement,new,has-patch,2010-03-24T21:40:44Z,2013-05-16T01:38:05Z,"I had been giving a set of ""mobile"" themes a tryout on my WordPress blog.  There's a parent theme and three child themes.  Didn't really like them.  

Not realizing they were parent/children(I thought they were 4 independent themes that were identical except for color schemes), I deleted the parent theme first through the WP-Admin's theme screen (/wp-admin/themes).

Now, the parent theme is gone.  But WordPress still lists the child themes as broken themes with the disclaimer: ""The following themes are installed but incomplete. Themes must have a stylesheet and a template.""

However, there's no option to delete them from the WP-Admin.  Being a longtime WordPress user, I know I can FTP into my server and manually remove those directories.  But I'll admit, I love how the newer versions of WordPress have made it possible to install/upgrade/delete themes and plugins right from the Admin system, without the need to open up the ol' FTP client and do it all manually.  I'm sure there are also newer users of WordPress who may or may not be aware they'd need to go through FTP to delete a broken theme.

Just saying it would be nice if we could delete broken themes right from the Admin system... but it's not a major/urgent request.

",pnaw10
21774,Page attributes structure,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-09-02T14:58:57Z,2012-10-08T17:45:53Z,"Currently, the ""Page Attributes"" module is organized like this:

* Parent
* Template
* Order

Wouldn't it make more sense to put ""Parent"" and ""Order"" together, as both are closely similar and related to the site structure?

We could have:

* Template
* Parent
* Order

or maybe

* Parent
* Order
* Template",Lorangeo
16122,Paging in link-manager,,Administration,3.1,normal,normal,Future Release,enhancement,new,has-patch,2011-01-06T10:11:07Z,2011-08-06T14:42:39Z,"I think it would be a good idea to have paging (""Show on screen"" option) in the link-manager like in pages, sites, media a.s.o.",jezze
17891,Pass $post_type to 'restrict_manage_posts',,Administration,,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-06-25T11:48:23Z,2012-09-22T01:07:26Z,"It would be nice if the 'restrict_manage_posts' hook received the post type as an argument, rather than having to check the global.",scribu
18833,Pass raw data into save_post/wp_insert_post,rmccue,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-10-01T09:15:14Z,2011-10-02T02:24:01Z,"Almost all tutorials about custom metaboxes (in addition to post meta) use `$_POST` to get the data that was submitted. Unfortunately, this breaks if a plugin uses anything that calls `wp_insert_post()` in the same request.

The patch attached here includes the `$postarr` array, which is the raw data passed in, and which is `$_POST` from `wp-admin/post.php`. This allows one to use the third parameter to the callback to set meta data instead of having to use `$_POST` directly.",rmccue
9883,Password shows under Settings / Writing,ryan,Administration,2.7.1,low,trivial,Future Release,enhancement,reopened,has-patch,2009-05-19T23:07:29Z,2013-01-22T16:54:52Z,"The password box in the section ""Post via e-mail"" on Settings -> Writing should hide the password, not show it.",mastrup
7395,Plugins within a folder (in SVN) should be moved up a level in our plugin upgrader,DD32,Administration,2.6,high,normal,Future Release,enhancement,new,,2008-07-24T04:15:58Z,2010-02-13T02:02:12Z,"The Paged Comments plugin exists in SVN under a 'paged-comments' directory.  Since the auto-upgrader puts plugins into a directory based on their slug, this results in the plugin being under two 'paged-comments' directories.  We should be able to identify when a plugin's trunk (or current branch) directory contains only another directory, and move the whole plugin up a level.",markjaquith
6106,Post slug improvements,markjaquith*,Administration,2.5,normal,normal,Future Release,enhancement,accepted,,2008-03-05T21:08:21Z,2011-09-09T00:02:15Z," 1. ~~Right now, a post ID is shown as the post slug unless a slug is manually entered.  Instead, it should show the dynamic slug generated from the title.~~  Ideally, as the title is updated.  (maybe using onblur to see if the typed-in title has changed, and doing a quick AJAX request to see what the dynamic slug would be).
 1. There is no way to tell the difference between a tentative slug, and a locked-in slug (either by choice, or by hitting ""publish"").  Perhaps the highlighting could go away and the slug could be bolded to indicate that it is set.

",markjaquith
19711,Posts edit list window display no information about filtering,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-01-02T16:39:30Z,2013-01-22T15:09:32Z,"The ""All Posts"" page lists the available posts.

It can filtered by authors or terms, for example by clicking on a category name or the author name next to a post.

The URL will change to apply the filtering, but there's no other visual indication of  the filtering, nor a link to quickly disable filtering.

This can lead to confusion when users are accessing filtered lists directly or via links in other part of the dashboard.

",yoavf
8592,Private Pages not listed in the Parent dropdown,nacin,Administration,2.7,normal,major,Future Release,enhancement,reopened,commit,2008-12-12T16:22:24Z,2013-02-28T12:51:59Z,"Private pages are not available as a choice in the Parent dropdown of the Attributes module.

You should be able to create a hierarchy of private pages if you want to.

Tested with r10194.",mtdewvirus
6286,"Proposed changes to ""E-mail me whenever"" Discussion Options",,Administration,2.5,normal,normal,Future Release,enhancement,new,has-patch,2008-03-18T19:14:55Z,2013-01-13T20:40:03Z,"WRT the ""E-mail me whenever"" options on the Discussion options page:

[[Image(http://img132.imageshack.us/img132/4215/picture1vf1.png)]]

 1. For ""a comment is helf for moderation,"" the ""me"" is ambiguous.  It should specify that it means the blog admin e-mail address.
 1. For ""anyone posts a comment,"" again, ""me"" is ambiguous.  In this case ""me"" means the author of the post.  The comment notification setting is personal, and therefore should be set in the profile options (where it can retain the ""me"").  Some authors may want e-mail notification, others might not.",markjaquith
13924,Provide 'reasons to update' text with core update notice in GUU,,Administration,3.0,normal,normal,Future Release,enhancement,new,,2010-06-16T19:39:25Z,2010-10-28T09:38:35Z,"Just like plugins can enter some text to ID why they should be upgraded, we should have this for core. ",jane
23444,Publish actions not readily available after scrolling when editing a post,,Administration,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2013-02-11T01:37:14Z,2013-02-11T02:26:42Z,"When editing a post in 2-column mode, the user is forced to scroll to the top of the screen. As publishing is always the final action while editing a post, the user should have the metabox available regardless of the user's scrolling.",ericlewis
23233,Radio Button instead of Checkboxes on Comment Moderation option?,,Administration,3.5,normal,trivial,Awaiting Review,enhancement,new,close,2013-01-18T16:26:23Z,2013-01-19T03:13:00Z,"Hi! I've been a loyal Wordpress user for years. This is nothing urgent, but something that may improve the user experience.

In Settings > Discussion > Before a comment appears, there are two options: ""An administrator must always approve the comment "" and ""Comment author must have a previously approved comment""

Perhaps I have missed something here, but aren't these options pretty much either/or? If the first box is checked, it's rather irrelevant if the second box is checked, because the first checkbox would override it?

If I'm correct, shouldn't this be changed from a both/and checkbox to an either/or radio button?",danielmount
22198,Realigning the Discussions Settings page,,Administration,3.4.2,normal,normal,Awaiting Review,enhancement,new,,2012-10-15T14:50:34Z,2013-01-22T03:01:36Z,"[I looked for some tikets for this but didn't find any directly related, so hopefully I haven't missed a big one out there floating around.]  

The Discussions Settings page (options-discussion.php) always trips me up when setting up a new site. There's a lot of options, descriptions, directions, etc on that page — much of which is probably unavoidable. When I visit it, I always think that the hierarchy isn't quite right. 

To help with this, I thought of two half-measures. 

1. A very simple solution: 

Put the ""Allow people to post comments on new posts"" at the top of the options list, with a little space below it. That would make that option the most prominent on the page, without making it stand out too much. 

Like this:
[[Image(http://f.cl.ly/items/3e0c062W0N1l3J2D0q0Y/Screen%20shot%202012-10-15%20at%2011.56.02%20AM.png)]]


2. A more involved solution: 

I really like the new click-to-reveal-the-options at work in the ""Page on Front"" (#16379) workflow and thought it might work well here. 

*Something* in this direction:  
[[Image(http://f.cl.ly/items/022A1G3k0O3q0g1u380L/Screen%20shot%202012-10-15%20at%2012.12.09%20PM.png)]]


The first could be accomplished for 3.5, but the second re-working could be a further down the line item. 
 
",saltcod
17906,Refactor submit box code,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2011-06-27T13:27:34Z,2011-06-28T16:01:10Z,"The code for the post submit metabox is a mess. It should be cleaned up, so that changes such as #17028 can be done more easily.

Will post a patch shortly.",scribu
17133,Register ctrl + s event for plugin/theme editor,,Administration,3.1,normal,minor,Future Release,enhancement,new,has-patch,2011-04-14T12:20:34Z,2011-12-06T04:07:54Z,Often when modifying code or writing a post using the wordpress editor I instinctively hit ctrl + s to save it. Up pops the save website dialog which I then have to close. In Gmail when I hit ctrl+ s it saves the email to drafts. I think a similar thing would be useful for wordpress.,jcnetsys
16774,Remember list view/excerpt view setting,,Administration,3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-03-06T13:37:18Z,2012-07-03T19:43:23Z,"I love the new excerpt view, except that the next time I go to the Articles page, it shows me the list view again. The selected view should be retained as a setting.",texttheater
10970,Remove 'siteurl' setting from options-general.php,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2009-10-17T18:52:10Z,2012-11-16T16:26:34Z,"From #10957:

azaozz:
> Better to fix the cause for this: ""WordPress address"" (siteurl) shouldn't be changeable from Settings->General at all as it cannot be set safely there. Most users would just break their blogs if they change it.

> It is set at install and only needs changing when WordPress is moved to another domain or (sub)directory. This happens very rarely and there are other (better?) ways to set siteurl.


Denis-de-Bernardy:
> in this case, we need to make sure the www. pref is passed on to the site_url. else we're bound to get massive bugs (e.g. #9873)
",scribu
22228,Remove one-time variable from add_settings_error,,Administration,,normal,trivial,Awaiting Review,enhancement,new,,2012-10-19T17:50:08Z,2012-10-19T17:50:08Z,"Append an array to `$wp_settings_errors` without assigning it to a variable in the previous line.

Before:
$var = array( 'type' => $type ... );
$wp_settings_errors[] = $var;

After:
$wp_settings_errors[] = array( 'type' => $type ... );",niallkennedy
14333,Remove page order UI,,Administration,3.0,normal,normal,Future Release,enhancement,reopened,dev-feedback,2010-07-17T03:10:23Z,2012-09-02T23:01:02Z,"Unkile posts, in pages we can order and re-order the pages (using ""menu_order"" field in ""wp_posts"" table).

But since the new ""Custom Menu"" feature was introduced, do we realy need the page ordering?

We can create new menus, add as many pages as we like and re-order them as we like (this is the purpose of menues).

If we can do this using menus, then we can delete the ordering feature from the page editing screen.",ramiy
22827,"Remove profile page ""Visual Editor"" setting right margin",,Administration,3.2,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-12-08T16:31:58Z,2013-03-15T09:09:32Z,"I assume this once has been added to align with the profile page ""Admin Color Scheme"" setting, but for consistency with other settings my request to remove it.

Some screenshots:

http://cl.ly/image/3t3k1w3y2Q1D/8-12-2012%2016-26-26%20ltr%20after.png
[[BR]]
http://cl.ly/image/420C1i1c1f2n/8-12-2012%2016-21-26%20rtl%20before.png
[[BR]]
http://cl.ly/image/3H3R0u080I0Q/8-12-2012%2016-25-14%20ltr%20before.png
[[BR]]
http://cl.ly/image/183U2g3x381I/8-12-2012%2016-21-26%20rtl%20after.png

Please note this is my first patch, and thus I'll probably mess up something somewhere. Terribly sorry about that.",corvannoorloos
17884,Remove redundant checks in settings API functions,,Administration,,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-06-24T20:20:44Z,2013-01-03T19:25:30Z,"There are several isset() checks in some settings fields functions that are meant to prevent notices, but they're simply unnecessary.

PHP doesn't emit notices in those cases.",scribu
18788,Remove redundant type attributes from script and style tags,,Administration,3.3,normal,normal,Future Release,enhancement,new,has-patch,2011-09-27T06:54:02Z,2013-04-15T10:28:35Z,"Now that the admin is using the HTML5 doctype everywhere, the `type=""text/javascript""` and `type=""text/css""` attributes on script and style tags are unnecessary (if they weren't anyway), and I think they can be safely removed to trim a few hundred bytes from core. Should be a simple search and replace exercise.",solarissmoke
17542,Remove upload file after deleting custom background,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-05-23T08:49:25Z,2011-05-23T14:40:13Z,"I came across a comment on custom-background.php that says 
//@todo: uploaded files are not removed here.

So, I thought I will come up with this codes for the upload file deletion if user remove background.

Attached custom-background.diff

I had tested on my localhost.

Hope this contribution is useful.

Thanks.",denzel_chia
23427,Restore shift-click checkbox range selection,,Administration,3.5,normal,normal,Awaiting Review,enhancement,new,close,2013-02-08T19:35:32Z,2013-02-26T16:48:58Z,"It used to be possible to select a range of checkboxes in the post list by shift-clicking (see #6541). I'm not entirely sure when this feature disappeared, but it's been a while.

Patch restores the functionality using the [http://www.sanisoft.com/blog/2009/07/02/jquery-shiftcheckbox-plugin/ ​jQuery shiftcheckbox plugin].",sillybean
12432,River of comments in the Recent Comments dashboard module,garyc40,Administration,,normal,normal,Future Release,enhancement,assigned,has-patch,2010-03-01T00:23:32Z,2011-03-23T17:24:45Z,"See #11891, the 3.0 effort.

Upgrade the Recent Comments dashboard widget to pull in the 'river of comments' instead of only displaying the configured value (which winds up empty if you delete or spam those 5).",nacin
16413,Settings page needs HTML refactoring and UI improvements,nacin*,Administration,3.1,normal,normal,Future Release,enhancement,accepted,,2011-01-30T20:22:09Z,2013-01-03T19:25:28Z,"The settings pages haven't had much attention or improvement in a while.

We need to refactor the HTML on the settings pages, as they are still using tables instead of divs.

We also want to make some minor UI improvements including:
- clearer differentiation between option groupings
- using consistent text styles for descriptions and links (including the time zone/date format comment)
- restructure for better readability

Comment if you have any other",chexee
14858,Shortlink On Posts Edit Summary Screen,,Administration,3.0.1,normal,normal,Future Release,enhancement,reopened,,2010-09-12T23:08:43Z,2013-01-22T17:32:34Z,"We've got a very handy button on {{{/wp-admin/post.php}}} to get the posts shortlink, but that involves going into the post as if you want to edit something!

So on {{{/wp-admin/edit.php}}} would it not be appropriate to add some kind of link/button where we can get without needing to go in and edit the post? - Meaning it doesn't need to load any content, possibly add yet another auto-revision, and such...!",markmcwilliams
19609,Show the 'Mine' filter on the manage posts screen for all users,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-12-19T08:01:36Z,2013-04-04T17:42:04Z,"Authors and Contributors get a handy filter on the manage posts screen called 'Mine' which shows just that user's posts. It's also the default view for those user roles.

Editors and Admins don't see this filter at all. It'd be nice if it was available, even if it's not the default view like it is for Authors and Contributors.

If no-one else wants to then I'll look at doing a patch after the holidays.",johnbillion
7615,Show theme name when selecting page templates,,Administration,2.7,normal,normal,Future Release,enhancement,new,has-patch,2008-08-27T20:12:39Z,2009-11-20T20:33:10Z,"Currently, if a child theme inherits some templates from its parent theme and adds some itself, it's not clear when selecting a page template which templates are from which theme. The attached patch adds the theme name in parentheses after the template name.

This is just something that struck me might be an issue, so feedback on whether there is actually a real benefit to the added complexity would be welcome.",ionfish
16346,Slug field too narrow in Post Edit,,Administration,3.1,normal,minor,Future Release,enhancement,new,has-patch,2011-01-22T18:56:24Z,2011-01-22T19:39:41Z,"When you edit a post, there is a Slug panel at the bottom where you can edit the slug. The field displaying the text of the slug is set inline to 13, which is not nearly wide enough to show more than 15 letters.",ABTOP
9117,Spam queue doesn't distinguish between filter sources,,Administration,2.7,normal,normal,Future Release,enhancement,new,,2009-02-12T22:50:51Z,2012-06-19T19:23:07Z,"1. On the Settings / Discussion tab, go to the Comment Blacklist box, and add the string ""the"".

2. Post a comment containing the word ""the"".  It will be caught as spam.

3. Visit the Comments / Spam tab.  Your comment is there, but there is nothing to indicate whether it was caught by the Comment Blacklist, or by Akismet, or by another spam filter.

Result: neither the user nor WordPress knows how to prevent that comment from being caught in future.  Many users will forget about the Blacklist feature and assume their spam filter plugin is faulty.

Suggested fix: comments caught as spam should record the reason.  This should be displayed to the user, and used internally by spam filter plugins to decide how to handle false positives.

",tellyworth
20052,Support sprites for admin menu icons in register_post_type and add_menu_page,,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2012-02-15T23:14:45Z,2012-12-14T23:49:22Z,"We should encourage developers to maintain a consistent and beautiful admin UI by making it easier to register sprites with black and white and color versions of icons for the admin menu, namely in `register_post_type()` and `add_menu_page()` (and its wrappers).

Related: We should also do an education push and create an external web tool to make it easy to generate a properly sized, colored, and positioned sprite.

Related tickets: #20036, #19886",helen
18590,"Swap out ""return false"" JS calls for preventDefault",,Administration,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-09-05T03:43:16Z,2012-12-10T23:12:00Z,"While trying to hook into someone clicking the expand/collapse arrow in the nav menu UI, I realized that the existing Javascript is using `return false;` to abort the hyperlink click from going through.

[http://fuelyourcoding.com/jquery-events-stop-misusing-return-false/ This is bad and incorrect.]

We should be using `object.preventDefault()` instead so that other bound functions aren't aborted.",Viper007Bond
16369,Tag to category and categories to tag converter links,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-01-25T10:44:06Z,2011-01-25T13:44:28Z,"In the Post Tags and Categories pages, links are made available to direct the users to the Categories and Tags Converter in Tools.

While it is normal that these links go to the Tools>Import page as long as the Categories and Tags Converter is not installed, once it is, the links should go one step further and bring the user directly inside the Categories and Tags Converter.",paolal
20901,Taxonomy descriptions should be TinyMCE editable,,Administration,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-06-11T07:49:17Z,2013-05-16T10:16:18Z,"Right now taxonomy descriptions are filtered heavily for HTML and are output as a simple textarea, making it impossible to make those into ""nice"" tinymce editors without a kind of hackish plugin. 

I'd be in favor of making taxonomy descriptions tinymce by default.",joostdevalk
7485,Terrible UX design on XFN section of Write->Link pages,,Administration,2.6,normal,normal,Future Release,enhancement,assigned,dev-feedback,2008-08-08T17:02:49Z,2012-01-06T01:43:58Z,"Regarding the XFN section on the Write-Link pages:

The UX on this section is fairly terrible. We give the user an editable ""rel"" field and then don't let them edit it via javascript. Note that if you disable javascript and then edit that field, then your changes are indeed saved and then even show up on the resulting pages correctly. That javascript just won't let you manually edit the field. 

I propose that the javascript on this section be changed to allow manual editing of that field, and to make the checkbox/radio sections just add/remove the relevant bits from the field when they are selected/deselected. Result should allow user to manually insert stuff into the rel field and leave those manual insertions unaltered when changing the radio/checkboxes, unless they conflict with the selections being made directly.

Also, side note, would be nice to add a nofollow checkbox to this section as well, to allow easy addition of nofollow to the rel field, which would be handy for the somewhat over-controlling SEO oriented people. ;)
",Otto42
16414,Theme and Plugins options pages need improved tabs,chexee,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-01-30T22:13:52Z,2013-02-17T21:48:14Z,"We've talked about this in UI group before, this is essentially a continuation of [12412].

The tabs currently look rather big and bulky. We'd like to find a more graceful, subtle way to show multiple screens under one nav item.

Some notes:

 - Tabs should be different sections of one nav item (primarily Themes and Plugins).  They are not children of that nav item.  There shouldn't be any visual hierarchy between the h1 and the tabs.  The tabs, essentially, are the different h1s.

 - I use the word tabs loosely.  They do not necessarily have to look like traditional tabs.  Creative solutions to this would be awesome.

 - We are also open to suggestions to changing the wording on the tabs, especially for themes.  Current they read, ""Manage Themes"" and ""Install Themes"".  ""Install Themes"" is a bit misleading, ""Add New Themes"" would be more descriptive.

Attached are previous proposals.  ",chexee
21826,There should be more filters when displaying a theme in the list table,,Administration,3.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-09-06T22:54:43Z,2012-09-15T22:27:50Z,"In `WP_Themes_List_Table::display_rows()`, there is a filter for the theme actions, but no filters for the theme information itself: screenshot, title, author, version, and description. Why not fix that?

The attached patch introduces `theme_list_*` filters within the `display_rows()` method. Suppressing one of the pieces of information is simply a matter of returning an empty value through the filter.",ethitter
20570,"Tidying Admin CSS, bringing it up to CSS Code Standards (work in progress)",,Administration,3.4,normal,minor,Awaiting Review,enhancement,new,,2012-04-29T16:24:09Z,2012-12-24T11:27:12Z,"as per http://codex.wordpress.org/CSS_Coding_Standards, this is an attempt to bring the internal admin stylesheets up to CSS Coding Standards

Some of the changes being made are ...

* Properly intenting top: left: right: bottom: attributes two tabs when following a position:absolute position:fixed or position:relative declaration
* Alphabetizing css properties
* Removing unnecessary browser prefixes
* Placing browser prefixed css properties before the non-browser prefixed versions
* Removing extraneous spaces
* Applying a consistent ordering of browser-prefixed properties (based on length of prefix to get an aesthetically pleasing diagonal line, rather than jagged, inconsistent line endings -- yes, I know it's silly, but it's better than randomness, and alphabetical isn't as useful)
* Applying a uniform method to attribute selectors and url references by wrapping double-quotes around the values (there was no prior standard and a motley assortment of usages)
* Changing colors to 3-character shorthand ( 888888 becomes 888 )
* Changing colors to lower case ( EEE becomes eee )

and probably a couple others that aren't coming to mind right now.",georgestephanis
19123,Top and bottom pagination should be consistent,,Administration,3.3,normal,normal,Future Release,enhancement,new,,2011-11-03T02:39:23Z,2012-12-24T11:45:33Z,"The top pagination on Install Themes and Install Plugins is the new style (box to type in page number), but for some reason the bottom pagination is old style. These should be consistent. IIRC, the bottom ones were reverted because there was a bug we couldn't solve in time for that version's launch, but we never came back to fix it. Both top and bottom should allow text entry of page number.",jane
16243,Unhelpful error messages when updating default category,,Administration,3.0.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-01-15T12:23:36Z,2011-12-07T07:15:45Z,"If we try and change the default category slug to one that has already been used we get conflicting error messages between quick edit and full edit.

If you use Full Edit you're simply told ''Item Not Updated'' however, if you use quick edit, you are informed that the slug has already been used.

The full edit error message is, I think, on line 223 of wp-admin/edit-tags.php - I'm unable to find where the error message for the quick edit functionality is, however.

Having correct and useful copy in error messages is vital, especially for relative newcomers to WP.

This oversight was found by Relly Annett-Baker (@RellyAB on twitter) - one of the best copy writers and content strategists out there. Perhaps we could look at overhauling the error messages and ask (someone like) Relly to give them a once-over or offer advice on them.",iamfriendly
22633,Update Icon Inconsistency,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-11-29T11:37:57Z,2012-11-29T14:44:27Z,"The update icon at the moment is 2 arrows in a circle in the admin bar ( aka the refresh icon ). In Network Admin it's a pair of tools.

I'd suggest we change these to the same icon rather than have 2 inconsistent icons. I'd also suggest we use a single arrow as the new icon, a refresh/recycle icon isn't as clearcut as it could be ( and what if a caching plugin implements a refresh button to the admin bar? ).

We could follow Google by using an arrow pointing upwards, or we could follow Apples convention with a downwards pointing arrow in a circle",TJNowell
12914,Update the Right Now box when publishing via QuickPress,,Administration,3.0,lowest,trivial,Future Release,enhancement,new,has-patch,2010-04-08T08:03:32Z,2013-01-22T15:57:58Z,"When you publish a new post via QuickPress, it'd be cool for the Right Now box to then ++ the number of published posts.

Quick proof of concept patch attached.",nacin
9777,"Usability : add delete button to ""edit category"" menu",,Administration,2.7.1,normal,minor,Future Release,enhancement,new,has-patch,2009-05-09T22:56:39Z,2012-05-22T16:56:47Z,"Add ""delete"" button to ""edit category"" menu so i can delete the category and not only edit it. this is a very useful feature that is missing in this menu.

'''LOCATION:'''

Admin -> Posts -> Categories -> Edit Category

'''URL:'''

http://www.site.org/wp-admin/categories.php?action=edit&cat_ID=302
",ramiy
23601,Use ACE Code Editor for Theme and Plugin editors,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-02-25T06:56:00Z,2013-03-21T21:33:49Z,"Ace is an embeddable code editor written in JavaScript. It's the code editor used on GitHub and is actively developed by Mozilla. Its license is Modified BSD which is compatible with GPL. 

The plugin and theme editors in their current state are lame. Upgrading the experience with ACE could lead to a more robust file editing solution in the admin. Perhaps, ability to add files?

Here's the link to the project:
http://ace.ajax.org/",wonderboymusic
23731,Use jQuery Menu Aim to improve responsiveness of our admin menus,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2013-03-09T16:00:11Z,2013-03-15T21:01:34Z,"This is a fantastic read: http://bjk5.com/post/44698559168/breaking-down-amazons-mega-dropdown

And it resulted in an MIT-licensed jQuery plugin that we should absolutely consider using to improve our menus: https://github.com/kamens/jQuery-menu-aim",markjaquith
21622,Validate or sandbox file edits before saving them,,Administration,2.7.1,normal,minor,Awaiting Review,enhancement,new,,2012-08-17T20:50:45Z,2012-09-24T23:20:03Z,"While using the [http://www.wpzoom.com/themes/academica/ academica] theme, I accidentally missed an ending bracket while editing functions/wpzoom-seo.php in the theme editor. This is used as part of a set of pages creating a theme options page on the dashboard. When the function went bad, it caused my entire installation to be unaccessible.

It was necesssary to ftp to fix the error, because even the dashboard was blanked out by a fatal error. Messing something up in the theme should not cut off access to the dashboard.",eschwartz93
22466,Want to View Pending Comments From Dashboard,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-11-15T18:49:39Z,2012-11-19T16:25:06Z,"This is a very awkward aspect of WordPress that I'm just attempting to articulate for the first time:  In the Recent Comments dashboard widget, there is no way to view fully the pending comments.

What it should link to:

* View Comment
* View Post
* Approve Comment
* Edit Comment
* Spam Comment
* Trash Comment

What it does instead:

* Visitor's site or e-mail address
* Edit Related Post
* View Related Post
* Reply to Comment
* Approve Comment
* Edit Comment
* Spam Comment
* Trash Comment

So there are several obvious points of confusion here.

Why would I want to reply to a comment that is pending approval, still hidden, and not even fully displayed to me?

Why can't I see the whole comment?  It only shows me an excerpt here, and in order to actually read the comment I have to click over to Comments on the admin menu and find what I'm looking for manually.

Why does the most prominent link for the comment take me to the post editing screen?  When is this ever useful?

Why is the post link displayed as a tiny little ""#""?",miqrogroove
21189,We should improve the nonce failure page,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2012-07-08T09:07:17Z,2012-07-08T13:14:00Z,"Currently when a admin nonce expires, in most cases we catch this condition using `check_admin_referer()` which presents expired nonces with a rather ugly uninformative error message:
[[Image(http://f.cl.ly/items/26271g453h2y0K393Y1l/Screen%20Shot%202012-07-06%20at%2012.14.25%20PM.png)]]

I'd like to propose that we make this page a bit nicer to end users - who although are unlikely to hit it (I hope) it'd be nice to let them know what's actually happened.

My initial approach would be to change the page to 
- Include a !WordPress logo, and a link back to the Admin area
- Change the message to something like ""The link you've followed has now expired, In order to complete the action you were performing, please return to the previous page, refresh it, and attempt to follow the link again."".
- In the case where this is happening within the !WordPress admin, it would make sense to have some kind of UI on the page as well - This can currently be done by not using `check_admin_referer()` and using `wp_verify_nonce()` directly and redirecting to an error page.

The current message could often cause confusion, as of course the user wants to do it (They just followed a link!) but as there's no continue button, they're left confused.",dd32
16856,"When registering custom post type, menu_position isn't honored if it's a number passed as a string",,Administration,3.1,normal,normal,Future Release,enhancement,new,has-patch,2011-03-14T16:52:18Z,2013-03-31T02:52:15Z,"When registering a custom post type, if you use '50' instead of just 50, is_int() will fail and the position will be set to ++$_wp_last_object_menu. Seems safer to use isset() instead, since position doesn't technically need to be an integer. ($menu gets sorted before being output, and '50' is the same as 50 in that case)

This has the added benefit of allowing MANY more spaces in the $menu variable. For instance, if you passed '50.555' as menu_position, there's very little chance that this will conflict with another theme/plugin register a custom menu or custom post type, and will successfully go between 50 and 51 in the $menu array.

There are currently no checks on $position when using add_menu_page() ... but the checks on register_post_type() currently make this an invalid universal solution.

Personally, I don't see a downside to letting menu_position be a string. Anything other than a number (whole or decimal) will just go to the bottom of the $menu array, anyway, after the sort.

I'm submitting two patches ... one is type independent, and the other casts menu_position as (int) after the isset() check.",nathanrice
24252,Windows Phones are ignored by wp_is_mobile,,Administration,,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-05-02T21:49:13Z,2013-05-07T18:46:30Z,"Reported in the forums by vaibhav3 - http://wordpress.org/support/topic/wp_is_mobile-returning-false-values/

wp_is_mobile() doesn't have an 'If Windows Phone' clause which throws off some phones which apparently don't have a 'mobile' fall back.

Attached is a patch that adds it in.",Ipstenu
17851,Wrapping Sections with add_settings_section,,Administration,3.1.3,normal,normal,Future Release,enhancement,reopened,has-patch,2011-06-20T03:09:34Z,2011-09-28T18:09:53Z,"This is my first time reporting, so excuse my ignorance. I just wanted to see about enhancing the add_settings_section function.

As of now, individual sections are not wrapper in any sort of container, which makes no sense to semantic sense to me. Sections should/need to be styled differently, but as of now, you really don't have much control of that.

I propose something similar to the register_sidebar function, looking like this:

add_settings_section( $id, $title, $callback, $page, $args )

$args would accept 3 parameters: before_section, after_section, and section_class.

This way you can style each individual section with relative ease. Just a thought and enhancement to the Settings API.

Thomas",griffinjt
23501,add filter for post count query in WP_Posts_List_Table,,Administration,3.5,normal,normal,Awaiting Review,enhancement,new,,2013-02-18T14:02:40Z,2013-02-18T19:09:48Z,"I've a custom post type ""products"" with a custom taxonomy ""manufacturers""
I've hooked the parse_query filter when fired from edit.php because I've wanted to show posts based on current user criteria (user can edit only products belong to specific manufacturers).
Everything worked as expected, except for the post count in the table header that shows total amount of posts (not a filtered count).
Digging into the code I've found that inside WP_Posts_List_Table constructor ([http://core.trac.wordpress.org/browser/trunk/wp-admin/includes/class-wp-posts-list-table.php#L59])the following code is performed:

{{{
$this->user_posts_count = $wpdb->get_var( $wpdb->prepare( ""
				SELECT COUNT( 1 ) FROM $wpdb->posts
				WHERE post_type = %s AND post_status NOT IN ( 'trash', 'auto-draft' )
				AND post_author = %d
			"", $post_type, get_current_user_id() ) );
}}}

I think that the simplest solution is to add a filter for the count query. By this way is possibile to customize the query that reflects the effective post count.",cardy_Web
23856,add style for <hr> tag in the Dashboard,,Administration,,normal,trivial,Awaiting Review,enhancement,new,,2013-03-24T17:07:21Z,2013-03-29T05:21:03Z,"Lines are with black color, 
Lines are important to separate something in a widget for example.
or in a metabox... 

{{{
	border: 0; 
	border-top: 1px solid #DFDFDF;
	border-bottom: 1px solid white;	
}}}
",alexvorn2
12506,admin-color-scheme.css already loaded on wp-login.php. why?,,Administration,2.9.2,low,minor,Future Release,enhancement,reviewing,has-patch,2010-03-03T21:55:21Z,2012-07-03T20:55:11Z,"On wp-login.php we are already on admin, because wp is loading the whole color-scheme for a user... which is wrong. It is senseless, because the color-scheme the user selected for admin cannot be loaded without his user-data. And that is not possible as long as he/she didn't enter any login-data.

REQUEST: get the ~30kB color scheme out of the wp-login.php and add the following to wp-admin/css/login.css:


{{{
body.login {
    border-top-color:#464646;
}
body, #wpbody, .form-table .pre {
    color:#333333;
}
a, /* All obsolete on wp-login.php - could here simply be h1 a */
#adminmenu a,
#poststuff #edButtonPreview,
#poststuff #edButtonHTML,
#the-comment-list p.comment-author strong a,
#media-upload a.del-link,
#media-items a.delete,
.plugins a.delete,
.ui-tabs-nav a {
    color:#21759B;
}
.submit {
    border-color:#DFDFDF;
}
textarea, /* All obsolete - could be #login #wp-submit */
input[type=""text""],
input[type=""password""],
input[type=""file""],
input[type=""button""],
input[type=""submit""],
input[type=""reset""],
select {
    background-color:#FFFFFF;
    border-color:#DFDFDF; /* Obsolete due to .submit-class above */
}
input.button-primary, button.button-primary, a.button-primary {
    -moz-background-clip:border;
    -moz-background-inline-policy:continuous;
    -moz-background-origin:padding;
    background:#21759B url(../images/button-grad.png) repeat-x scroll left top;
    border-color:#298CBA;
    color:#FFFFFF;
    font-weight:bold;
    text-shadow:0 -1px 0 rgba(0, 0, 0, 0.3);
}
.submit {
    border-color:#DFDFDF;
}
.login #nav a {
    color:#21759B !important;
}
.login #backtoblog a {
    color:#CCCCCC;
}
}}}
",F J Kaiser
19828,allowing to insert help tab in specific position,,Administration,3.3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-01-13T21:50:15Z,2012-03-01T17:22:32Z,"this enhancement of add_help_tab() would allow plugin developers to insert help tabs on existing screens at an arbitrary position, e.g. place it on the ""Writing Settings"" screen's help tab between the ""Overview"" and ""Press This"" tabs

the patch attached includes the bugfix from #19827, but this enhancement can be rewritten to work independently",tfnab
21539,category_description filter not applied to Description field on Categories page,,Administration,3.4.1,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-08-10T13:53:03Z,2012-08-12T17:31:42Z,"The category_description filter is not applied to the Description field on the Posts > Categories page (wp-admin/edit-tags.php?taxonomy=category).

Need: I use very long category descriptions, which are displayed on the front end of the site. This means that the Posts > Categories page is blown out by the long descriptions. I wrote a plugin to filter the category_description to limit it's length in the admin area. However, I then discovered that the filter is not applied on this page.

I'm wondering if there is some reason this was left out by design, but I can't see any reason why the filter should not be applied at this point. If I've missed something, please let me know.

It is easy to fix - simply apply the category_description filter to the description field in column_description() in wp-admin/includes/class-wp-terms-list-table.php

I have applied this on my local install. Now I just need to work out how to create a patch and submit it for review (this is my first attempt).

Note: It may be sensible to limit the length of the category description displayed on this page, but that's outside the scope of this ticket, which is just about the filter not being applied.",StephenCronin
17520,cite element used incorrectly,,Administration,,low,trivial,Future Release,enhancement,new,has-patch,2011-05-20T17:47:14Z,2011-10-18T21:16:34Z,"Here's what the HTML5 specification says about the cite element:
  The cite element represents the title of a work (e.g. a book, a paper, an essay, a poem, a score, a song, a script, a film, a TV show, a game, a sculpture, a painting, a theatre production, a play, an opera, a musical, an exhibition, a legal case report, etc). […]
  
  A person's name is not the title of a work — even if people call that person a piece of work — and the element must therefore not be used to mark up people's names. (In some cases, the b element might be appropriate for names; e.g. in a gossip article where the names of famous people are keywords rendered with a different style to draw attention to them. In other cases, if an element is really needed, the span element can be used.)

http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-cite-element

The element is used plugins/hello.php correctly to mark up the title ""Hello, Dolly"". But many more places it is used incorrectly to mark up an author's name.

The obvious fix would be to replace all but the one correct instance of the cite element with spans with an appropriate class.",holizz
11705,get_media_item()'s $form_fields do not allow for <select>,,Administration,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-01-03T21:48:51Z,2010-02-18T12:19:45Z,"get_media_item() of wp-admin/includes/media.php does not allow for <select>-style fields. This makes extending the ""Edit Media"" screen via the ""attachment_field_to_edit"" filter difficult for plugin authors to extend.",johnl1479
22590,get_post_class() do not set 'sticky' class in administration posts table,,Administration,3.4.2,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-11-26T09:31:54Z,2012-12-21T19:30:40Z,"get_post_class() does set a 'sticky' class to sticky post on the frontend but not in the administration. So, there's no way to differentiate a sticky post from another non-sticky post excepted the span element to its right.

Adding something similar to this fix the problem:
{{{
	// sticky for Sticky Posts in administration
	if ( is_sticky($post->ID) && is_admin() )
		$classes[] = 'post-sticky';
}}}",corsonr
18850,hidden admin page,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2011-10-03T21:43:12Z,2012-07-30T16:22:40Z,"it should be possible to create a hidden admin page.

this is useful for pages, that require parameters which are better inserted in other pages (e. g. using the post_row_actions filter).

if this is already possible, it should be documented somewhere where it might be found.

(btw: i'm not sure, what the difference between feature request and enhancement is. please redeclare as fit)",ibotty
23785,highlight rows on hover for tables with widefat class,,Administration,3.5,normal,minor,Awaiting Review,enhancement,new,,2013-03-15T10:57:06Z,2013-04-02T20:58:26Z,"If .widefat tables had this css code system-wide (wp-admin.css)

{{{
.widefat tr:hover td {
      background-color: #DDD;
}
}}}

handling these tables on (extreme) widescreens would be improved.

[[Image(http://picload.org/image/aocipap/widefat.jpg)]]",cfoellmann
17642,hook for category edit needed,cardy_web,Administration,3.1.2,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-06-01T16:44:50Z,2011-06-01T16:44:50Z,"I think is needed an hook inside admin-ajax.php (line 1226) case 'inline-save-tax'
When you use ""quick edit mode"" to edit category no hooks get involved so function hooked into {action}_category are never called.
Instead everything work well using classic edit mode",cardy_web
18786,meta_form() should place some restrictions on meta keys,,Administration,,normal,normal,Future Release,enhancement,new,dev-feedback,2011-09-26T22:37:58Z,2013-04-22T21:12:23Z,"meta_form() echoes out all meta keys into a dropdown for the custom fields box, unless they start with an underscore (as bound by the query).

We should consider is_protected_meta( $key, 'post' ) and/or current_user_can( 'add_post_meta', $post->ID, $key ). This isn't a security thing, just an opportunity to hide some things from the user they don't need to see.

On the other hand, it's definitely a number of extra calculations. is_protected_meta() is light as long as there's no filter on things (and if there is, we probably want to know). current_user_can() might be a bit more weight than necessary here.",nacin
7422,"pass $post_id to filters in sanitize_post_field() on post updates - same for users, etc.",,Administration,,normal,normal,Future Release,enhancement,new,has-patch,2008-07-28T21:18:05Z,2010-07-15T12:17:01Z,"the function sanitize_post_field in wp-includes/post.php calls most of the ""database writes"" post filters (e.g. content_save_pre). if a post is updated or created, the function is called in a database context ('db' == $context) and the $post_id argument is not passed to the ""database writes"" filters. while i understand this behavior on post creation ($post_id not yet available) it seems to me that on a post update the $post_id is readily available and could/should be passed to the filters as well.

an example where this would be useful is a case where i want to access a custom field value of a post that is currently being updated from the function hooked into content_save_pre. in its current form without the $post_id argument this doesn't seem to be possible.",whoismanu
18710,post_deleted_messages filter,nacin*,Administration,,normal,normal,Future Release,enhancement,accepted,has-patch,2011-09-19T21:19:21Z,2012-06-11T13:05:21Z,It would be nice to be able to updated post deleted messages like you can through the post_updated_messages filter.,jgadbois
16283,post_exists() enhancement - don't include revisions,,Administration,3.1,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-01-18T13:33:51Z,2011-07-17T02:04:03Z,"The current post_exists() function to me has a major downside.  By default all it does it search for title, content and/or date in the wp_posts table.

The problem with this is that it includes revisions.  So for example if you have a post with title ""ABC"" but then later change it to ""DEF"", post_exists(""ABC"") will still return true with the post ID of the revision.

I would suggest either:

 a) Adding post_status not equal ""inherit"" as a default to the function.

 b) Adding a 4th parameter which allows you to pass the post_status value in.

I would be happy to code this if anyone has any feedback on what would be the best approach.",durin
18851,search form in edit.php should keep parameters it does not understand,,Administration,,normal,normal,Awaiting Review,enhancement,new,,2011-10-03T21:48:17Z,2011-11-15T11:29:40Z,"the component is class-wp-list-table.php.

if you carry along some kind of status in the url in the post list (e.g. url=https://example.com/wp-admin/edit.php?post_type=post&my_status=""abcdefg"") the search field should not remove the parameter.",ibotty
16778,wordpress is leaking user/blog information during wp_version_check(),,Administration,,normal,minor,Awaiting Review,enhancement,reopened,has-patch,2011-03-06T18:57:43Z,2012-09-04T11:06:26Z,"Hi,
we've noticed that wordpress will send how many users and blogs are in a given installation during the GET to api.wordpress.org together with the installation URL in the headers.

Is there any reason why this is done? It seems quite a leak of information. Can it be turned into an option defaulting to off and admins can opt-in if they want to report how many users/blogs are currently there?

thanks.

PS. slightly related, WP will also leak which blog in MU mode is requesting any URL via the user-agent in the WP_Http class (for example while updating the news feed on the dashboard)",investici
14561,wp-admin/edit.php tags of post are hard to compare,,Administration,,normal,normal,Future Release,enhancement,new,,2010-08-08T08:25:02Z,2010-11-18T10:13:25Z,"To get an overview about tags used between articles on the post listing in the admin is hard to achieve by the user because they appear not to be ordered.

A solution could be to sort them alphabetically. That done, it's easier for the user to compare the usage of tag distribution accross the listing.",hakre
18287,wp-login.php - Logo URL should be relative (affects MultiSite),,Administration,3.2.1,normal,normal,Future Release,enhancement,new,has-patch,2011-07-29T00:31:49Z,2013-05-05T04:50:28Z,"If you go to your domain.com/wp-login.php page it has a WP logo that links back to domain.com

If you're using multisite and go to subsite.domain.com/wp-login.php, it links back to domain.com

If you're using multisite and you MAP a domain and go to mappeddomain.com/wp-login.php, it links back to domain.com

I can see why this would have been done.  It points to network_home_url() which is perfectly sensible for MOST situations.  But maybe we should just honor the site on which people are trying to login, so that it's all relative.  Given the link on the bottom (back to...) goes to the relative site, this is a logical change.  I would say to keep the EMAILS for password resets as is, since the network is in charge of it all, but the front end interface should be consistant.

I did a quick test and this works fine on Single and Multi (as expected). So ... here's my first diff!",Ipstenu
15384,wp-login.php refactor,,Administration,,normal,normal,Future Release,enhancement,new,early,2010-11-11T12:40:35Z,2012-05-31T21:40:02Z,"wp-login.php needs some serious work. When looking to do some improvements in #5919, I realized I literally needed a goto in order to achieve the goals outlined in this comment:

http://core.trac.wordpress.org/ticket/5919#comment:39

I am thinking a WP_Login class with some methods that can handle various different forms, POST handling, and rerouting.",nacin
17517,wpLink should show tags and categories as results too,,Administration,3.2,normal,normal,Awaiting Review,enhancement,new,,2011-05-19T19:38:36Z,2011-05-21T12:06:36Z,"sometimes you make a series of blogpostings about a topic with one unique tag. 

wpLink (the link assistant in wp 3.1) is very useful for finding ""old"" content, but when you want to link a tag or category you have to type in the url yourself or paste it

Possible solution:

Tabbed interface:
Tab 1 for Posts/pages
Tab 2 Tags/categories",hebbet
24119,A uniform approach to Plugins / Themes settings,,Administration,3.5.1,normal,normal,Awaiting Review,feature request,new,,2013-04-18T07:28:14Z,2013-04-26T22:16:55Z,"Yesterday [https://irclogs.wordpress.org/chanlog.php?channel=wordpress&day=2013-04-17&sort=asc#m2987650 in IRC] (#!WordPress), we had a conversation about rules that would help make plugins and themes easier to use, which in turn would make !WordPress easier to use.  

There isn't a rule or guideline whether a plugin should make a tab or link under settings or if it even has to do any of the above. We all agreed that all plugins should have a link under settings. If the plugin enhances a different part of the site, the settings page could just tell you where the plugin feature is located. 

We also agreed that themes should put features like a static front page under customize like most already do, though I heard Responsive doesn't. I was told it puts static front page under settings. If it is a theme feature, then logically you should be able to at least find a link to where the features are under themes. 

Implementing general rules for plugins and themes would make !WordPress easier to use. Does anyone else agree?
    ",ryansatterfield
21925,Ability to upload multiple .zip files to install in bulk,,Administration,,normal,normal,Awaiting Review,feature request,new,,2012-09-19T12:40:09Z,2012-09-28T08:03:18Z,"It'd be nice to have a drag-and-drop or similar functionality to the Media Uploader to be able to select 5, 10, 17 plugins/themes to upload several .zip files at a time.

Of course, if a folder already exists or if you upload a theme .zip to the plugins page or something like that, then display the appropriate error(s). Otherwise, display the success notification per install.",cliffpaulick
12801,Add Info link to plugins management screen,,Administration,3.0,normal,normal,Future Release,feature request,new,,2010-04-01T19:08:40Z,2013-01-22T01:40:01Z,"Related to #11050 but instead of the search results, on the regular plugins.php screen. Add ""Info"" link to left of Activate/Deactivate action links, which brings in the tabbed info from the repo. If not from the repo, link does not appear.",jane
21665,"Allow non-editable pages to be classified & organized as ""System Pages""",,Administration,,normal,normal,Awaiting Review,feature request,new,dev-feedback,2012-08-23T01:08:34Z,2013-01-22T03:21:44Z,"We currently have no means of distinguishing regular “content” pages (pages that users can edit) and pages that are used as placeholders for custom templates / dynamic content.

As alexking mentions in #17470, users are often confused when they attempt to edit these ""placeholder"" or ""dummy"" pages only to find that the pages appear empty from within the page editor.

While his ticket concerned the ""page_for_posts"" page specifically, this issue is equally relevant to custom page templates that do not make use of user-generated content via the page editor.

isaackeyet proposed a solution [http://core.trac.wordpress.org/ticket/17470#comment:4 in that ticket] which introduces the idea of classifying such pages as ""System Pages"", which would offer a more limited set of options for how they can be changed:

>Idea to solve this permanently as brought up in the UI chat July 10 2012:
>
>* Pages have a new, hidden meta field to indicate ""System Page"" or >something that better describes it. Pages are marked System Page when >WP is using it as a placeholder for a custom blog set up, or a plugin >can use it to indicate a page is used for a contact form (for >example).
>* Pages are highlighted with a meta description in the pages list, >indicating why it's there (created by? reason?)
>* Most importantly, these System Pages are grouped in the pages >filter to be excluded from the regular list, so the list may read >""All | Published | System Pages"", which should be a better long term >solution for this ticket specifically (user confusion).



",bootsz
12273,Better support for sites with LOTS of pages,,Administration,2.7,normal,normal,Future Release,feature request,new,,2010-02-18T15:10:02Z,2011-04-18T14:41:23Z,"The default page listing is inadequate for sites utilise Pages as their main content type.

An option to collapse the page listing and hide ""all"" sub-pages (only showing top-level) would dramatically improve the UI making it easier to find pages within the WordPress structure.

'''Example:'''

''Current Page View''

{{{
Page 1
-SubPage 1.1
--SubSubPage 1.1.1
--SubSubPage 1.1.2
-SubPage 1.2
-SubPage 1.3
Page 2
-SubPage 2.1
-SubPage 2.2
--SubSubPage 2.2.1
--SubSubPage 2.2.2
}}}

''Proposed Page View''

''Default View''

{{{
Page 1 [+] (< click to expand)
Page 2 [+]
}}}

''Expanded View''

{{{
Page 1 [-] 
-SubPage 1.1 [+] (< click to expand)
-SubPage 1.2
-SubPage 1.3
Page 2 [+]
}}}

''...''

{{{
Page 1 [-]
-SubPage 1.1 [-]
--SubSubPage 1.1.1
--SubSubPage 1.1.2 (> no further levels)
-SubPage 1.2
-SubPage 1.3
Page 2 [+]
}}}
",mkjones
20013,Clean Up Touch UI for Left NavMenu / Flyouts,,Administration,3.3.1,normal,normal,Future Release,feature request,new,reporter-feedback,2012-02-10T16:30:50Z,2013-01-22T15:24:19Z,"While the flyout is mostly usable in it’s current state, it is not as intuitive as it needs to be for the best user experience. They are ineffective at best on the Kindle Fire’s Silk Browser, but work pretty well on the iPad.  We need to examine all target devices to ensure interactivity is supported cross-device.",georgestephanis
19239,Combine WordPress News and Other WordPress News dashboard widgets,,Administration,3.3,normal,normal,Future Release,feature request,new,has-patch,2011-11-12T19:01:42Z,2013-05-14T19:49:51Z,"We could lighten the dashboard by making this one widget with configuration instead of two separate ones. Anything from WordPress.org official blog would get a highlight to designate it as such. Configure would allow to choose display of both feeds or jus one, and how many items to show.",jane
22862,Consider a CSS preprocessor,,Administration,,normal,normal,Awaiting Review,feature request,new,,2012-12-11T22:01:36Z,2013-01-16T10:33:34Z,"The WordPress admin UI CSS is woefully doomed to a life of inadequacy unless we can amenably agree to use technology already available to build a better future for us and our children.

I propose the introduction of SASS for the WordPress admin styling. SASS is a CSS pre-processor that allows us to write DRY, structured, lightweight CSS. In terms of licensing, SASS is GPL-compatible, licensed under the MIT license.

'''Why use SASS over LESS?'''

The answer is simple. SASS is easier to learn and easier to use because it follows the conventions of CSS at its core. In addition, for developers itching to contribute, there are some extremely useful and easy-to-follow reference docs for SASS, making it easy to set up your local development environment and build websites.

'''What are the advantages?'''

The biggest advantage is that we can write less CSS and offer advanced features for theming the WordPress Admin UI. Developers can more easily reskin the WordPress admin.

Another major benefit is that SASS offers the use of variables within our stylesheets. For our purposes, these variables can be used to calculate layout widths, generate color schemes, font sizes, etc.

Another simple advantage is the fact that we can combine all our CSS styles into a single stylesheet, saving precious HTTP requests. In addition, we can easily minify generated CSS files in bundled versions of WordPress, saving file size and killing unnecessary white space, thus decreasing load times of the admin even further.

'''What are the disadvantages?'''

Developers will need to install Ruby and SASS in order to modify styles for the WordPress Admin. For plugin authors, we should write admin UI CSS in such a way that it is easily overridden with a custom CSS file.

In addition, developers would need to learn SASS if they are going to work directly on the styles for the WordPress admin. For the most part, once you've got the idea of variables, mix-ins, and the structure - you're ready to rock.

Last, but not least, when SASS files are modified, they would need to be compiled and committed to Core every time they change. So instead of pushing a single CSS file, you would be pushing potentially many SCSS files and a generated CSS file.

'''In Summary'''

SASS is a great way to reduce code overhead by adhering to DRY principles and will improve performance and modularity in the WordPress admin, which is a top priority.",chriswallace
20301,Enable media library access from blogroll,,Administration,3.3.1,normal,normal,Awaiting Review,feature request,new,,2012-03-25T08:50:37Z,2012-03-25T17:10:03Z,"Currently WordPress doesn't give you the option to easily add images from your WordPress plugin to your blogroll items (links). I just released a plugin to do that (http://wordpress.org/extend/plugins/blogroll-media-library-image/) and was told this would be a good one to add to core.

I would love to add a diff-file, but I have no idea how to do this.",illutic
24313,Filter Columns by View,,Administration,,normal,normal,Awaiting Review,feature request,new,,2013-05-11T01:18:56Z,2013-05-11T14:12:54Z,"After searching extensively for a way to do this, and discussing this with fellow WordPress developers, I believe I have found a feature that should be added to WordPress.

When you make a new custom post type, if you have WordPress register a UI for it, it outputs a screen named ""All XXXX's"". Within these, WordPress automatically adds filters. So let's say I've registered a CPT called Downloads. 

So I can now use the built in UI for Downloads and filter the page to show just pending downloads, or just published downloads, for instance.

However, the issue becomes what if you want to display a column for some views, but not others. For instance, if Downloads has a column called ""Sales"" where the number of sales of that particular download is stored, it makes no sense to show that column on Pending Downloads (since they can't have sales before being published).

Currently, at least after days of trying to find a way of doing this, there is no way to do this for the tables registered by WordPress. If I make my own List_Table, then I can do this.

However, there should be a way of adding columns based on filter, so that a developer who adds a column programmatically can go:
{{{
if($view != pending){
// register sales column
}
}}}

Feel free to correct me if I've overlooked a method of doing this.

-Chris",chriscct7
18848,Filter post listing screen by post parent,johnbillion,Administration,3.3,normal,normal,Awaiting Review,feature request,assigned,,2011-10-03T16:19:10Z,2011-10-03T18:56:58Z,"It's not possible to filter a post listing screen by post_parent. This would be super handy for hierarchical post types (eg. Pages) where you may have several levels of hierarchy and want to view only the descendants of a particular page. I'm not sure that we need a UI (eg. dropdown menu) for it, but a working URL query var would be great.

I made an attempt at patching this a while ago using the child_of parameter but it got complicated quite quickly, so I'm putting it out there as a feature request in case anyone feels like tackling it.",johnbillion
16434,"Give site admin ability to upload favicon in Settings, General",,Administration,3.1,normal,normal,Future Release,feature request,new,has-patch,2011-02-01T16:57:34Z,2013-02-14T18:13:55Z,"WordPress has come a long way in terms of making it possible for someone completely non-technical to create a professional web site for a person or business. One of the little things that is still annoyingly technical is adding a favicon. WordPress.com does this via the Blavatar feature, a name I wouldn't really want us to adopt b/c this is more CMS-oriented, but the ease of uploading an image, scaling and cropping it, then having it become the favicon is something I do want to adopt. Keeping it a theme-based thing means the non-technical can't control it for their sites, which is lame.

",jane
13516,Hide JS-only widgets on dashboard is no JS,,Administration,3.0,normal,normal,Future Release,feature request,new,,2010-05-24T13:16:42Z,2011-12-24T16:16:41Z,"We hide screen options and help; we should also hide these widgets instead of displaying by default with the 'you need JS' message. Affected modules: QuickPress, Incoming Links, Plugins, WordPress Development Blog, Other WordPress News. 

We should display an additional module for no-JS people that lets them know that their WordPress install would be even more awesome with JavaScript, and list out some of the features they would gain access to with JS enabled. ",jane
22056,Integrate a list of notices for newbie users,,Administration,3.4.2,normal,normal,Awaiting Review,feature request,new,dev-feedback,2012-09-30T14:39:40Z,2012-10-02T18:21:13Z,"Integrate a list of possible warnings and notices for the power-user (admin) if some problems or security thread occur, or to check if the site was infected with viruses and malicious .php files...

Example:
- Notice: GD Graphics Library is not installed, install this so the images could be resized
- Notice: Your site is not giving search engines the right to index the site, please consider changing the settings.
- Warning: An unknown file mail.php is in the site main directory, please check if you are not infected.
- Notice: Your site files permissions are set to 777, please change to 644 or 640, your site is in a security thread.
- Notice: Upload folder is not writable, please change permission to 755 for the upload dir.
- Notice: Please use a caching file plugin to make your site load faster than ever.
",alexvorn2
15289,Make it easier for a non-standard URL to be used to access wp-admin,,Administration,3.1,normal,normal,Future Release,feature request,new,dev-feedback,2010-11-02T13:27:05Z,2013-02-07T21:51:15Z,"For some sites it is vital that the admin be accessible via a path other than {{{/wp-admin/}}}. Clients sometimes require this because it is easier for their users. Also, it is useful if replacing another CMS with WordPress for the root of the admin to have the same URL, although this can be partially fixed with a redirect.

Even when not ''required'' per se, some of us prefer to use a different URL to access the admin because it is more intuitive for our users to use something like {{{/admin/}}} instead of {{{/wp-admin/}}}.

To be clear: I am not suggesting renaming the wp-admin directory, nor am I suggesting adding an option in the UI to change the path.

Rather, I am suggesting that small tweaks be ade to make it easier for power-users to enable the use of a different URL to access the admin area.

I suggest making the following changes :

'''1.''' Use relative urls within the admin where possible without affecting standard installations.

'''2.''' Allow power-users to add a constant to wp-config.php to change the path of the admin for those links which have to be absolute.

I don't think there is much work involved and I am happy to do it.

Core devs have in the past stated that the user of alternative urls to access the admin is 'not supported', but it is unclear whether this simply means that it doesn't work at the present time or that the core team is opposed to allowing it to happen.[[BR]]
If the latter is the case, I would appreciate an explanation - I'm sure there is a good reason if that is the case, but I can't for the life of me think what it could be. ;)",caesarsgrunt
14676,"Moderation email option is confusing, limited",,Administration,,normal,normal,Future Release,feature request,reopened,,2010-08-23T17:06:23Z,2012-05-22T00:53:20Z,"The setting is ""E-mail me whenever a comment is held for moderation"" but in that sentence ""me"" is inaccurate; moderation emails are sent to admin_email.

""Email the admin ($admin_email) whenever"" would be accurate.

Here's a related question: Why not send moderation emails to post authors?",andy
9057,"Need ""restore defaults"" buttons on all admin screens",,Administration,2.7,normal,normal,Future Release,feature request,new,,2009-02-06T08:50:30Z,2011-07-08T15:06:31Z,"Need ""restore defaults"" buttons on all admin screen items, else once
you change something, there's no way to get it back to whatever the
default was, or find out even, short of a total reinstall. Includes
""screen options"" items too.
",jidanni
12004,Select Sidebar when adding Posts/Pages,,Administration,3.0,normal,normal,Future Release,feature request,new,,2010-01-25T13:26:16Z,2010-01-25T23:28:01Z,"Hey all,

I think it would be a cool feature to be able to create sidebars in WP, and then when creating a page you can choose that specific sidebar.

I think that this can be accomplished by using the ''Parent'' page technique of selecting if the Page has a Parent and if so which one.

Can we develop an option to choose a Sidebar created in the Widgets panel?

Cheers,
Aron
ps: if my help is needed ( im good at design, not coding ) please contact me: info@zipyourmix.com ;)!",lsddesign
11972,Sort View Post/Pages by Column,,Administration,3.0,normal,normal,Future Release,feature request,new,,2010-01-21T21:46:27Z,2010-03-21T01:51:40Z,"Recently I discovered in WPMU in Site Admin options, you can sort for instance Site Admin->Blogs by last activity date. That is a very handy feature, and certainly would useful for a site with hundreds of nested pages. To be able to sort that list by date, rather than just title would be useful, as it sorts by title of the parent page, and finding a 3rd level child can be difficult to say the least. The search feature is lacking but that is for another ticket.  Likewise, sorting posts by category, author, etc could be useful. Since the functionality seems to already be there for sorting these type columns, and the code's been moved in already, I'd think it'd be a nominal change. I simply don't know what direction these menus are going yet to offer a working suggestion. Just wanted to get my 2¢ in before it's too late.",miklb
23575,Standard UI Classes and Functions,,Administration,3.5,normal,normal,Awaiting Review,feature request,new,,2013-02-21T09:09:27Z,2013-02-22T02:31:55Z,"It would be nice if wordpress allowed you to use the Post UI natively in my plugins, at the moment I've had to write a few classes for my Plugin Framework that mimic the Publish Metabox and Tabbed Metabox. 

As there is simply no easy way to do this at the moment, I think there should also be a better way of registering hidden menus. I have to jump through loads of hoops just to do this.

",jscampbell.05
17460,WP Updates througth SSH Script,bugdev,Administration,3.2,normal,normal,Awaiting Review,feature request,new,dev-feedback,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
18179,WP_Meta_Box,,Administration,,normal,normal,Future Release,feature request,new,has-patch,2011-07-20T01:05:50Z,2013-03-08T16:31:47Z,"Ryan, Nacin, and I would like to see a Meta Box class in 3.3. Let's make it happen.

Attached is a first pass (in plugin form, for ease). It provides a basic API and supports multiple instances. Instances are stored in a static meta box registry, which should require minimal interaction.

Keep in mind that meta boxes are not just registered on CPT pages — they are also used on the dashboard, in menus, and in custom UIs. The parent class should be suitable for each of these cases.

I think we should move caps to the main Meta Box class (and allow subclasses/instances to specify/override the cap through $args), and also provide $args to enable/disable any checks we perform before saving (e.g. autosave, etc).

It would also be interesting to integrate this with the proposed metadata API improvements.

See #15066 for prior discussion.",koopersmith
22734,do_action-post_edit_form_tag,,Administration,3.4.2,normal,normal,Awaiting Review,feature request,new,reporter-feedback,2012-12-04T18:01:27Z,2012-12-04T18:21:12Z,"Possible to add an action on the form for adding media.

{{{
File : /wp-admin/media.php
Line : 115
}}}

{{{
<form method=""post"" action="""" class=""media-upload-form"" id=""media-single-form"">
}}}

to

{{{
<form method=""post"" action="""" class=""media-upload-form"" id=""media-single-form""<?php do_action('post_edit_form_tag'); ?>>
}}}",bems78
16379,"Better UI for doing ""Page on Front""",,Administration,3.1,normal,normal,Future Release,task (blessed),new,,2011-01-26T19:47:25Z,2013-03-14T15:20:33Z,"[[Image(http://grab.by/grabs/132427e6c1166ed3e4d8214959b9568a.png)]]

This is the existing ""Page on Front"" UI. The process is as follows:

 1. Create a ""Front"" Page
 2. Create a ""Blog"" Page
 3. Select the ""Front"" Page in the ""Front Page"" dropdown
 4. Select the ""Blog"" Page in the ""Blog Page"" dropdown.

1 and 3 make sense. If you want a page on front, then you obviously need to create a page to live there, along with its content, and then designate it. But the ""Blog"" page is just a dummy. It's sole purpose is to create and maintain a URL for your blog. So why not just have something like this?

Blog URL: http://example.com/ {input box}

If a page exists in the URL they type, it gets used. If not, we create one on the fly as a dummy. This seems a more natural way of doing it. You don't care about the dummy page — you just want to choose an appropriate URL for your blog.",markjaquith
18655,Responsive Admin for Small Screen Devices,,Administration,,normal,normal,Future Release,task (blessed),new,,2011-09-13T18:44:16Z,2013-01-03T06:24:12Z,"Working off of #18198  -  Making the admin respond to small devices, phones, etc. ",saracannon
16339,pushState Test Case,,Administration,,normal,normal,Future Release,task (blessed),new,,2011-01-22T06:30:41Z,2011-01-27T09:42:50Z,"This isn't a useful bit of code, just a test case to ground future pushState work for 3.2.  Or be ignored by future pushState work for 3.2 :)

Attached is a test case for determining browser behavior when using pushState.

The numbered links use AJAX and pushState.  The ""Other"" link is a real (non-AJAX) link to an external site.

If the state of the page is refreshed via AJAX, you'll see a var_dump( $_POST ).  If the state of the page is refreshed by a page refresh, you won't.

An example of something this test says is broken in Safari 5.0.3 (6533.19.4):

 1. Load the page (state = 0: pageload)
 2. click ""One"" (state = 1: ajax)
 3. click ""Two"" (state = 2: ajax)
 4. click ""Three"" (state = 3: ajax)
 5. click ""Other"" (state = external site: pageload)
 6. go Back in browser history (state = 3: ajax or just history?)
 7. go Back (state = 2: ajax or just history?)
 8. go Back (state = 1: ajax or just history?)
 9. go Back (state = 0: ajax). Everything is fine up to this point, though it's odd we do an AJAX request to get here.
 10. refresh the page once, either by CTRL-R or by hitting enter in the URL bar (state = 3: ajax). That's wrong.  What happened? Why are we here?
 11. refresh the page a second time (state = 0: pageload). As expected.

An example of something the test says is broken in Chrome10.0.642.2 dev:
 1. Do pretty much anything.  Chrome Dev fires a popState event on the first page load.

It could be a badly written test, or a badly written implementation of push/popState handling, or both.  These are the kinds of scenarios we'll need to test, though.",mdawaffe
22857,'Header Image' state isn't removed from images previously used as header image,,Appearance,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-11T18:54:08Z,2012-12-11T23:04:31Z,"Steps to reproduce:

 1. Set your site's header image from Appearance -> Header by uploading an image or choosing one from your media library.
 2. Repeat step 1.
 3. Visit the Media Library and note that your previous header image still says 'Header Image' next to it.

Not a 3.5 regression as it happens in 3.4.2 too.

",johnbillion
24032,An issue with the theme customize function and jQuery tabs,,Appearance,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-04-10T15:07:04Z,2013-04-10T18:31:50Z,"WP 3.5.1 ( same happens in the 3.6 beta-1 )
No plugins installed ( vanilla WP )
TwentyTwelve Theme ( happens with TwentyThirteen as well )

So when you have or using jQuery Tabs in a page and you go to the theme customize page, the customizer panel will become sluggish and not very responsive when you hover your mouse over the accordion panel and if you look at the preview, the content is jumbled and also very sluggish.  It seems something is executing in a loop over and over again making it sluggish but I did not see anything in the error console for some reason.  Perhaps this is because it is on an iFrame.

Please note that the page in the frontend loads just fine with the jQuery Tabs and works normally.  It is only when you use the backend theme customize page is where this issue starts.

I have tried this in both 3.5.1 and 3.6 beta-1 and same results.

Here are the steps to reproduce this.

In functions.php load up:

{{{
wp_enqueue_script( 'jquery-ui-core' );
wp_enqueue_script( 'jquery-ui-tabs' );
}}}

In the homepage (any page) put in:

{{{
<div class=""test"">
<ul>
<li><a href=""#abc"">abc</a></li>
<li><a href=""#xyz"">xyz</a></li>
</ul>
<div id=""abc"">
	some content here
</div>
<div id=""xyz"">
	some other content
</div>
</div>
}}}

In theme js, put in:

{{{
$('.test').tabs();
}}}

Then go to your homepage in the frontend to confirm the tabs are working and normal.  Now go to the backend theme customize and you will see the issue I am trying to describe.",splashingpixels.com
23554,Change Header Delete Behavior,,Appearance,,normal,normal,Awaiting Review,defect (bug),new,,2013-02-20T07:11:27Z,2013-02-20T08:57:30Z,"When clicking the Remove header button, it should remove the header image from the list of images for rotation as well as remove from the currently selected image.  Currently you must delete the image from the media library (which may be several hundred or thousand images deep) to remove it from the list.",tribuseric
22148,Customizer Uploader doesn't handle large files properly,,Appearance,3.4,normal,normal,Awaiting Review,defect (bug),new,,2012-10-10T05:07:34Z,2012-11-11T18:14:45Z,"Both of these tests were with image files larger than the max file size - 3MB images with a 2MB max file size:

Dragging the file onto the upload area, the browser window redirects to the location of the local file, the same as if the file were dragged to a non-dropzone area.

When using the file browser to select the file, the upload fails silently.

In both cases, an error similar the Media Uploader would be preferable.
",pento
23225,Customizer is Incompatible with jQuery UI Tabs.,,Appearance,3.4,normal,normal,Awaiting Review,defect (bug),new,,2013-01-17T09:34:21Z,2013-05-10T03:39:09Z,"Steps to reproduce:

 1. Install the attached mfields-test-jquery-ui-tabs.php plugin.
 2. Open the Chrome console.
 3. Open the customizer and watch the console.

At this point you should see that a slew of XHR requests are triggered. If you reach a certain type of javascript error then the XHR requests will stop and the preview frame in the customizer will go blank.

It seems like jQuery UI Tabs and the customizer are currently incompatible. This will affect any theme or plugin that is using this library including the popular [http://wordpress.org/extend/plugins/genesis-tabs/ Genesis Tabs] plugin.",mfields
21890,Customizer spinner breaks button alignment with longer strings,,Appearance,3.4,normal,normal,Future Release,defect (bug),new,,2012-09-14T10:57:02Z,2012-11-08T22:01:23Z,See the screenshot.,SergeyBiryukov
22037,Customizer: Live preview fetches page but does not display,,Appearance,3.4.2,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2012-09-28T15:14:54Z,2012-11-14T17:29:37Z,"I just set-up a plain installation of 3.4.2. Configured it for multisite use. Set-up two sites, both working fine.

When going into a sites Appearance settings to customize the theme (TwentyEleven), the Customizer shows the control panel on the left, but the preview remains blank.

Firebug shows no Javascript errors.

'''It also shows, that a POST request is sent to fetch the front page and that the page is actually returned in the response. It appears the response is just not added to the right-hand preview area.'''",marcoliverteschke
22498,Disabling Header Text should not reset Header Text Color to default,,Appearance,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-11-18T22:31:17Z,2012-11-18T22:31:17Z,"In Appearance > Header, if you uncheck the 'Show header text with your image' option and Save, the Text Color option is reset to whatever the default is.

With JS enabled, the Text Color option is hidden when the checkbox is unchecked, but in no-js both options are displayed all the time. It's odd to set a header text color and uncheck the option only to have it reset your choice to the default.

Related: #22461",DrewAPicture
20729,Improve Admin Colors CSS enqueuing,,Appearance,3.1,normal,normal,Future Release,defect (bug),new,early,2012-05-22T17:19:58Z,2012-05-22T17:20:17Z,"The hacky way in which we enqueue the admin colors css means that you get different ordering of the CSS between the development version of the scripts and the script-loader sourced version of the scripts.

This can cause CSS bugs which don't show when developing but do when running with the script loader - e.g. #16827

It also makes it harder to implement a custom css concatenator.

We should do something like - http://core.trac.wordpress.org/attachment/ticket/16827/colors-hacked-fixed.diff

To make this properly enqueue the styles.

We should also make this kind of call fire a {{{_doing_it_wrong()}}} as {{{true}}} is not a url :)

{{{
$styles->add( 'colors', true, array('wp-admin') );
}}}

This code harks back from [7976]",westi
23455,Theme Customizer does not load when static Front Page is moved to Trash,,Appearance,trunk,normal,normal,Awaiting Review,defect (bug),new,,2013-02-12T12:27:37Z,2013-04-23T22:33:32Z,"Steps to reproduce:

1. Go to Pages > Add New, and publish a new page
2. Go to Appearance > Themes > Customize
3. Under Static Front Page, set this new Page as your Front Page. Save changes
4. Go to Pages > All Pages, and trash the page
5. Go back to the customizer
    * The sidebar loads, but not the preview
    * I see the following error in the console: http://i.wpne.ws/MpDR

When commenting out {{{$this->handle_404();}}} in [http://core.trac.wordpress.org/browser/trunk/wp-includes/class-wp.php#L550 wp-includes/class-wp.php#L550], the Preview appears again, but generates quite a lot of notices.

Tested with WordPress Trunk (Version 3.6-alpha-23400)",jeherve
20859,Theme Installer: Preview should be scrollable on iPad and Kindle Fire,,Appearance,3.4,normal,normal,Future Release,defect (bug),new,,2012-06-06T21:51:09Z,2012-06-08T21:10:27Z,"Related to #20805. We've added techniques for smoothly scrolling iframes when they're the only frame on the page, but the theme installer still uses the overlay technique.

We may be able to iron this out in a similar fashion. Given that the old installer also used an overlay technique, this is not a regression.",koopersmith
21492,Theme customizer > Static front page: missing error message when front page and posts pages are similar,,Appearance,,normal,normal,Awaiting Review,defect (bug),new,,2012-08-06T00:15:25Z,2012-08-06T01:11:40Z,"Steps to reproduce:

1. Activate Twenty Eleven
2. Open the Customizer
3. In ""Static Front page"", choose the same page as your front page and Posts page:
  * You do not receive any warning 
  * http://i.wpne.ws/IYAO
  * In Reading Settings, you do actually receive a warning: http://i.wpne.ws/IY2S (see http://core.trac.wordpress.org/browser/trunk/wp-admin/options-reading.php#L99 )

Would it be possible to display the same warning in the Customizer, to avoid any confusion for the users?

Related: #19627 and #16379",hd-J
20733,Theme customizer doesn't order sections based on order added,,Appearance,3.4,normal,normal,Future Release,defect (bug),new,early,2012-05-22T23:36:48Z,2013-01-21T15:16:04Z,"When adding sections to the theme customizer, sections with the same priority are given seemingly random order. From the [http://core.trac.wordpress.org/ticket/19910 original customizer ticket]:

> Settings and sections both contain priority parameters (you can specify these in the constructor or alter them afterwards) which serve as the primary means of sorting sections before they're rendered. The order settings/sections are added serves as a secondary sorting mechanism (tiebreaker) when multiple items share the same priority.

I was under the impression that if the priority was the same, the sections would appear in the order they were added. However, if you add sections A, B, and C (in that order) it seems to display them in order B, C, A.

To replicate, add this code to your theme:

{{{
add_action( 'customize_register', 'theme_customize_register' );

function theme_customize_register( $wp_customize ) {
	// Register Section A
	$wp_customize->add_section( 'theme_section_a', array(
		'title'    => 'Section A',
		'priority' => 35,
	) );
	$wp_customize->add_setting( 'theme_option_a', array(
		'type'              => 'option',
	) );
	$wp_customize->add_control( 'theme_option_a', array(
		'section'    => 'theme_section_a',
		'type'       => 'text',
	) );

	// Register Section B
	$wp_customize->add_section( 'theme_section_b', array(
		'title'    => 'Section B',
		'priority' => 35,
	) );
	$wp_customize->add_setting( 'theme_option_b', array(
		'type'              => 'option',
	) );
	$wp_customize->add_control( 'theme_option_b', array(
		'section'    => 'theme_section_b',
		'type'       => 'text',
	) );

	// Register Section C
	$wp_customize->add_section( 'theme_section_c', array(
		'title'    => 'Section C',
		'priority' => 35,
	) );
	$wp_customize->add_setting( 'theme_option_c', array(
		'type'              => 'option',
	) );
	$wp_customize->add_control( 'theme_option_c', array(
		'section'    => 'theme_section_c',
		'type'       => 'text',
	) );
}
}}}

'''Expected result:''' Sections show up in order A, B, C

'''Actual result:''' Sections show up in order B, C, A

Sorry if I'm doing something stupid, or if this isn't the intended functionality. I'm running trunk without any plugins.",andyadams
23956,jQuery UI Datepicker adds empty but visible div at bottom of page,,Appearance,3.5.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-04-06T01:52:12Z,2013-04-06T08:19:52Z,"This bug seems to be related to the [http://bugs.jqueryui.com/ticket/4111 this] jQuery UI bug, which has been fixed, but the following WordPress stylesheet seems to be making the bug re-appear:

wp-includes/css/jquery-ui-dialog.min.css

As far as I can tell, removing the following rule seems to fix it:


{{{
.ui-helper-clearfix:after {
    content:""."";
}
}}}
",julianm
22237,Add a keyboard shortcut for collapse/expand in the customizer,,Appearance,,normal,normal,Awaiting Review,enhancement,new,close,2012-10-21T02:59:31Z,2012-10-24T17:33:30Z,Can we add a keyboard shortcut to the customizer for collapsing/expanding the left panel?,designsimply
22231,Add action to provide additional options to the Custom Background page,,Appearance,3.4,normal,trivial,Awaiting Review,enhancement,new,has-patch,2012-10-19T23:27:02Z,2012-10-20T15:12:29Z,"The Custom Header feature of WordPress has an action to allow additional options to be attached to the Custom Header admin page. This patch allows the same functionality to be done for the Custom Background page.

'''Use case:''' I want to provide an option to allow the custom background image set to be responsive. If checked, the background image URL will be localized for use via the anystretch.js.",thelukemcdonald
21792,Add link to settings.general from appearance.header,,Appearance,,normal,normal,Awaiting Review,enhancement,new,,2012-09-04T19:38:50Z,2012-09-04T19:40:36Z,"Multiple users that we've tested have ended up on appearance->header when asked to change their ""site title"".  It seems logical.  Should we add a link there?",lessbloat
22348,Add support for custom background default images,,Appearance,3.4.2,normal,normal,Awaiting Review,enhancement,new,,2012-11-02T19:25:12Z,2012-11-02T19:25:12Z,"When specifying custom header default images for a theme, I always forget that you can't do the same for custom backgrounds.

It would be highly desirable to be able to set default background images, just as you can with custom headers.",dgwyer
23509,Conditional function that lets you know if your site is being viewed through the Customizer,,Appearance,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2013-02-19T01:41:24Z,2013-04-22T22:10:51Z,"I can provide a use case if necessary, but this should be relatively simple.

If I need to do something special with my theme when my site is being viewed through the customizer, there's no easy way determine if it is.

A simple `is_customizer()` (or similar) function would be incredibly useful in this scenario.

I'd write up a patch, but I don't know where to put the new function.",nathanrice
17800,Custom Header bug with deleted images,,Appearance,3.2,normal,normal,Awaiting Review,enhancement,new,,2011-06-14T12:43:15Z,2012-12-03T12:08:03Z,"I'm not a tech.
I've added images to Twenty Eleven header.
I wrong and I've deleted few images directly using ftp now you can see in the image that the header has the markers of the images without the images.

",pivari
22058,Custom background vertical position,,Appearance,3.4.2,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-09-30T16:30:29Z,2013-04-25T01:20:25Z,"For the the custom background display options there is only left, centre and right position. The top and bottom position is missing.",grapplerulrich
22880,Customize Themes without activation,,Appearance,,normal,normal,Awaiting Review,enhancement,new,,2012-12-12T11:34:51Z,2012-12-12T11:38:58Z,"Add a posibility to customize deactivated themes with the Theme-Customizer without activating them by default.
Useful for Blogs running multiple Themes between which the frontend user can switch.",kkkrys
21059,Customizer color picker has no remove button,,Appearance,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-06-24T11:34:12Z,2013-04-11T10:23:37Z,There is no remove button for color picker in the customizer. It would be great if we could remove the color or set it to the default if we don't need the color.,kcssm
22834,Live Preview should map sidebars as done on activation,,Appearance,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-12-09T12:51:00Z,2012-12-13T12:07:31Z,"'''Problem:''' 

Sidebar disappears in the live preview after theme deactivated.

'''Reproduce:'''

Fresh install of the WordPress trac:
1. Activate Twenty Ten theme
2. Click the Live Preview of Twenty Twelve
3. No sidebar in the preview

Bug 100%",alexvorn2
22182,Make core theme customizer section titles filterable,,Appearance,3.4.2,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-10-13T11:45:13Z,2013-04-19T17:11:01Z,"It would be very useful to be able to modify core theme customizer section titles by making them filterable, or by adding a setter class method to modify an existing section title.

At the moment you can't access a section title directly as it is set to protected.

Example user case scenario is if you needed to add sub controls to an existing section, then the title may need updating to reflect this.",dgwyer
21483,Theme Customizer: Use any image from media library for background image,,Appearance,3.4.1,normal,normal,Awaiting Review,enhancement,new,,2012-08-05T22:42:31Z,2013-04-11T10:28:09Z,"I suggest that users be able to use any image in the media library as a background image from the customizer. At this time, if a user changes the theme background from the customizer, he/she must upload the image. This is already available from the dashboard, under Appearance > Background - it gives the option ""Or choose an image from your media library:"" I suggest that this option available on the dashboard also be available on the customizer. A similar option should be available for header images.",jjonesftw
21455,HiDPI (retina) theme custom backgrounds,Otto42,Appearance,,normal,normal,Future Release,feature request,assigned,,2012-08-02T17:07:06Z,2012-09-15T05:22:40Z,"We should support HiDPI custom backgrounds.

This will be a bit easier than custom headers, #21389, as we can do a media query in _custom_background_cb(). Worth noting that we will still need to solve some aspect of retina uploads, #21038.",nacin
21389,Retina theme custom headers,Otto42,Appearance,,normal,normal,Future Release,feature request,assigned,,2012-07-25T19:40:56Z,2013-04-06T23:33:11Z,We should support retina custom headers. Not sure how — ideas welcome.,nacin
21666,Theme customizer reset,,Appearance,3.4.2,normal,normal,Awaiting Review,feature request,new,,2012-08-23T10:09:49Z,2013-05-18T13:13:22Z,"It would be useful to be able to reset the settings to the defaults as specified in the add_setting() class method when setting up each setting.

These could be reset on a section by section basis and/or for ALL settings.",dgwyer
21785,Add header image uploads with cropping to the customizer,,Appearance,3.4,normal,normal,Future Release,task (blessed),new,early,2012-09-04T04:56:41Z,2013-04-26T01:08:30Z,"See #21355 for an explanation for why header image uploads (sans cropping) was removed from the 3.4 branch. This ticket is about adding it back, with a crop step, to ensure proper support.",nacin
17557,"AtomPub service sends duplicate status headers, breaking FastCGI",,AtomPub,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-05-25T20:33:33Z,2011-08-08T01:00:38Z,"The AtomPub service (wp-app.php) sends duplicate Status headers when authorization is not provided, which breaks on FastCGI setups. This is seen when you attempt to connect to the service using e.g. [https://github.com/calavera/Ape Ape], resulting in the following error message in the Apache logs:

{{{
[Wed May 25 16:09:21 2011] [error] [client 10.5.62.176] FastCGI: comm with server ""/tmp/webadmin_test"" aborted: error parsing headers: duplicate header 'Status'
}}}

This results in a 500 Internal Server Error from Apache:

{{{
HTTP/1.1 500 Internal Server Error 
Date: Wed, 25 May 2011 20:09:21 GMT 
Server: Apache 
X-Powered-By: PHP/5.2.6RC4-pl0-gentoo 
Expires: Wed, 11 Jan 1984 05:00:00 GMT 
Last-Modified: Wed, 25 May 2011 20:09:21 GMT 
Cache-Control: no-cache, must-revalidate, max-age=0 
Pragma: no-cache 
WWW-Authenticate: Basic realm=""WordPress Atom Protocol"" 
Content-Length: 735 
Connection: close 
Content-Type: text/html; charset=iso-8859-1 

<!DOCTYPE HTML PUBLIC ""-//IETF//DTD HTML 2.0//EN""> 
<html><head> 
<title>401 Credentials required.</title> 
</head><body> 
<h1>Credentials required.</h1> 
<p>The server encountered an internal error or 
misconfiguration and was unable to complete 
your request.</p> 
<p>Please contact the server administrator, 
webmaster@ufl.edu and inform them of the time the error occurred, 
and anything you might have done that may have 
caused the error.</p> 
<p>More information about this error may be available 
in the server error log.</p> 
<p>Additionally, a 500 Internal Server Error 
error was encountered while trying to use an ErrorDocument to handle the request.</p> 
<hr> 
<address>Apache Server at test.news.ufl.edu Port 80</address> 
</body></html>
}}}

Patch attached to refactor Status headers in wp-app.php to use the {{{status_header}}} function like most of the code uses.  There's also a function that handles which I have refactored to use {{{wp_redirect}}}. Affects all versions back to 2.9.2, including trunk.

Examples of this issue (and corresponding fixes) include:
* #2628
* http://trac.symfony-project.org/ticket/3191",dwc
7361,Fixes for wp-app with PHP-CGI,markjaquith,AtomPub,2.9,normal,normal,Future Release,defect (bug),assigned,dev-feedback,2008-07-20T18:10:03Z,2012-10-17T18:10:44Z,"I was trying to use Atom Publishing Protocol with my blog I a have found some quirks and bugs.

My blog is hosted at Dreamhost, and, as far as I know, is using Apache 2.0.61 and PHP 5.2.6 as CGI. My first problem was, obviously, the authentication, but neither the solutions from [http://codex.wordpress.org/AtomPub the Codex] or [http://joseph.randomnetworks.com/archives/2007/09/19/http-basic-authentication-a-tale-of-atompub-wordpress-php-apache-cgi-and-ssltls/ this other blog post] worked. Reserching seems like PHP5 as CGI doesn't forward HTTP_AUTHORIZATION header, and nothing seems to change its mind. But it seems to forward REMOTE_USER as REDIRECT_REMOTE_USER. With my patch and this code in the .htaccess the authorization seems to work:

{{{
RewriteCond %{HTTP:Authorization} !^$
RewriteRule wp-app.php wp-app.php [E=REMOTE_USER:%{HTTP:Authorization},QSA,L]
}}}

The other patch is to fix a bug in the wp-app.php code. It seems that when working with PHP as CGI, the ""Status:"" header needs to follow a specific format, with the number, and then the reason. The actual code (from Subversion, but it's there at least from version 2.5.1) do not send the number, making CGI/PHP/Apache to return with a ""500 Internal Server Error"" instead the ""401 Credentials Requiered"", confusing Atom clients. My other patch fixes this.",yonosoytu
18060,image upload handling between atompub and xmlrpc different,,AtomPub,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-07-10T12:33:27Z,2012-06-17T12:58:30Z,"Uploading images via XMLRPC generates different image sizes in addition to the original image. Uploading the same image through AtomPub will only create a single original file in the uploads/year/month/ directory, the thumbnail and different formats normally generated on upload are missing. It is probably because wp_handle_upload is missing from the wp-app.php create_attachment definiition - it only uploads the bits and creates an attachment, but neither handles metadata updates nor image thumbnail generation.",rfc1437
19915,Add unit tests for AtomPub API,rmccue,AtomPub,,normal,normal,Awaiting Review,enhancement,new,,2012-01-28T16:25:15Z,2012-09-17T05:52:57Z,"Apologies if this is a duplicate, I couldn't find any.

The AtomPub API is hideously under-tested. Since it's a part of WordPress that doesn't get touched often, it's also one of the most crucial components that needs testing.

I'm working on [https://github.com/rmccue/Gorilla a test runner called Gorilla], which is designed as a replacement for the APE (Atom Protocol Exerciser). This will have a port of all the APE unit tests to PHP, and I'm also going to start writing some new ones for all the new APIs that are being added in #18430, #18431, #18432 and #18433.

These are specifically designed to be able to be independent of Gorilla, so that it will be easy to bring into a normal PHPUnit test suite, and hopefully will be able to run as part of the normal WordPress unit test suite. (Although they'll still need some components of Gorilla to work)

(This is filed under Unit Tests, but AtomPub might be a better component)",rmccue
7301,AtomPub interface should accept new categories provided by clients,josephscott,AtomPub,2.6,normal,normal,WordPress.org,enhancement,reopened,,2008-07-15T04:54:22Z,2012-10-31T16:25:19Z,"The AtomPub interface successfully exposes access to the existing categories of a particular blog, via the URL:

http://[myblog]/wp-app.php/categories

But the category listing is identified as ""fixed"", and this pans out. When a  client attempts to provide a category term with a name that has not been seen before, the interface just ignores it.

It would be a nice enhancement to change the category collection to an editable one, and support provision of arbitrary new category names on supplied posts to the wp-app interface.

As it is now, there is no way to add categories via the AtomPub interface.


",redsweater
9513,Wordpress should allow input of XHTML/HTML via Atompub,josephscott,AtomPub,,normal,normal,Future Release,enhancement,new,,2009-04-11T23:38:51Z,2011-03-14T09:50:06Z,"One of the intended purposes of Atom standard was to allow better way of including XHTML in the feed than with “escaping it” (see this [http://www.xml.com/pub/a/2003/08/20/embedded.html article by Norman Walsh in xml.com] with followup at [http://norman.walsh.name/2003/06/30/hardline 1], [http://norman.walsh.name/2003/09/18/unescmarkup 2], and [http://norman.walsh.name/2003/09/16/escmarkup 3], there is also [http://www.intertwingly.net/blog/1571.html an interesting discussion under this blogpost] and [http://www.tbray.org/ongoing/When/200x/2003/06/28/Learning Tim Bray’s essay on the same theme]) Even though even [http://norman.walsh.name/2003/09/16/escmarkup#comment0006 Norm agrees that he lost this fight], at least Atom provides ''opportunity'' for conscious authors to use namespaced XML properly.

Now, of course, the problem is that all this beauty is not supported by any known-to-me Atompub-accepting blog server. Particularly when this perfectly valid Atom 1.0 feed (take a look at [http://validator.w3.org/feed/#validate_by_input validator] if you don’t believe me):

{{{
<?xml version=""1.0"" encoding=""utf-8""?>
<atom:feed xmlns:atom=""http://www.w3.org/2005/Atom"" xmlns:dc=""http://purl.org/dc/elements/1.1/"" xml:lang=""en"">
  <atom:title>Late Night Thoughts on Listening to Mahler’s Ninth Symphony</atom:title>
  <atom:updated>2009-04-08T00:13:32+02:00</atom:updated>
  <atom:link rel=""alternate"" type=""text/html"" href=""http://matejcepltest.wordpress.com/""/>
  <atom:link rel=""self"" type=""application/atom+xml"" href=""http://matejcepltest.wordpress.com/feed/""/>
  <atom:author>
    <atom:name>Matěj Cepl</atom:name>
    <atom:email>ceplm@seznam.cz</atom:email>
  </atom:author>
  <atom:id>http://matejcepltest.wordpress.com/</atom:id>
  <atom:rights>Copyright 2007 Matej Cepl</atom:rights>
  <atom:entry>
    <atom:title>John 3:17 or The Golden Middle Ground Between Grace and Sanctification?</atom:title>
    <atom:link rel=""alternate"" type=""text/html"" href=""$url""/>
    <atom:id>urn:mc:ceplovi.cz:atom1:blog:jan-3_17-2008-07-10</atom:id>
    <atom:updated>2008-07-13T00:00:00+02:00</atom:updated>
    <dc:subject>John 3:17 or The Golden Middle Ground Between Grace and Sanctification?</dc:subject>
    <atom:content type=""xhtml"" xml:lang=""en"">
      <div xmlns=""http://www.w3.org/1999/xhtml"">
        <p>There is a couple of things, which make for me sense together
  	(and I am not sure, of course, whether they will make sense to you
  	as well), and which I would like to record here.</p>
        <p>“<span class=""scripture"">For God sent not his
  	Son into the world to condemn the world; but that the world
  	through him might be saved.</span>” (J. 3:17)  In some aspects and for some
  	people (like me) and in certain moments, this is even more important
  	than the previous verse, and yet it is quite rarely mentioned in the
  	Church. Maybe because it so clear, that nobody gets much fame to explain
  	(and there is not much to explain here?). For all of us, who live with
  	the idea of God-policeman, following our doings to punish severely any
  	small misstep, this is the good news.</p>
        <p>There is quite certainly something significantly wrong about preaching,
  	that we always quote only  (John 3:16)  and
  	we don’t continue one verse further. As if we are still more interested in what’s
  	there in gospel for me, and we don’t understand, that we are not the central figures
  	in whole Bible. Not that there wouldn’t be anything there for us, but … that’s another long
  	discussion I would like to have with Dave.</p>
      </div>
    </atom:content>
  </atom:entry>
</atom:feed>
}}}

is sent to Wordpress.com I get [http://matejcepltest.wordpress.com/2009/04/08/john-317-or-the-golden-middle-ground-between-grace-and-sanctification/ rather disasterous result].

According to [http://article.gmane.org/gmane.comp.web.wordpress.devel/27067 Peter Westwood] wordpress treats all content delivered by different modes of remote publishing as the same dummy plain text.

OK, so the request of this ticket (and hopefully place of further discsussion if necessary) is to fix this and make <atom:content type=""xhtml""> considererd and delivered so that wordpress would just accept the nodetree inside of such element as a body of the blogpost without much further changes.

Also #6128 might be caused by this.",mcepl
15069,Autosave function assumes that there is only on tinyMCE on the page,,Autosave,3.0.1,normal,normal,Future Release,defect (bug),new,early,2010-10-08T10:28:12Z,2011-01-14T09:35:22Z,"Autosave javascript assumes there is only one tinyMCE instance on the post editor page, thus breaking autosave feature under the next circumstances:
1. Content editor is in HTML mode
2. Some custom tinyMCE instances are added to the page by some plugin or theme.

A patch that fixes that problem is attached.",karevn
11049,Page Preview does not autosave page template,nacin*,Autosave,2.8.4,normal,normal,Future Release,defect (bug),accepted,dev-feedback,2009-10-30T21:19:34Z,2012-10-12T17:57:32Z,"When editing a published page, if you change the page template and then click Preview, the preview does not show the new template choice. ",janeforshort
23691,Visiting post-new.php using the back button overwrites an existing post,,Autosave,,normal,normal,Awaiting Review,defect (bug),new,,2013-03-04T18:54:46Z,2013-03-04T18:54:46Z,"1) visit post-new.php
2) write a post
3) publish it
4) click back in your browser
5) write a new post
6) if you save it as draft or publish it, it will overwrite the old post

Reproducable in Firefox, Chrome and Safari.",jkudish
22601,Make post content autosave work more generically,,Autosave,,normal,normal,Awaiting Review,enhancement,new,,2012-11-27T04:00:31Z,2012-12-14T23:51:36Z,"The JS for autosave/AYS looks for the contents of `#post #content`. While we should fix the other JS issue related to targeting `#content` in #22600, it seems that autosave/AYS should be looking for the textarea (or whatever type of input) with the name of content instead, since having that data in the form will save to the post content. That way, if somebody does choose to use a different ID but the right input name, the autosave benefits will kick in.

Discovered while working on #22491.",helen
4337,Blog by Email: No content is assumed,westi*,Blog by Email,2.2,high,major,Future Release,defect (bug),accepted,,2007-05-25T18:59:09Z,2013-02-05T03:14:40Z,"It seems, the Blog by Email functions is broken in WP 2.2.
Mails are recognized, but only the title/subject is assumed - no content. Content is empty :(
No matter if text email or html email.


{{{
Author = bla@example.org 
 
Content-type: text/plain, Content-Transfer-Encoding: 8bit, boundary: 
 
Raw content:
 
Author: 1
 
Posted title: Test
Posted content:
 
Mission complete, message 1 deleted.
}}}
",jottlieb
4965,Blog by Email: any images and attachments in your email are not being posted inline,westi,Blog by Email,2.3,normal,normal,Future Release,defect (bug),new,,2007-09-12T18:15:29Z,2009-10-11T21:07:33Z,"Blog by Email: any images and attachments in your email are not being posted inline

Remaining issue from #4829.",foolswisdom
19960,Problem posting by email from MailChimp,,Blog by Email,3.3.1,normal,major,Awaiting Review,defect (bug),new,reporter-feedback,2012-02-04T01:24:20Z,2012-09-15T19:18:09Z,"Blog by email seems to have a strange bug. 

If I try to post something by email from my gmail account, it works fine. But if I send the email via MailChimp, the posting doesn't work. No post is created, published or draft...it's as if the mail was never received by WordPress

This applies to both self-hosted WordPress and wordpress.org

I have tried doing the same thing with other services such as blogger.com, and it works fine there.",sooskriszta
21554,Problem with determining e-mail charset in wp-mail.php,lizhenry,Blog by Email,3.4.1,normal,normal,Awaiting Review,defect (bug),assigned,dev-feedback,2012-08-12T11:06:52Z,2012-08-29T13:58:26Z,"In wp-mail.php the charset of the incoming e-mail message is determined on line 77 by taking the string between the second ""="" in the line and the end of line/second "";"" respectively.

'''The problem'''

If the header line in question looks like any of the following that method is perfectly fine:

{{{
Content-Type: text/plain; charset=UTF-8; format=flowed; delsp=yes
Content-Type: multipart/alternative;
}}}

However in messages sent from e.g. Gmail or Goolge Reader this header line usually looks like this:

{{{
Content-Type: multipart/alternative; boundary=f46d044516dd9cd71f04c70e55e8
}}}

I this case ""f46d044516dd9cd71f04c70e55e8"" is determined as the charset and the iconv function further down on line 187 returns false which causes the post content to be emptied.

'''Suggested solution'''

I personally think that it is better to have the post published with an ""incorrect"" charset than with no content at all. 

Therefore I suggest that on line 76 in wp-mail.php...

{{{
if ( ! empty( $content_type[1] ) ) {
}}}

...is replaced by...

{{{
if ( ! empty( $content_type[1] ) && stripos( $content_type[1], 'charset' ) !== FALSE ) {
}}}

...in order to check if there is actually a charset definded.

Alternatively/additionally the return value of the iconv function on line 187 should be checked and the $content variable only modified if the return value doesn't equal FALSE.",mighty_mt
5915,Same problem as in #252: apop broken if zero occurs in banner in 2.3.3 class-pop3.php,westi*,Blog by Email,2.3.3,normal,normal,Future Release,defect (bug),accepted,has-patch,2008-02-19T05:21:02Z,2009-10-11T21:08:22Z,"While extracting the banner (function parse_banner) in preparation for apop, the empty method is called on $digit which when zero returns false and hence doesn't get put into the resultant $banner.

Example parse_banner reply with <14649.123343777@code-werk.net> but the string was ""+OK ready <14649.1203343777@code-werk.net>""
or another example
""+OK ready <14649.1203343777@code-werk.net>"" and $pop3->parse_banner give back <14419.12334323@code-werk.net>

then a md5($AuthString) must fail, because the 0 is significant by apop.

I put a workaround at http://www.babsi.de/silentapop/, that does it for me, but this touch also wp-main.php

",ASonno
5252,base64-encoded post-by-email post garbled.,westi*,Blog by Email,2.3,normal,normal,Future Release,defect (bug),accepted,,2007-10-24T08:58:20Z,2009-10-11T21:07:58Z,"When posting-by-email, my cellphone submits code using ""content-transfer-encoding: base64"". The message appears (output from wp-mail.php) like so:

Author = [my email] <p><p><b>Content-type:</b> text/plain, <b>Content-Transfer-Encoding:</b> base64, <b>boundary:</b> </p>
<p><b>Raw content:</b><br /><pre>SnVzdCB0ZXN0aW5nIHBvc3RpbmcgZnJvbSBteSBjZWxsLiBTdHJ1Y2sgbWUgd2hpbGUgcmVh
ZGluZyAgUmFwaCBLb3N0ZXIncyBwb3N0cyBhYm91dCB0aGUgZmlyZXMgaW4gQ2FsIHRoYXQg
YmVpbmcgYWJsZSB0byBwb3N0IHRvIHlvdXIgYmxvZyBmcm9tIGEgY2VsbHBob25lIGlzIGEg
dXNlZnVsIGZlYXR1cmUuIA==</pre></p>
<p><b>Author:</b> 1</p>
<p><b>Posted title:</b> =?utf-8?B?Q2VsbHBob25lIHBvc3RpbmcgaW4gV1A=?=<br />
<b>Posted content:</b><br /><pre>SnVzdCB0ZXN0aW5nIHBvc3RpbmcgZnJvbSBteSBjZWxsLiBTdHJ1Y2sgbWUgd2hpbGUgcmVh
ZGluZyAgUmFwaCBLb3N0ZXIncyBwb3N0cyBhYm91dCB0aGUgZmlyZXMgaW4gQ2FsIHRoYXQg
YmVpbmcgYWJsZSB0byBwb3N0IHRvIHlvdXIgYmxvZyBmcm9tIGEgY2VsbHBob25lIGlzIGEg
dXNlZnVsIGZlYXR1cmUuIA==</pre></p><p>Mission complete, message <strong>1</strong> deleted.</p>

The provided patch detects base64-encoded content transfers and base64_decodes them. For some reason (I'm no utf8-expert) the TITLE of the post has ""=?utf-8?B?"" prepended to the actual base64 content (see above), which means a check for this string + a cropping is needed or base64_decode will not decode the post title properly.",kallewoof
16993,wp-mail.php doesn't account for half-hour and quarter-hour timezones.,,Blog by Email,3.1,normal,trivial,Future Release,defect (bug),new,has-patch,2011-03-29T06:55:06Z,2012-11-07T22:14:58Z,"To reproduce the problem, install Wordpress and set it to post by email. Send a post from an email address which is configured to use a half-hour or quarter-hour timezone (like Afghanistan, +0430).

wp-mail.php calculates the timezone by multiplying the timezone offset by 36. This works fine for whole-hour timezones (Pacific Time -0800, -800 * 36 = -28800 seconds). For half-hour and quarter-hour time zones this does not work (Afghanistan +0430, 430 * 36 = 15480, should be 16200). The reason this happens is because an hour has 60 minutes as opposed to 100  minutes. 430 / 100 = 4.3 hours, not 4.5 hours. 450 * 36 result in 16200 minutes, but timezones are represented as hours and minutes, not fractional hours.

This results in posts that are posted via email from a half-hour or quarter-hour timezone to be posted in the future or in the past from when it was actually posted.",neoscrib
22942,Deprecate Post by Email,,Blog by Email,3.5,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-12-14T16:48:46Z,2013-05-01T16:18:38Z,"We said last year that we'd remove the post by email functionality from core as it was better suited for plugins.  The Jetpack plugin has already added this functionality and, honestly, includes better functionality than the core version.

We should move forward with our plans to remove this feature.

I recommend ''deprecating'' it similar to the way the link manager was removed in 3.5.  Essentially:

* New WordPress installations will never see the core feature
* Existing installations that aren't using it won't see it any more
* Existing installations that ''are'' using it will see a notice explaining they should switch to a plugin instead as the feature will be completely removed in the future

Basically, I want the option to go away, but I don't want anyone to start a riot if we remove a tool they're actively using.",ericmann
19984,Issue with Default Post Format,,Blog by Email,3.3.1,normal,major,Awaiting Review,enhancement,new,has-patch,2012-02-07T20:29:41Z,2012-08-24T01:34:27Z,"I set my Default Post Format as Aside. So I expect all my posts via email will appear as Aside, same as Default Post Category does perfectly while post via email. But it is always posting as Standard whenever I post by email. Kindly fix this. Wordpress is Awesome :)",binarymag
14798,Twenty Ten Theme - adding an extra skip link,,Bundled Theme,,normal,normal,WordPress.org,defect (bug),new,,2010-09-07T12:07:33Z,2012-08-09T20:12:48Z,"Being able to skip to content is good, but currently there is no easy way to jump to the sidebar menu. 

In order to add this extra skip (jump to menu) link I've changed the div to ul. CSS changes are similar to #14795 but tweaked to allow for the new markup.

",elfin
24143,"When define('WP_CONTENT_DIR', 'your-dir') twentythirteen - The theme directory does not exist.",,Bundled Theme,3.4,normal,normal,Awaiting Review,defect (bug),reopened,reporter-feedback,2013-04-20T10:08:16Z,2013-05-06T22:57:39Z,"If you use either of following in you wp-config.php you'd automatically get a Broken Themes.

{{{
define('WP_CONTENT_DIR', 'your-dir');
define('WP_CONTENT_URL', 'your-url');
}}}

The following themes are installed but incomplete. Themes must have a stylesheet and a template.

Name 	Description

twentythirteen 	The theme directory does not exist.",azizur
14782,"Accessibility: Twenty Ten Theme - links, forms, skip link",,Bundled Theme,,normal,normal,WordPress.org,enhancement,new,,2010-09-04T15:50:01Z,2012-09-27T13:42:46Z,"Starting off with changes to the CSS only.

Links: colors amended where necessary. added underscores and/or color changes for active, hover and focus.

Gallery image links: adjusted things to use margin to center the image rather than padding, to allow for adding highlighting on image links.

Skip link: now appears above the #access menu when tabbing through the page.

Grey text/links: was 888 this just failed the color contrast, so changed it to 777 throughout.

Forms: added highlight for input text and textarea, for active and focus.",elfin
21506,Standard Theme Hooks,,Bundled Theme,,normal,normal,Awaiting Review,enhancement,new,,2012-08-07T02:10:55Z,2013-03-28T22:12:58Z,"During the hack day at WordCamp SF, Konstantin Kovshenin and I sat down to work out a solution to allow for better communication between themes and plugins. We propose that core introduce 4 new hooks into the default WordPress themes allowing plugins to add custom markup relative to common theme elements. While many other theme locations could be recognized, we have only included hooks that we could provide at least three use common use cases for.

header_after: Allows custom markup to be inserted after all visual header elements have rendered. Possible use cases for this hook include:

 * Breadcrumb navigation.
 * Links to social profiles.
 * Advertising.
 * log in/out form.

post_after: Allows custom markup to be inserted after all visual elements have rendered for the current global post object. This hook would fix the issue originally reported in #18561. Possible use cases for this hook include:

 * Sharing links.
 * Related posts.
 * Ratings.
 * Author bio.

comment_after: Allows custom markup to be inserted after all visual elements have rendered for the current global comment object. Possible use cases for this hook include:

 * Upvote/Downvote control.
 * Ratings.
 * Show/hide threads functionality.

footer_after: Allows custom markup to be inserted after all visual elements have rendered for the footer. While this action is similar to {{{wp_footer}}}, it would be possible for the theme author to move this into nested html elements. To my knowledge, {{{wp_footer}}} is intended to fire immediately before the closing {{{body}}} tag. Possible use case for this hook include:

 * Links to social profiles.
 * Advertising.
 * The ""small print"" or copyright information.

If standardized hooks such as these were recognized by core, it would also have a positive effect on child theming. Theme authors would no longer need to override entire files just to introduce an element of two.

We have prepared 3 patches for the default themes to demonstrate placement of these hooks as well as a plugin to demonstrate their usage.",mfields
23184,Twenty Eleven/Twelve: Mismatched lines in GitHub Gists,,Bundled Theme,3.5,lowest,normal,WordPress.org,enhancement,new,close,2013-01-11T19:29:36Z,2013-04-26T14:26:57Z,"GitHub Gists are displayed with the code and line numbers misaligned, due to the difference in font-size and/or line-height of `<pre>` and `<table>` elements. 

Originally reported in [http://wordpress.org/support/topic/gists-look-crazy-with-twenty-twelve this thread] and on wp.com.

Example: http://themebuster.wordpress.net/gist-test/",obenland
24128,Twenty Eleven: add postMessage support for header_textcolor,,Bundled Theme,,normal,normal,Future Release,enhancement,new,has-patch,2013-04-18T17:43:32Z,2013-04-23T16:53:14Z,"Similar to Twenty Twelve and Twenty Thirteen, this would add immediate visual feedback in the Theme Customizer UI when header text is hidden, or its color value changes.",lancewillett
14791,Twenty Ten Theme - Better Link Highlighting,,Bundled Theme,,normal,normal,WordPress.org,enhancement,new,,2010-09-07T10:18:19Z,2012-09-27T13:42:49Z,mainly changing the state of text decoration(underline/none). This aids users that tab through links on a page identify where they are.,elfin
14792,Twenty Ten Theme - gallery changes,,Bundled Theme,,normal,normal,WordPress.org,enhancement,new,,2010-09-07T10:22:33Z,2012-09-27T13:42:52Z,"With reference to #14791 those changes will produce an ugly 10px wide border in red on focus/hover etc. This patch does fix this, at the expensive of top/bottom margins. This therefore may need an additional patch before it can be applied.",elfin
23834,Twenty Thirteen: add visual Indicator for menu items with children,,Bundled Theme,trunk,normal,normal,Future Release,enhancement,new,,2013-03-21T04:07:43Z,2013-03-21T23:38:44Z,"It's helpful to have a visual indicator when a top level menu item contains a hidden drop down menu.

This patch adds a filter to wp_nav_menu_objects in order to add the class ""has-children"" to top level menu items that contain children.  This allows us to style it with psuedo element, similar to how the menu-toggle is styled for smaller screens.

The filter I used was posted by @chipbennet on the WordPress Theme Reviewers List. The same functionality could also be achieved by a Custom Nav Walker (see http://wptheming.com/2013/03/drop-down-menu-indicator/), but Chip's solution seemed more straightforward.

Neither method works unless a menu has actually been set.

",downstairsdev
23662,Twenty Twelve: style.css with Table of Contents,,Bundled Theme,3.5,normal,normal,Future Release,enhancement,reopened,has-patch,2013-03-02T00:44:33Z,2013-03-15T18:08:49Z,"Hello, I really like the 2013 initiative with Table of Contents, because it helps new users understand where goes what, especially developing child themes.

I added Table of Contents to Twenty Twelve theme and renamed CSS comments titles accordingly.",TomasM
15385,Use get_template_part() for post formats in Twenty Ten,,Bundled Theme,,normal,normal,WordPress.org,enhancement,new,,2010-11-11T13:36:47Z,2013-02-19T04:25:57Z,"Let's encourage some standardization in themes by giving Twenty Ten the following:
{{{
get_template_part( 'post-format', 'aside' );
get_template_part( 'post-format', 'gallery' );
}}}
We'll leave the default in loop.php, I'm thinking, though we could also use post-format-default.

I'm going to comment on #14746 that I think, if post formats are supported, then 'default' should always be supported and should be enforced as the default, even if nothing is stored yet for that post.",nacin
23330,"Allow autoloading all options, not just autoload = yes options",,Cache,3.5.1,normal,normal,Future Release,defect (bug),new,,2013-01-30T21:12:57Z,2013-02-21T04:26:41Z,"For 5 years on wordpress.com we have ignored the autoload field for options. In wp_load_alloptions(), autoload = yes is not part of the query. Why? Because wordpress.com has a persistent cache. Thus, the transients that constitute the bulk of autoload = no options are stored in cache, never in the options table. Querying autoload=yes makes the query slower for no reason.

Having autoload = no options also complicates notoptions caching. Core has a notoptions cache that would be unnecessary if you can assume that wp_load_alloptions() loads every option. If an option is not in alloptions, then it does not exist.

Other large sites that use a persistent cache might also like to ignore the autoload flag. Core could automatically switch to ignoring autoload when an external object cache is being used, but administrators might want to control this so they can clean out old transients from options tables and do whatever other housekeeping is desired. So, let's add a filter that allows toggling this. When autoload is being ignored the wp_load_alloptions() query does not include autoload=yes and notoptions is not used.",ryan
22661,Allow object caches to degrade gracefully,,Cache,,normal,normal,Awaiting Review,defect (bug),new,,2012-11-30T20:53:57Z,2013-01-10T00:08:36Z,"Because of the way object caches are loaded, if a custom object cache can't run (say, Memcached or APC is not actually installed), it cannot gracefully degrade to the built-in object cache.

Witness this code in {{{wp_start_object_cache()}}}:

{{{
 	if ( ! function_exists( 'wp_cache_init' ) ) {
		if ( file_exists( WP_CONTENT_DIR . '/object-cache.php' ) ) {
			require_once ( WP_CONTENT_DIR . '/object-cache.php' );
			$_wp_using_ext_object_cache = true;
		} else {
			require_once ( ABSPATH . WPINC . '/cache.php' );
			$_wp_using_ext_object_cache = false;
		}
		$first_init = true;
	} else if ( !$_wp_using_ext_object_cache && file_exists( WP_CONTENT_DIR . '/object-cache.php' ) ) {
		// Sometimes advanced-cache.php can load object-cache.php before it is loaded here.
		// This breaks the function_exists check above and can result in $_wp_using_ext_object_cache
		// being set incorrectly. Double check if an external cache exists.
		$_wp_using_ext_object_cache = true;
	}
}}}

So a custom object cache is loaded. If it wants to bail and defer to the built in object caching, it can do that by doing the include itself. But then WordPress sets {{{$_wp_using_ext_object_cache = true;}}} '''after''' that require. So WordPress thinks it is using an external object cache when it's actually not. This leads to oddness.

This can sometimes be hacked around by adding a callback to the very first WP action available that sets {{{$_wp_using_ext_object_cache = false;}}}, but that has issues: calls to the object cache might be made before that code can run, and {{{add_action()}}} is not always available at that point (because some {{{advanced-cache.php}}} drop-ins load the object cache really early. See Batcache.

Proposed solution: change the order of the {{{require_once()}}} and the setting of {{{$_wp_using_ext_object_cache}}}. That way, the external object cache can override the variable.",markjaquith
22526,Changing category doesn't invalidate cache,,Cache,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-11-21T11:55:37Z,2012-11-21T11:55:37Z,"Hi,

I am using object-cache.php Memcached v2.0.2 (Dropins) with the current WordPress version, but I don't think this has anything to do with the dropin.

I noticed that category changes don't invalidate/update the cache.

For example:
1. Create a category ""Foo"".

2. Assign some postings to ""Foo"".

3. View your postings in backend and frontend, so that results get cached.

4. Rename ""Foo"" category to ""Bar"".

5. Reload some postings, which are in that category. But they still display the old ""Foo"" category instead the new ""Bar"" category name.

Flushing memcached would ""solve"" this problem, that's why I think renaming categories don't invalidate/update the cache.",Whissi
24244,Clean post cache when post was moved to trash,,Cache,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-05-02T00:36:22Z,2013-05-02T00:36:22Z,Clean post cache when post was moved to trash,m_uysl
22683,Don't load advanced-cache.php when running via CLI,,Cache,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-12-02T18:46:48Z,2012-12-03T20:05:29Z,"When you're loading WP via a command-line program, it doesn't make much sense for a plugin like WP Super Cache to take over. It's not like you have thousands of CLI users hammering the install.

Example issue in wp-cli: https://github.com/wp-cli/wp-cli/issues/164",scribu
21267,Kill the serialization of $wp_filter in get_terms(),,Cache,,normal,normal,Future Release,defect (bug),new,has-patch,2012-07-13T21:35:11Z,2013-01-22T19:35:23Z,"We use this as part of a persistent cache key:

{{{
serialize($GLOBALS['wp_filter']['list_terms_exclusions'])
}}}

See [8225].

This is not good for two reasons. First, well, it's a not fun to reach into our internal API like that. But worse, it's broken whenever an object method is used, because spl_object_hash() will be unique to that object, thus rendering the cache invalidated on the next pageload.

As an aside, we should probably have _wp_filter_build_unique_id() create a delimiter when dealing with a static class method — `$function[0].$function[1]` can conflict with a legitimate function name.

I'm not sure how this should be fixed.",nacin
22478,Remove $force argument from WP_Object_Cache::delete(),,Cache,3.4.2,normal,normal,Future Release,defect (bug),new,,2012-11-16T19:02:07Z,2012-11-16T19:02:07Z,This was introduced way back in [3086] and hasn't been needed for years.,ryan
11531,Some taxonomy names should be disallowed,ryan,Cache,2.9,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2009-12-20T14:30:46Z,2013-05-16T15:05:44Z,"I haven't tested, but can't we can get all sorts of weird bugs (some of which could have potential side effects in the security department) if a term taxonomy is called users, userlogins, posts, etc.?

the reason are lines such as:

{{{
wp_cache_add($term->term_id, $term, $term->taxonomy);
}}}
",Denis-de-Bernardy
14485,Taxonomy hierarchy cache isn't properly refreshed,,Cache,3.0,high,normal,Future Release,defect (bug),new,needs-unit-tests,2010-07-31T03:11:13Z,2013-04-30T20:46:25Z,"I've developed a plugin that can create parent and children categories at the same time. It works well at 2.8.6 but it doesn't work as what I expect at 3.0.

When I create new parent and children categories at the same time, it only shows parent category in the Categories dashboard, but the children category is actually created. If I create another category or delete one category, the children category shows up. I think it should be a problem of wordpress cache, but I have no idea where to start tracing.

I use wp_create_category at wp-admin/includes/taxonomy.php to create categories. Besides, I have tried clean_term_cache but it didn't help. And I didn't activate other plugins when I tested this plugin.

It happened exactly when creating NEW parent and children categories.",thealien
22174,"_get_non_cached_ids() should use wp_cache_get_multi(), if available.",,Cache,3.4.2,normal,normal,Future Release,defect (bug),new,,2012-10-12T14:12:40Z,2013-01-10T00:10:20Z,Add wp_cache_get_multi() to all cache backends and conditionally use it in _get_non_cached_ids() so that post objects can be fetched from cache in parallel.,ryan
21650,replace serialize() with print_r() in stats() function in wp-includes/cache.php,,Cache,3.4.1,normal,minor,Awaiting Review,defect (bug),new,has-patch,2012-08-21T13:42:29Z,2012-09-10T15:17:49Z,"In PHP 5.3 it is no longer possible to serialize data that contains a SimpleXMLElement object. It produces a fatal error. See https://bugs.php.net/bug.php?id=49800

The stats() function attempts to determine the allocated space for objects in the cache by using strlen() of the serialized object.

This can fail for the reason above.

Given that the figure returned is simply an estimation of the space 
I propose that the code is changed to use 
print_r( $cache, true ) instead of serialize( $cache )

ie. to become
`echo ""<li><strong>Group:</strong> $group - ( "" . number_format( strlen( print_r( $cache, true ) ) / 1024, 2 ) . 'k )</li>';`



This TRAC was raised after a longish chain of events starting with #18488 and the final response (today) which led to another chance discovery of a similar problem in the debug-bar plugin.

http://wordpress.org/support/topic/plugin-debug-bar-fatal-error-uncaught-exception-serialization-of-simplexmlelement-is-not-allowed



",bobbingwide
14254,update_meta_cache fails; query too large?,,Cache,2.9.2,normal,normal,Awaiting Review,defect (bug),reopened,dev-feedback,2010-07-09T19:49:22Z,2013-03-13T10:10:05Z,"In the file meta.php, around line 183 in the 'update_meta_cache()' function, it tries to do a query but I noticed this can fail (ie. crash wordpress) if there are too many post id's in the query.

The function is being called from query_posts(), with 'posts_per_page' set to -1.

An example query that crashed it:
{{{
SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (1009,1006,989,933,902,860,859,858,857,793,838,837,836,827,825,310,780,777,776,775,774,773,770,763,760,759,758,757,728,756,755,754,753,752,751,750,748,746,
732,736,729,726,725,724,723,722,720,719,717,716,715,710,709,503,692,289,625,268,593,583,582,332,32,30,28,26,24,22)
}}}
Maybe there is some limit associated with queries of this type internal to wordpress, as this query works fine in phpMySql.

Apologies if this is already reported or irrelevant in 3.0!
",newpixel
21879,wp_count_posts() cache is not destroyed after post inserts and deletions,,Cache,3.4.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-09-13T01:23:38Z,2012-09-13T02:11:19Z,"`wp_count_posts()` caches its results, but that cache is not destroyed when posts are inserted, deleted, or transitioned. This can lead to incorrect counts.

The attached patch fixes that (although it doesn't destroy the cache set when `$perm='readable'` in `wp_count_posts()`, which would be more complex as we wouldn't know the name of the key(s), though it could be done with `preg_match`).

",mark8barnes
21330,Allow filtering of expiration in set_transient(),,Cache,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-07-20T20:51:23Z,2012-09-17T18:32:01Z,"I recently needed to change an expiration of a transient and expected pre_set_site_transient_* filter to be able to do that. However, the filter only affects the value. I recommend adjusting this to affect both.",wpsmith
22176,Cache the results of the posts_request_ids query,,Cache,3.4.2,normal,normal,Future Release,enhancement,new,,2012-10-12T14:59:37Z,2013-01-10T00:11:47Z,"We are to the point where we could replace the advanced post cache plugin with something in core that is far simpler. We're most of the way there since introducing the split query. And with #22024 we have a good way of doing per-blog cache invalidation for classes of objects, which would be needed by this. Leveraging wp_cache_get_multi() as suggested in #22174 would provide a complete replacement for the adv post cache plugin.  http://plugins.svn.wordpress.org/advanced-caching/trunk/advanced-caching.php",ryan
19564,Helper function for getting/setting cache data,,Cache,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-12-15T15:02:09Z,2011-12-15T16:00:55Z,"Most of the time when we want something from the object cache we go through a routine of: wp_cache_get(); checking a result; setting a default; setting the cache with wp_cache_set(); returning. Core should offer a neat way to do this all in one fell-swoop.

Attached patch is a proposed solution.",johnjamesjacoby
21412,Hookable dropins,,Cache,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-07-29T03:59:34Z,2012-07-30T22:12:02Z,"This ticket is the result of a discussion on the wp-hackers list where I proposed the idea in [http://lists.automattic.com/pipermail/wp-hackers/2012-July/043772.html this message]. 

Currently for dropins there can be only one[1] per install which means that, especially for `advanced-cache.php` where multiple plugins cannot easily:

- Cache different mime types with different plugins
- Provide basic functionality and leave the complexity to other plugins because hooks are not available ''(this is likely needed for a good page caching API to ever emerge from the work of plugins.)''

For caching this results in plugins like WP Super Cache and WP Total Cache that significantly violate a sancrosact WordPress philosophy of ''""[http://wordpress.org/about/philosophy/#decisions Decisions, not Options]''"". To see what I mean, just visit the settings page for either of these plugins.  ''(Note: I'm not criticizing the plugins or their developers, instead saying that WordPress doesn't give them much of a choice.)''

It turns out however that fixing this is really lightweight and easy, at least for `advanced-cache.php`. I will attach the following files but here is the short list of changes to core required:

- Move the hooks-related function out of `/wp-includes/plugin.php` into another file which I called `/wp-includes/hooks.php` and include `/wp-includes/hooks.php` in `/wp-settings.php` close to the top after `/wp-includes/versions.php` is included.
- Include another new file `/wp-includes/dropsin.php` in `/wp-settings.php` after `/wp-includes/hooks.php` which contains a `wp_load_dropins()` function that `include()`s all `.php` files found in `/wp-includes/dropins/`.  
- Lastly add the following two (2) lines before `advanced-cache.php` is included:

{{{
// Load any potential dropins found /wp-content/dropins/
wp_load_dropins();

// Run the hook-based page cache.
do_action( 'page_cache' );
}}}

With this future caching plugins can implement the page_cache hook by dropping a file into `/wp-content/cache/` instead of  adding an `/wp-content/advanced-cache.php`.  

If this idea is blessed then we could add a deprecation notice for `/wp-content/advanced-cache.php` and also potentially replace (some of) the other dropins with `do_actions( ""{$dropin_hook}"" )`.   


[1] [http://www.urbandictionary.com/define.php?term=%22there%20can%20only%20be%20one%22%20 Gratuitous Highlander reference].",mikeschinkel
19008,Introduce a notoptions cache for site options,,Cache,,normal,normal,Awaiting Review,enhancement,new,,2011-10-19T21:11:47Z,2013-02-19T18:52:05Z,"Following up on #18955.

Adding a 'notoptions' cache for site options would be consistent with normal options.",duck_
20875,Introduce wp_cache_get_multi(),,Cache,,normal,normal,Future Release,enhancement,new,has-patch,2012-06-07T13:56:28Z,2013-04-16T17:12:29Z,"Both options (see #10274) and themes (see #20103) could benefit from a cache backend that implements get_multi(). For options, this means we can use individual keys. For both themes and options, we'd be able to make fast multiple gets.

Both APC and Memcached (but not Memcache) implement multiple-get. A fallback would be looping over get().

Separately, as this would be a new function we use in core, we probably need to start doing some kind of versioning for drop-ins like db.php and object-cache.php.",nacin
21401,Load packaged object cache when advanced-cache.php and object-cache.php don't implement wp_cache_init( ),,Cache,3.0,normal,normal,Future Release,enhancement,new,has-patch,2012-07-28T06:00:11Z,2013-05-14T13:22:25Z,"'''This ticket has 3 purposes:'''

1) introduces {{{wp_using_ext_object_cache()}}} - mimic {{{wp_suspend_cache_invalidation()}}} and disallow direct access to {{{$_wp_using_ext_object_cache}}}, cleans up importing of globals in functions and provides function to modify that global[[BR]][[BR]]
2) load the wp-packaged object cache when {{{object-cache.php}}} doesn't implement {{{wp_cache_init()}}}[[BR]][[BR]]
3) adds file_exists for advanced-cache.php

{{{wp_start_object_cache()}}}, at its core, is on the hunt for {{{wp_cache_init()}}} and then sets the toggle for the external object cache. We only care about the external object cache if it has that function. Rather than throwing a fatal error if their is a missing method, load the default object cache.

If someone installs Memcached properly, then nothing changes - file loads, all is good. If they install a blanks file, the default Object Cache will load. If they install an external object cache without {{{wp_cache_init()}}}, the default cache loads. 

IMO - there is no reason to turn off non-persistent caching or throw a fatal error if the author of a cache plugin sucks or the user made a mistake in moving the files.",wonderboymusic
15565,More context for clean_post_cache(),,Cache,3.1,normal,normal,Future Release,enhancement,new,has-patch,2010-11-24T17:41:07Z,2012-10-17T14:21:18Z,"I'd like more context to be available when the clean_post_cache hook is run.

Scenario: I have a plugin caches the post_IDs of most post queries that go through WP_Query.  Invalidating that cache is done via the clean_post_cache hook, but requires a bunch of fragile hacks to prevent cache invalidation for things like comment inserts, which update the post's comment_count (which could, in theory, affect a WP_Query, but that's another story).

Option 1: Add extra actions to provide context.  This is the simpler option.  Patch 1 does this for the above scenario.

Option 2: Add an optional context parameter to clean_post_cache().  This is more general, but I can't think of anyplace else WordPress uses as similar approach.  Patch two.",mdawaffe
21402,"Remove PHP4 methods, format consistently",,Cache,,normal,normal,Future Release,enhancement,new,has-patch,2012-07-28T06:24:33Z,2013-05-14T13:16:42Z,"While I was looking around in cache.php, I noticed the TODO to remove the destructor that does nothing and the constructor that registers it to do nothing

Also, the whitespace was different for almost every function - yet the functions all have similar code, this cleans it up",wonderboymusic
18488,set_transient crashes when value parameter is a SimpleXMLElement object,,Cache,3.2.1,normal,normal,Awaiting Review,enhancement,reopened,,2011-08-19T18:58:02Z,2012-09-01T18:03:16Z,"I have been developing a plugin that obtains information about high and low tides in the UK. The data is obtained from another site as a SimpleXMLElement. I found that when I passed a value to set_transient that had been assigned directly from the SimpleXMLObject then it was being received as an object and somewhere in the innards of the function the routine crashed. My workaround was to cast the assignment.
e.g. this failed

{{{
$title = $channel->item->title;
$store = '1';
$secs = bw_time_of_day_secs();
$secs = 86400 - $secs;
$set_transient( ""bw_tides_title_"" . $store, $title, $secs);

}}}

but change line 1 as below and it works

$title = '''(string)''' $channel->item->title;

Two questions therefore. 
1. Am I misinterpreting the documentation that says I don't need to serialise the value? What does mixed actually mean.
2. Does set_transient have to crash when the parameters are wrong?

The problem is completely reproducable. I now have a working solution so I don't need a fix right now. I just want to understand.
Herb 

",bobbingwide
23327,Cache incrementors for get_bookmarks(),,Cache,3.5.1,normal,normal,Future Release,task (blessed),new,early,2013-01-30T18:24:08Z,2013-04-16T17:11:33Z,"Make use of a caching incrementor and store queries in individual cache buckets to avoid memory exhaustion.

Pattern this after #23167, which does the same thing for get_pages().

See #23173 for an explanation of the motivation behind this.",ryan
23173,Don't cache arrays of query results in a single cache bucket,,Cache,3.5,normal,normal,Future Release,task (blessed),new,,2013-01-10T19:05:17Z,2013-04-16T17:10:11Z,"We have started using one cache bucket per query with passive invalidation controlled through a last_changed incrementor. See #22024 for an example. We also need to do this with get_pages(), wp_get_archives(), and elsewhere. On wordpress.com we have hacked some of these into separate buckets because saving multiple queries per cache bucket results in huge buckets. We have seen 72MB get_pages caches. Let's finally clean this up for good. Some of the last_changed work done for #22176 can be used here.",ryan
15256,?cat=## permalinks do not redirect when category is a parent,,Canonical,3.0.1,high,normal,Future Release,defect (bug),reopened,needs-unit-tests,2010-10-30T05:44:18Z,2013-02-25T13:08:53Z,"One of my plugin users reported this while using dropdowns to display his categories: http://wordpress.org/support/topic/plugin-my-category-order-multiple-widget-support-broken

I was able to duplicate it on my own site in 3.0.1. Any category that has children displayed in the dropdown will redirect to /?cat=## instead of the the friendly /category-name permalink when selected. Select any other category or one of the children and they redirect correctly.

Any thoughts?",froman118
20388,?cpage=N URLs do not have canonical redirection,,Canonical,,normal,normal,Future Release,defect (bug),new,,2012-04-07T05:43:02Z,2012-05-22T01:07:50Z,?cpage=N URLs aren't redirected to their pretty URL counterparts. They should be.,markjaquith
17661,Appending date & author based query vars to a permalink overrides the permalink,,Canonical,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2011-06-02T11:05:05Z,2012-09-09T20:14:26Z,"Some canonical code branches are not properly accounting for extra query variables being specified via the url.

For example, these url's are not handled properly:
{{{
/2008/?author=1 redirects to /author/admin/
/author/admin/?year=2008 redirects to /year/2008/
/category/uncategorized/?year=2008 redirects to /2008/
}}}

This happens with most date based branches, as once a higher priority canonical rule is hit, the permalink component is ignored.

The canonical code includes a branch to add any ""forgotten"" `$_GET` variables back onto the url, however this doesn't help when it's the rewritten variables are being lost.",dd32
22879,Canonical Link Missing on Front Page,,Canonical,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-12T11:03:05Z,2012-12-30T19:54:30Z,"Canonical links are provided for posts, so if someone links to /2012/12/my-post/?whatever then Google will know it is a duplicate of /2012/12/my-post/

But if someone links to /?whatever there is no canonical address.",miqrogroove
14201,"Canonical redirect kicks in in case of category/tag base containing other chars then a-z, 0-9, _ and -",,Canonical,,high,major,Future Release,defect (bug),new,,2010-07-05T09:03:39Z,2011-09-22T09:49:50Z,"'''Expected behaviour'''

Whatever the category base is, if we go to a properly formed category pretty permalink, canonical redirects shouldn't kick in.

'''Actual behaviour'''

If the category base is non-ASCII (for example: баба), the canonical redirect tries to redirect to the same URL. The redirect sanitizer removes the category base from the URL, because it is non-ASCII and redirects to {{{<root>//category-name/}}}. This prevents endless redirects and usually results in 404.

'''Why does it happen?'''

Category base is always used verbatim. It can't be URL-encoded, because the percent signs will be interpreted as permalink variables. Because of that the generated urls will be always in the form: {{{<root>/баба/<url-encoded-category-name>/}}}.

The contents of {{{$_SERVER['REQUEST_URI']}}} are always URL-encoded, so the requested URI is: {{{<root>/%D0%B1%D0%B0%D0%B1%D0%B0/<url-encoded-category-name>/}}}.

Canonical redirect functionality assumes the requested URL would be the same as the generated term URL and since they are different tries to redirect.

'''Solutions'''

The easiest one is to assume that if we had come to the right category page without any get variables, we don't need the logic for redirecting to the canonical category page. This is valid statement, because that logic relies only on removing get arguments.

The only disadvantage with that solution is that doesn't solve the more general problem of discrepancies between generated and requested URLs.  But for now it will do a good job.",nbachiyski
13041,Canonical redirection will redirect a non-exitant page to a post.,markjaquith,Canonical,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-04-18T06:14:20Z,2010-11-13T07:53:23Z,"Following on from #12601

Canonical redirection will kick in for http://localhost/wordpress-commit/apage/something and redirect it to http://localhost/wordpress-commit/2010/02/13/something-else/

#12601 limited redirect_guess_404_permalink() to only searching in the same post_type if one was provided, for posts and pages however, which are builtin, these vars are not set. 

I'm attaching a patch which will prevent a Page -> Post redirection, but not the other way around. - this patch was originally added to the other ticket.",dd32
23074,Changing post's URL and then setting it back causes redirect loop,,Canonical,3.5,normal,normal,Awaiting Review,defect (bug),new,close,2012-12-29T00:44:50Z,2012-12-30T06:59:34Z,"This morning, I changed the URL of one of my posts, but then changed my mind and set it back. When you change the URL of your post, WP automatically creates a redirect from the old page to the new page, which is good, but in this case it led to an unintended consequence: after I changed the link from A to B and then back to A, it set up a redirect from A to B and a redirect from B to A, causing anyone trying to access A or B to end up in a redirect loop between the two (or possibly it created a redirect loop from A to A; I'm not sure). It should check for such loops when you update the URL to avoid this problem.",vbuterin
17718,Don't redirect if user is already on port 80,,Canonical,3.1.3,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-07T11:31:40Z,2012-10-16T16:36:46Z,"If user is already using port 80 but {{{$original['port']}}} is set to 80 anyway, do not send a needless redirect.

wp-includes/canonical.php line 324

change from

{{{        if ( !empty( $original['port'] ) )}}}

change to

{{{        if ( !empty( $original['port'] ) && $original['port'] != 80 )}}}

Fixes, for example, Nagios's check_http getting sent a redirect rather than the page content.

-davidc",davidcx
8593,HTTP_HOST being manipulated improperly for redirects,markjaquith,Canonical,,normal,normal,Future Release,defect (bug),new,has-patch,2008-12-12T16:37:23Z,2011-03-22T14:49:41Z,"When redirecting a hit to the proper URL, WordPress makes some bad assumptions. Specifically, during redirects, any port information provided by the client is dropped. If I go to http://example.com:80/, I get redirected to http://example.com/. If I go to https://example.com:443/, I get redirected to https://example.com/.

Thus far, no problem has occurred because we are on on server that uses default ports. However, lets say my web server is running http on 8080 and https on 8443. Now when I go to http://example.com:8080/ and get redirected to http://example.com/, it fails. As a workaround, you can change the following settings:
WordPress address: http://example.com:8080/
Blog address: http://example.com:8080/

While this clears up the problem for http requests, you will not be able to use https becuse and attempt to go to https://example.com:8443/ now redirects to https://example.com:8080/ and it fails because the server does not speak ssl on 8080.

Additionally, when you have an https proxy in front of your web server such as pound (with http on port 80 and https on port 8443), you run into another problem caused by this same bug. In this situation if you attempt to go to https://example.com/, the proxy server accepts the request and then on the back end makes a none ssl connection to apache. Good so far, but in order to not make any assumptions, the proxy server tells apache that the request was for 'https://example.com:443/' and apache sets HTTP_HOST (very appropriately) to example.com:443. WordPress sees this request and redirects it to 'https://example.com/' by responding to the web browser with a 'Location:' header. Thus the browser sends another request for 'https://example.com/' and starts the whole process over again resulting in an infinite redirect.

As specifying a port is completely valid, this is a clear case of WordPress not handling things appropriately.",revmj
23602,"Incorrect canonical redirect if p=123 query argument present in ""paged"" archives",,Canonical,3.5,normal,normal,Awaiting Review,defect (bug),new,,2013-02-25T08:34:19Z,2013-02-25T08:34:19Z,"URLs that include `page/n` AND `p=n` query variable, such as:

http://example.com/page/3/?p=123

will issue a 301 redirect to the homepage. This is being reported as incorrect behaviour in Google Webmaster Tools, because:

  The target URL does not exist and your server is not returning a 404 (file not found) error. 

  Your server is redirecting requests for a non-existent page, instead of returning a 404 response code. This creates a poor experience for searchers and search engines.

A fix would be to strip the `p=` query variable and redirect to the paged archive. 

From: 

http://example.com/page/3/?p=123

to:

http://example.com/page/3/
",kasparsd
23408,Link to rss-feed in default installation causes redirect loop,,Canonical,,normal,major,Awaiting Review,defect (bug),new,,2013-02-06T21:20:04Z,2013-02-20T02:56:37Z,"I noticed, that google webmastertools complained about dead links in my blog.
Those links were hidden in the html-code and were links to rss-feeds of attachments. (e.g. ?attachment_id=1647&feed=rss2)
When i try to open the link, it returns a 301 error and if the new url is called, anoter 301 error is shown. After two or three times, the original url is shown again by a 301 error message.

I installed two clean installations on different servers, which show the behaviour either. If i use the link ""?attachment_id=1647&feed=rss""  the correct feed is loaded. (using rss instead of rss2 which is provided by the template)

It seems that the error is caused by the function get_post_comments_feed_link(...) in ""wp-include/link-template.php used wp-include/canonical.php.
When i add another line to the function to return a link with ""attachment_id="" and not ""p="" or ""page_id"", the comment feed is loaded without errors.
But the fact, that rss feeds do not cause an error and rss2 feeds create a loop makes me think, that another module may be defect and my workaround is not a solution.

Regards

Fabian",clusterone
16133,"Pagination issue with tag ""rss""",,Canonical,3.0.4,normal,normal,Future Release,defect (bug),new,has-patch,2011-01-07T09:39:10Z,2012-09-04T21:50:34Z,"When posts use ""RSS"" as a tag, and the /tag/rss/ page has more posts than it is set to display on one single page, the link to page 2:

/tag/rss/page/2/

is redirected to:

/category/page/2/

Tested on Paolo Belcastro test WordPress.org :

http://test.belcastro.com/tag/rss/

Running 3.1-RC2-17229 with only Debug Bar plugin activated

This is not theme related, same behaviour with TwentyTen or Thematic on this install.",paolal
20383,Strip trailing punctuation with canonical URLs,,Canonical,,normal,normal,Future Release,defect (bug),new,,2012-04-07T03:59:49Z,2012-07-13T00:47:29Z,"A follow-up to #7537 where we removed %20 and "" "" from the end of URLs, we should try to remove all sorts of punctuation from the end of a URL, both URL-encoded and decoded.

Example bad URLs we should surely be able to resolve:

http://ma.tt/2012/03/productivity-per-square-inch/%7B

http://ma.tt/2012/03/productivity-per-square-inch/)

http://ma.tt/2012/03/productivity-per-square-inch/,

http://ma.tt/2012/03/productivity-per-square-inch/!

More difficult when there is no trailing slash in the permalink structure (or the link requested, regardless of permalink structure), but if is_404() is taken into account, it should be doable to trail various pieces of punctuation and see if we can get things to resolve.",nacin
18734,Subcategory archive does work with any name as parent category in URL,,Canonical,3.0.1,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2011-09-21T15:10:46Z,2012-10-22T23:10:00Z,"Parent category is ''parentcategory'' and his sub category is ''subcategory''.

The URL will be ''domain.com/category/parentcategory/subcategory''.

The problem is, that you will get the same page if you use any words as ''parentcategory''.

Examples:
- ''domain.com/category/xxx/subcategory''
- ''domain.com/category/subcategory''
- ''domain.com/category/foo/bar/subcategory''

IMO {{{redirect_canonical}}} should do his work here (and sometimes it does).

In 3.1 it does redirect.
In 3.1.4 it doesn't redirect; after r17549.
In 3.2.1 it doesn't redirect.
Duck_ found that it does redirect before r18079.
In current trunk it doesn't redirect.


",ocean90
11856,URL for 1st comments page is not canonical,markjaquith,Canonical,3.0,normal,major,Future Release,defect (bug),new,reporter-feedback,2010-01-10T19:17:42Z,2011-12-22T01:55:08Z,"When WP generates URL for comments, it always includes comments page number. It should not do this when URL is for 1st comments page - in this case post URL is sufficient.

WP should also redirect to canonical URL version when someone will try to load URL like site.com/some-post/comment-page-1.",sirzooro
10935,WP_Query and is_day() bug,ryan,Canonical,2.8.4,normal,normal,Future Release,defect (bug),new,commit,2009-10-09T05:05:24Z,2013-05-07T20:31:05Z,"When you configure Wordpress with permalinks such as /%year%/%month% and even /%year%/%month%/%day/ there is
a failure when you request URLs like /2009/10/58, because it's still generating the query to the database
(AND YEAR(wp_posts.post_date)='2009' AND MONTH(wp_posts.post_date)='10' AND DAYOFMONTH(wp_posts.post_date)='58').
Also, is_day() returns true, when it should be returning false.

As adding a post with that date is nearly impossible trough the wordpress admin or the database, no posts will be found, so
Wordpress will show ""No page found"", but with HTTP status 200 OK, not 404 Not Found.

I think it's important to validate the day on the applicacion side, so for some ideas to work correctly under WP
(like take advantage of sticky posts and show all post for the month in day requests), and most importantly to save
those wasted mysql queries.

Of course I could validate the day using a filter, but that is not the general idea!",raliste
10690,WordPress does not support  non-ascii characters in URLs,markjaquith,Canonical,2.8.4,normal,normal,Awaiting Review,defect (bug),reopened,,2009-08-26T18:26:13Z,2013-03-08T20:31:45Z,"WordPress' clean_url() strips out most characters, which are non-ascii for security reasons. This is causing problems, if you want to run a WordPress blog on a domain containing non-ascii-characters (e.g. müller.com), because WordPress generates wrong URLs on redirects.",paddya
20386,"Year permalinks ""win"" against category permalinks",,Canonical,,normal,normal,Future Release,defect (bug),new,,2012-04-07T05:20:55Z,2012-07-16T04:14:43Z,"We need to decide whether category permalinks should take priority over year permalinks.

e.g. /2008/?category_name=cat-a

Should that stay the same, or redirect to:

/category/cat-a/?year=2008

We have a unit test which is failing.",markjaquith
21602,redirect_canonical can lead to infinite loop on index navigation if site url is not all lower case,,Canonical,,normal,normal,Awaiting Review,defect (bug),new,needs-unit-tests,2012-08-15T21:31:17Z,2013-04-23T07:53:55Z,"The function redirect_canonical in wp-includes/canonical.php (WordPress 3.4.1) on line 406 and 422 makes the following check:


{{{
if ( !$redirect_url || $redirect_url == $requested_url )
		return false;
}}}


This ensures that it does not attempt to redirect you to the page you requested in the first place. However this function is not case sensitive so if the redirect URL is in a different case than the requested URL then the user can enter an infinite redirect loop. (For example if the Site Address (URL) of the site is set to be in all upper case.) 

This function should do a case-insensitive string comparison since domain names are case-insensitive.


The issue only appears to happen with certain plugins installed (ShareThis and PilotPress both led to this issue,) I haven't figured out yet why it's only an issue with certain plugins but it should still be fixed in WordPress to make the proper string comparison. ",sreedoap
20902,redirect_canonical() on using permalink: Not all $_GET being redirected,,Canonical,3.4,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-06-11T09:30:08Z,2012-11-01T04:54:03Z,"Using permalink, I suppose that all query_var entered manually on URL or using $_GET will be redirected to proper permalink. Apparently not all being redirected at all. AFAIC:

1. /?post_format=image : should be redirected to /type/image/
2. /?pagename=blog : should be redirected to /blog/
3. /?author_name=admin : should be redirected to /author/admin/

Unfortunately, they are not.

It can be done by filtering redirect_canonical() but it will be better  if it's being done by default as we can see that /?category_name=cat will be redirected to /category/cat/",arieputranto
19693,redirect_guess_404_permalink() can catch the wrong post types,nacin,Canonical,,normal,normal,Future Release,defect (bug),reopened,,2011-12-30T04:53:09Z,2012-05-24T16:19:12Z,"When I access /blah, and that 404s, redirect_guess_404_permalink() will try to find a matching post name.

If blah is the start of a post name for a random post type (perhaps one used as internal storage), it'll match it and redirect (and then end up 404ing, potentially). There's no constraint on the post type if the post_type query var isn't set, which is going to be common.

We need to come up with a stricter query. (And while we're at it, we should hook redirect_guess_404_permalink() into redirect_canonical() so it may be unhooked without removing all canonical support.)",nacin
17337,wp_old_slug_redirect() fails with multiple post_type query,,Canonical,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-05-06T10:36:19Z,2011-05-06T10:36:19Z,"If I have a query something like this:

{{{
[query_vars] => Array
        (
            [name] => panasonic-tv-review
            [post_type] => Array
                (
                    [0] => review
                    [1] => small_review
                )
        )
}}}

The new post slug is ""panasonic-250-tv-review"", and there is a `_wp_old_slug` meta key with the old slug. One would expect `wp_old_slug_redirect()` to kick in and do the redirect. However, `wp_old_slug_redirect()` will fail with a query with multiple post types, (looking at http://core.trac.wordpress.org/browser/trunk/wp-includes/query.php#L3494). This will knock the `$wpdb->prepare()` ass `$post_type` is now an array. 

I can write a patch for this if I can get the go ahead.",joehoyle
16557,Ability to disable redirect_guess_404_permalink(),,Canonical,3.1,normal,minor,Future Release,enhancement,new,dev-feedback,2011-02-14T12:37:02Z,2011-04-08T11:29:36Z,"Can you make redirect_guess_404_permalink() pluggable or have its return value pass-through a filter so that developers can override it?

I know I can remove_filter('template_redirect', 'redirect_canonical') but redirect_canonical is too useful to be disabled. Only disabling URL guessing would be great.

Thanks a lot,

MK",msafi
12456,Canonical URL redirect issue with post_id/postname permalink structure,dd32*,Canonical,2.9.2,normal,normal,Future Release,enhancement,accepted,has-patch,2010-03-02T14:06:38Z,2013-05-16T12:31:07Z,"The issue:

Using /%post_id%/%postname%/ as permalink structure,
Most canonical redirects work fine, except: 

domain.com/post_id/ brings you to the post but does not redirect to the canonical domain.com/post_id/postname/

Additional info:

The above permalink structure conforms to best practice as described in the codex:
http://codex.wordpress.org/Using_Permalinks#Structure_Tags

Therefore I figured this was a bug, given the attention given to redirecting to the canonical url ""So to avoid confusing search engines and to consolidate your rankings for your content, there should only be one URL for a resource."" 
http://markjaquith.wordpress.com/2007/09/25/wordpress-23-canonical-urls/
",Frank.Prendergast
18385,"Canonical redirections not suited for Queries with multiple query vars and ""pretty permalinks"" in general",,Canonical,3.2,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-08-12T09:05:03Z,2011-08-12T12:21:47Z,"When the Canonical code was originally written, it served it's purpose quite well. However, over the years the number of Query vars which can be used to access content via has increased, and so have the number of archive views. This has lead to increased complexity in the Taxonomy canonical code which has needlessly caused bugs.

What I'm proposing, is that it might be time to lay to rest the current `if.. elseif.. elseif..` style checks, It's not possible for 1 if branch to handle every single access point without duplicating another branch.

As a result, I've put a half-finished together alternate version of Canonical, It's based on tallying up which query vars have been used/accounted for and removing any duplicates.. It's certainly not the best, but it's fairing better with the unit tests so far.

{{{
Unit Testing: http://unit-tests.trac.wordpress.org/browser/wp-testcase/test_includes_canonical.php
Before: FF.......FFFF..FFF.....F......FFFFFF.F....F.....FF....FF...
 After: FF...........FFF..................FF..................F....
}}}

It's a work in progress, but it's worth considering IMO.

Attaching a diff, and the full file (since the diff is going to be rather unreadable in some sections)",dd32
20283,Create new variable or function in $wp_query object to get canonical URL of any site's page,,Canonical,3.3.1,normal,normal,Awaiting Review,enhancement,new,,2012-03-22T14:42:36Z,2012-03-24T12:08:55Z,"For the sake of Search Engine Optimization it's recommended to set canonical URL inside <link rel='canonical'> tag in any site's page. Incorrect URL can exist in search engine index. For example: http://example.com?some_param=some_val&cat=3,4. URL points to categories with id equals 3 and 4, but we have another unnecessary parameter 'some_param'. It's malicious! We must set canonical URL to http://example.com?cat=3,4.
So It's advance to have canonical URL generated some way. I propose to set function or variable inside WP_Query class to retrieve canonical URL to any opened page.

In WP_Query we have variable WP_Query::query which consists of all necessary parameters for that propose. But we must use $wp_rewrites also.
Any thoughts?
",egorpromo
14458,Create rel_canonical filter,,Canonical,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-07-29T21:48:34Z,2011-05-06T14:18:54Z,"Wouldn't it be nice to be able to set the canonical rel value.
This comes in handy when you create a duplicate page and be able to manipulate the cannonical value.

Usage:
{{{
add_filter( 'rel_canonical', 'childtheme_rel_canonical', 10, 2 );
function childtheme_rel_canonical( $link, $id ) {
  return get_permalink( 55 );
}
}}}
",wjm
18660,"Enhance rel_canonical function, add filter",joostdevalk,Canonical,3.3,normal,normal,Awaiting Review,enhancement,assigned,dev-feedback,2011-09-14T15:59:03Z,2012-05-02T05:21:15Z,"I think it's a bit shortsighted to think that only singular pages need the canonical tag output in the `<head>`. Considering the fact that just about any page on your site can be accessed with a malformed URL, I think it's time to enhance this function.

The attached patch is just a first pass. But I think it gets us started in the right direction. There's also a filter before output, so themes and plugins can further enhance the output of this plugin (related #14458).

Patch is against [438126].",nathanrice
23087,Filter wp-register.php canonical redirect in single site too,,Canonical,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-12-30T16:02:06Z,2012-12-30T21:05:43Z,"in canonical registration location redirecting we have a filter for MS but none for WP Single Site. I'm unsure of how to convert Git patches to svn, so... yeah... Sorry.

patch:
https://github.com/ChrisClayton/WordPress/commit/449ac581ff45bfd68050280cdad6211d907ca12f",chrisclayton
4328,"Redirect Old Slugs feature needs to redirect slugs for pages, not just posts, and redirect old permalink structure",markjaquith,Canonical,2.2,normal,normal,Future Release,enhancement,new,has-patch,2007-05-24T01:52:44Z,2012-05-13T19:42:18Z,"Create a page, browse to it, edit it, change its slug, WP redirects to the old page's slug and serves a 404. Wasn't WP 2.1 or WP 2.2 supposed to make the redirect old slug feature built-in?

Along the same lines, it would be sweet if instead of simply redirect old slugs, WP would redirect old urls. When the date changes, when the page parent changes, or when the permalink structure changes, the url changes but neither of WP, the redirect old slug plugin, the permalink redirect plugin, or anything else catches this.",Denis-de-Bernardy
21765,Redirect to canonical URL if URL has 'preview' parameter with any nonempty value and user not log in,,Canonical,3.4.1,normal,normal,Awaiting Review,enhancement,new,,2012-09-01T13:18:44Z,2012-09-01T15:15:07Z,"if any URL has nonempty GET-parameter 'preview' that there is noredirection to canonical URL.
If we have http://example.com?p={post_id}&post_type={post_slug}&preview=true there is no redirection to correct URL like http://example.com?{post_type}={post_slug} or like http://example.com/{post_type}/{post_slug} (if site has permalinks). This is bad for SEO and bad user experience. If user not log in there must be redirecttion.",egorpromo
15950,Tweak canonical redirect name requests,,Canonical,3.1,normal,normal,Future Release,enhancement,new,has-patch,2010-12-22T18:09:54Z,2010-12-22T22:28:38Z,"Scenario: A website has the following two pages:

 * `example.com/foo/amazing-thing/`
 * `example.com/amazing/`

Upon requesting `example.com/amazin` the canonical redirect should favour the top-most level page. This doesn't happen as the relevant SQL query doesn't have an `ORDER BY` clause, making the behaviour unpredictable.",johnbillion
20224,WordPress should always add a / at the end of URLs,,Canonical,3.4,normal,normal,Awaiting Review,enhancement,reopened,close,2012-03-13T09:54:17Z,2012-03-14T12:36:36Z,"Users can change permalinks. They can add whatever they whant at the end of each url. For example :[[BR]]
- mydomain.com/myurl
- mydomain.com/myurl/
- mydomain.com/myurl.php
- mydomain.com/myurl.html
- mydomain.com/myurl.htm
- ...

There is a bug with search engines and empty URLs (mydomain.com/myurl). Google, Yahoo or Bing consider that it's not the same URl as mydomain.com/myurl/. They always try to add a / at the end of those URLs : it creates duplicate content for search engines that harms website visibility. For example, if a WordPress Blog uses /%postname% as permalink, Google is going to index both url:
- mydomain.com/myurl
- mydomain.com/myurl/

In order to correct this issue, WordPress should always add a / at the end of empty URLs (for example, without a / or without extension like .php, .asp, .html, ...).",Confridin
15397,redirect_guess_404_permalink() purposedly doesn't guess posts with updated dates,,Canonical,,lowest,normal,Future Release,enhancement,new,dev-feedback,2010-11-12T00:17:38Z,2012-07-03T15:37:18Z,"'''Problem'''

Here's my post path scheme: http://site.com/YEAR/MONTH/DAY/SLUG. Whenever I have writers working on a post for a while and saving drafts (we're all using Windows Live Writer), they oftentimes publish to the date when the last draft was saved, i.e. several days in the past. Then, they quickly correct the date but the previously tweeted/shared link is now 404 due to the changed date.

I've looked into the source of redirect_guess_404_permalink(), and it purposedly narrows down the query when it sees a post date to that date only. If I understand correctly, this is done to minimize accidental redirects to the wrong post, but has the side effect of not guessing the new link if only the date was changed.

A workaround of removing these lines:
{{{
  if ( get_query_var('year') )
    $where .= $wpdb->prepare("" AND YEAR(post_date) = %d"", get_query_var('year'));
  if ( get_query_var('monthnum') )
    $where .= $wpdb->prepare("" AND MONTH(post_date) = %d"", get_query_var('monthnum'));
  if ( get_query_var('day') )
    $where .= $wpdb->prepare("" AND DAYOFMONTH(post_date) = %d"", get_query_var('day'));
}}}

fixes the problem for me.

Can this case be solved in the trunk and the code above removed, or logic improved? My .htaccess file is filled with 301 redirects to correct wrong dates.

Thank you.",archon810
10543,Incorrect (non-UTF-8) character handling in tag's name and slug,westi*,Charset,2.8.2,normal,normal,Future Release,defect (bug),accepted,needs-unit-tests,2009-08-04T05:26:11Z,2010-11-13T01:15:40Z,"Incorrect (non-UTF-8) character tag's name and slug are handled in different way: name is truncated on 1st such character, and in slug they are just removed (no truncation). WP should handle both in the same way - drop invalid characters, instead of truncation.

I found this issue recently. One of the Polish programs for adding posts to the Wordpresses does not encode tags in UTF-8 - it left them in ISO-8859-2. I notified author of this bug. Unfortunately there are many copies around, so it may take a long time before everyone upgrade.",sirzooro
5998,Invalid Unicode characters,hakre,Charset,2.3.3,normal,major,Future Release,defect (bug),assigned,,2008-02-25T18:17:22Z,2011-02-10T23:09:25Z,"Wordpress does not check for invalid Unicode characters, such as the following:

U+FFFE
U+FFFF

When the pages are served up as XHTML, allowing these characters through generates an XML error. 

WordPress should filter out illegal Unicode code points.

Please see http://www.w3.org/TR/REC-xml/#NT-Char

Also, the regex
[http://www.w3.org/International/questions/qa-forms-utf-8 here] is
incorrect, see [http://intertwingly.net/blog/2008/01/02/Keeping-On-Your-Toes
this page].

",shelleyp
18007,is_serialized trouble for multibytes encoding,,Charset,3.2,normal,normal,Future Release,defect (bug),new,has-patch,2011-07-06T16:51:52Z,2013-04-10T12:47:42Z,"Possible bug in the ''is_serialized'' function, in a multibytes environment :

== Context ==

* ''utf-8'' encoded database fields
* auto overlaoding singlebyte functions from conf (see http://www.php.net/manual/en/mbstring.overload.php)

Retrieving an option from the database, the ''get_option'' function try to deserialize it.

== Bug scenario ==
 * the ''strlen'' call is actually a ''mb_strlen'' one
 * the ''$length'' var is the number of characters (not bytes)
 * using {{{ $data[$length-1] }}} don't retrieve the last char but one before, it's actual position is undefined, depending on the other content of the string
 * this ''$lastc'' is not '';'' or ''}'' 
 * the string is understood has not serialized

== Patch proposal ==

here is a fix i made to make it work with multibytes string :
Not tested it for single bytes, but there is no reason for it to not work.
{{{
--- a/wp-includes/functions.php
+++ b/wp-includes/functions.php
@@ -256,7 +256,7 @@ function is_serialized( $data ) {
                return false;
        if ( ':' !== $data[1] )
                return false;
-       $lastc = $data[$length-1];
+       $lastc = substr($data, -1);
        if ( ';' !== $lastc && '}' !== $lastc )
                return false;
        $token = $data[0];
}}}

",challet
11738,sanitize_text_field() issue with UTF-8 characters,hakre,Charset,2.9.1,normal,normal,Future Release,defect (bug),new,,2010-01-06T07:39:11Z,2010-11-13T07:36:00Z,"See Description #11528

Suggested patch does not take UTF-8 properly into account. Function has been degraded in the commit(s) [12499], [12501] to not support shift-spaces any longer. Details about preg_replace and UTF-8 as well as a proper suggestion to fix w/o degration [https://core.trac.wordpress.org/ticket/11528#comment:10 here].",hakre
11175,wp_check_invalid_utf8() should drop invalid utf-8 chars only instead of truncating string,hakre,Charset,2.9,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2009-11-18T19:18:43Z,2011-07-13T09:46:51Z,"When you call wp_check_invalid_utf8() with 2nd param set to true, it tries to strip invalid utf-8. Now it removes 1st invalid utf-8 char and all chars after it, no matter if they are correct or not. Additionally it can print following notice:

Notice: iconv() [function.iconv]: Detected an illegal character in input string in .../wp-includes/formatting.php on line 437

Attached patch changes this, so function removes invalid chars only. Additionally it is less configuration-dependent, because it can use either mb_convert_encoding() or iconv().",sirzooro
20319,$page value not being defaulted to 1 in the absence of cpage query var in get_next_comments_link()/get_previous_comments_link(),,Comments,3.0,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-03-29T09:23:19Z,2012-05-24T07:27:29Z,"get_next_comments_link() generates incorrect comment pagination links on the first page when used alongside a user-made call to wp_list_comments().

Currently, get_next_comments_link() doesn't take into account instances where there is no 'cpage' query var (which is the case when a user-made call to wp_list_comments() is performed). The intval() of the empty $page variable returns 0, and at this point should then be defaulted to 1 in order for the correct link to page 2 to be generated. Instead, it's left as 0, and the resulting link is self-referencing to page 1.

In wp-includes/link-template.php:

{{{
function get_next_comments_link( $label = '', $max_page = 0 ) {
    global $wp_query;

    if ( !is_singular() || !get_option('page_comments') )
        return;

    $page = get_query_var('cpage'); //RETURNS EMPTY IN ABSENCE OF A cpage VALUE ON PAGE 1 OF A USER-MADE CALL TO wp_list_comments()

    $nextpage = intval($page) + 1; //intval() RETURNS 0, 0+1=1, RESULTING IN THE ""Newer Comments"" LINK SELF-REFERENCING PAGE 1, INSTEAD OF POINTING TO PAGE 2

    ...
}}}

Coincidentally, in paginate_comments_links() (wp-includes/link-template.php) this situation is handled correctly, and $page does get correctly defaulted to 1. The same conditional used in paginate_comments_links() can be applied to both get_next_comments_link() and get_previous_comments_link(). The code to properly account for it is:

{{{
function get_next_comments_link( $label = '', $max_page = 0 ) {
    global $wp_query;

    if ( !is_singular() || !get_option('page_comments') )
        return;

    $page = get_query_var('cpage');
    if ( !$page ) //******** ADDED
        $page = 1; //******** ADDED

    $nextpage = intval($page) + 1; //intval() RETURNS 0, 0+1=1, RESULTING IN THE ""Newer Comments"" LINK NOT POINTING TO PAGE 2

    ...
}}}

The same addition should be made to get_previous_comments_link() as well, although it's obviously unnoticeable on the first page.",MomDad
18547,"Add rel=""nofollow"" to reply to comments link",,Comments,3.2.1,normal,minor,Awaiting Review,defect (bug),reopened,close,2011-08-30T14:20:31Z,2011-09-01T14:56:00Z,"This is an easy problem to diagnose and fix. Basically, the reply to comment links all contain a query parameter—?replytocom—in the destination URL.

Google does a poor job of ""deciding"" whether or not these are unique URLs, and as a result, these URLs are often indexed. This leads to duplicate content issues, which leads to users bitching :D

Here's a sample of some search results where the ?replytocom query parameter resulted in a bunch of duplicate indexing:

[http://www.google.co.in/search?cx=c&sourceid=chrome&ie=UTF-8&q=site:callingallgeeks.org+replytocom+#q=site:callingallgeeks.org+replytocom&hl=en&prmd=ivns&filter=0&fp=1&biw=1366&bih=667&bav=on.2,or.r_gc.r_pw.&cad=b Google]

Thanks!",pearsonified
19930,Add tabindex to Comment Submit button,,Comments,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-01-30T14:54:21Z,2012-05-03T15:40:22Z,"For accessibility reasons, it would be nice to be able to add tabindex to the comment form submit area.",wpsmith
22792,Cannot change name attribute of comment submit button,,Comments,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-06T17:03:01Z,2012-12-06T17:20:24Z,"This prevents developers from using client-side validation, as the name attribute being set to ""submit"" interferes with the .submit() method.  I can change the id and the label of the submit button, but that is all.

The default WordPress server-side validation is unacceptable from a user-experience standpoint.

This would be the solution for me, which I find cumbersome (http://wordpress.stackexchange.com/questions/65001/error-when-posting-comment-form-the-error-is-typeerror-eh-is-not-a-function). 

The developer should be allowed to set the name attribute of the submit button (maybe through the use of comment_form()).",willi828
16134,Check capabilities/role before adding comment links to email,,Comments,3.0.4,normal,normal,Future Release,defect (bug),new,has-patch,2011-01-07T10:23:06Z,2011-02-19T20:35:22Z,"Currently the Trash it, Delete it, Spam it are added to comment notifcation emails, which are sent to the author.

However, the author may have had their role changed down to a lower-role (or had capability removed) since they wrote the post, and no longer would have permissions to use the links added to the email. 

It may also be the case that a subscriber user was assigned as the Post Author (perhaps as a sort of Guest Author) for a post, and never had the permissions to use those links.

Can some sort of check be added, before these links be added to the email?",GaryJ
16430,"Comment 'Reply' button still present when comment max depth has been reached, just without text.",,Comments,3.0.4,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-01-31T22:12:56Z,2013-01-15T23:41:09Z,"With comment max depth set, in my case, to 5 on the admin panel, the div for the reply link would still appear even though the text that says 'Reply' would not. Basically, it was an empty div with class=""reply"". The fix is quite easy, which I implemented in test on one of my WP sites.

Around line 1372 of wp-includes/comment-template.php, there is the following is code:
{{{
<div class=""reply"">
<?php comment_reply_link(array_merge( $args, array('add_below' => $add_below, 'depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
</div>
}}}

This can simply be enhanced to this:
{{{
<?php if ( $depth < $args['max_depth'] ) : ?>
<div class=""reply"">
<?php comment_reply_link(array_merge( $args, array('add_below' => $add_below, 'depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
</div>
<?php endif; ?>
}}}

I just added a quick check to make sure our current comment depth did not meet (or somehow exceed?) our set max depth.",TheGremlyn
10377,Comment fields should have max lengths,,Comments,2.8,normal,normal,Future Release,defect (bug),new,,2009-07-10T14:34:27Z,2012-07-13T01:05:25Z,"Hello, I don't know if exactly it's a bug or use javascript validation, but i think so there's no 	
treatment for this, or was fix in the new version.

In the section of comments(Wordpress 2.8), we can insert how many characheters we wants, generating an SQL Exception and breaking the all system.

The solution is simple, use the property maxlenght in the tag 
<input /> e limit the characters if will be send to database.



",muriloazevedo
12363,Comment permalink wrong when only listing one comment type,,Comments,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-02-24T14:31:51Z,2010-11-13T07:46:50Z,"If you pass the `type` parameter to `wp_list_comments()` (for example, to show comments only and no pings), then comment permalinks can easily use the wrong page number as they expect there to be pings included. This is apparent after leaving a comment and WordPress attempts to redirect back to your new comment.

At first I was thinking you could tell WordPress that you're filtering to a type and it could compensate when determining the page number, but then I realized perhaps it'd just be better for `wp_list_comments()` to check if there were 0 comments returned for the query and if so, see if there are any of that type of comment available. If so, then we know we're on too high of a page number and can instead display the highest existing page. Then again this introduces SEO issues.

Ideas on what to do are welcome.",Viper007Bond
17714,Comment/pingback handlers don't check whether the post type supports comments,,Comments,3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-06-07T06:09:02Z,2011-06-07T06:17:45Z,"wp-comments-post and XML-RPC don't check post type support for comments before accepting them - I think they should. We can't rely solely on `$post->comment_status` because that may not always be set to ""closed"" even if the post type doesn't support comments (see also #13473)

Maybe we could add a check to `comments_open()`?",solarissmoke
18603,Comments on pages which exceed paginate settings create erroneous permalinks,Mike Sagman http://www.dogfoodadvisor.com,Comments,3.2.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-09-06T17:32:14Z,2013-02-07T17:09:36Z,"On my website, clicking on any of the Recent Comments that possess large numbers of comments exceeding paginate settings (50 comments) present erroneous permalinks. Only the posts containing enough comments on page 3 or higher present these improperly constructed links that take users to the wrong page (a page that does not contain the comment in question). The problem does not occur on pages containing a limited number of comments. So far, we have removed our Thesis theme and changed to the standard WP default theme. And we've deactivated all plugins. Yet neither solution appears to resolve the issue. Thanks for your consideration. You may view this issue live at http://www.dogfoodadvisor.com",msagman
22380,Consolidate the API hooks comment,,Comments,3.4,normal,minor,Awaiting Review,defect (bug),new,has-patch,2012-11-07T17:00:16Z,2012-11-13T01:09:24Z,"Many functions of API comments have hooks unusable because they do not provide parameters that provides the function. 

In general, these functions provides a $comment_ID argument, but it's not present in the hook...

Sample 
{{{
function comment_author( $comment_ID = 0 ) {
	$author = apply_filters('comment_author', get_comment_author( $comment_ID ) );
	echo $author;
}
}}}

Fixed sample :

{{{
function comment_author( $comment_ID = 0 ) {
	$author = apply_filters('comment_author', get_comment_author( $comment_ID ), $comment_ID  );
	echo $author;
}
}}}
",momo360modena
16976,Don't use photo as avatar class in comments,,Comments,3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-03-27T00:54:44Z,2011-03-27T01:07:30Z,"If you use an image in your post with class 'photo' to show it in Google's search results as a rich snippet is not possible if you make use of avatars in your comments. Google will pick the last class 'photo' image on the page to show as the search result.

Suggestion is to change the avatar class in comments to from 'photo' to 'comment-photo'. A post image is more important than a comment avatar to use for rich snippets.",Okoth1
8973,Function get_page_of_comment() returns incorrect page numbers,,Comments,2.7,normal,normal,Future Release,defect (bug),reopened,dev-feedback,2009-01-27T16:54:40Z,2012-06-17T22:37:09Z,"The function get_page_of_comment(), defined in /wp-includes/comment.php for WordPress 2.7, returns wildly incorrect results in cases where the database includes spam trackbacks or pingbacks. The reason is that the DB query on line 595 does not include ""comment_approved = 1"" and therefore incorrectly counts unapproved trackback and pingback spam (not to mention non-spam comments in moderation). As far as I can tell from browsing my DB, although spam comments have their comment_type changed to 'spam' in the database, trackbacks and pingbacks still retain their original comment_type.

As a newbie to the WordPress Trac, I'm afraid I don't know how to provide a diff, but the full correct query is as follows:

$oldercoms = $wpdb->get_var( $wpdb->prepare( ""SELECT COUNT(comment_ID) FROM $wpdb->comments WHERE comment_approved = 1 AND comment_post_ID = %d AND comment_parent = 0 AND comment_date_gmt < '%s'"" . $comtypewhere, $comment->comment_post_ID, $comment->comment_date_gmt ) );

The upshot is that without the above fix, comment URLs in several places (e.g., RSS feeds) may point to non-existent pages.

All the best,
Greg

",GregMulhauser
14711,Indexes for comment_author_email and user_id,,Comments,3.0,normal,normal,Future Release,defect (bug),new,early,2010-08-27T07:18:30Z,2011-01-08T19:36:17Z,"There are currently no indexes on any of the author columns in wp_comments.  That means there's no efficient way to count the comments written by a given commenter, for example.

The enclosed patch adds two separate non-unique indexes, one each for comment_author_email and user_id.
",tellyworth
13792,Invalid reply link from comment admin when comment nested level > max,,Comments,2.9.2,normal,normal,Future Release,defect (bug),reopened,,2010-06-09T07:05:56Z,2010-11-13T17:53:57Z,"I have a blog with nested comments enabled, max depth of 4. When the last level comment is posted, it no longer contains a Reply link.

However, in the Comment admin, the Reply link is still present. If used, this new reply will show up at the very bottom of the comment list once posted (even if other newer regular comments are entered, this new reply will still show up at the very bottom).

The bug is, basically, that Comment admin doesn't respect the max nested value.",archon810
21845,Losing comment reply by accidentally clicking on another comment,,Comments,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-09-08T13:17:20Z,2012-09-17T22:31:50Z,"This is a usability bug.

When replying to a comment in the Edit Comments (wp-admin/edit-comments.php) page, double-clicking on another comment will open that comment for editing and wipe away the reply you were writing. 

If you want to highlight a word to copy from the comment that you are replying to this can be done by double-clicking the word. So completely by accident your reply is wiped out. This occurred on wordpress.com so I'm guessing their using the latest 3.4.2 version.",icc97
12480,Moderated comments don't show blank links,,Comments,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-03-02T18:29:09Z,2010-11-13T07:48:54Z,"Comments caught in moderation won't show the blank links inserted into them unless you edit them.

A comment with html code like <a href='http://example.com/'></a> will not show that link on the moderation page.",donncha
10790,"No feedback given to commenter when ""Name"" field empty",,Comments,2.8.4,normal,normal,Future Release,defect (bug),new,dev-feedback,2009-09-15T17:43:44Z,2011-01-21T05:44:40Z,"On my installation, name and email are not required to post a comment. I must approve every comment before it appears. If a user chooses to give their name anyway, then after they post their comment, they get a screen that says ""Blah says:"" and below that ""Your comment is awaiting moderation."" This is expected behavior.

However, if the user does not give their name, then they do not get any sort of confirmation that their comment was sent. It is sent successfully, but the user should have confirmation, otherwise they will likely try more than once before giving up in frustration.

I have tested this bug using Firefox 3.0, with and without JS enabled, and Internet Explorer 6.",WK1
11286,Normal User Input Causes Status 500,,Comments,2.8.4,normal,normal,Future Release,defect (bug),new,commit,2009-11-30T21:45:04Z,2012-11-26T22:20:40Z,"To reproduce:  Click the Submit Comment button on any post with no other input.

Expected Result:  Status 200 or 403 with feedback to user.

Actual Result:  Status 500 with feedback to user.

Status 500 means the server is at fault for an unexpected error condition, which is not the case here.  It is the incorrect response to send, and it is alarming to see it show up in a server log without an error message.

Patch should be ready shortly...",miqrogroove
11248,Paged wp_list_comments() should always output something,,Comments,2.9,normal,normal,Future Release,defect (bug),new,has-patch,2009-11-24T06:00:23Z,2010-03-13T22:04:21Z,"Enable comment paging on your blog and visit `http://yourblog.com/a/single/post/comment-page-999999/`. Note no comments will be displayed.

There's situations where the comment form will redirect you back to the wrong page (for example if you mess with the type parameter and exclude pings). The Walker should detect if there's no comments to be displayed on the requested page and if that's the case, then display the latest page that actually has comments.",Viper007Bond
18762,Pagination does not work correctly on walker in reverse order.,,Comments,3.2.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-09-23T21:08:42Z,2012-05-02T17:26:33Z,"Steps to reproduce:
1. Go to Discussion and change Comments should be displayed with the  comments at the top of each page to ""newer"" (that is, set comment_order='desc'). 
2. Make sure your theme is paginating comments. Make sure you have more than the page limit of comments.
3. Note that the first page does not actually contain the newest comments (they're off by a page, or perhaps they're just sorted in one way for the pagination and a different way for the inner page sort).

If you check out the $start, $oldstart and $end variables, the way it was written before the patch, $start gets set to 11 (page limit + 1) on page = 1, the way it is written after the patch, start is 0, as it should be. 

All I've done is swapped the order of $start and $end being updated. This fixes the starting point. This needs to be tested in more detail before actually deploying it, but there is definitely a pretty serious bug here.",gburtini
13648,Post link?,ryan,Comments,3.0,normal,normal,Future Release,defect (bug),new,,2010-05-30T22:51:23Z,2010-05-31T20:50:17Z,Adding '''?comments_popup=1''' to the url go to that post id number but in comment view with the trackback to the post with the regular permalink. Found this via search engine that indexed it instead of post url.,giuseppex
20050,Proper Cap check in edit_comments.php,,Comments,3.3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-02-15T17:36:51Z,2012-02-15T17:56:25Z,"See #20025.
As in edit.php?post_type=custom_post_type
and edit-tags.php?taxonomy=custom_taxonomy

When filtering comments for a specific post type
The fix in cap is more appropriate",nprasath002
22261,Recent comments widget makes additional queries when pagination is enabled,,Comments,,normal,normal,Future Release,defect (bug),new,,2012-10-23T14:19:59Z,2012-10-23T14:19:59Z,A continuation of #15400.,nacin
16881,Remove all unwanted 'nofollow' attributes from 'reply to comment' links,,Comments,3.1,normal,minor,Future Release,defect (bug),new,commit,2011-03-17T20:27:43Z,2011-03-19T06:47:58Z,"This should be a trivial fix. r16230 removed the rel=""nofollow"" attribute from ""reply to comment"" links in the comments list, for reasons discussed in #10550. In brief, the reasons are that these are not external links that we want to tell search engines not to follow in the first place, and there is actually an SEO penalty from adding the ""nofollow"" to internal links.

Unfortunately, the ""nofollow"" was not removed from all of the ""reply to comment"" and ""reply to post"" links (for instance, in code branches when the site requires login/registration to comment). This patch corrects the rest of them.

It doesn't delete the ""nofollow"" attributes we want. For instance, in `get_comment_author_link()` which escapes links to the comment author's URL.

Additionally, the patch (see line 1110) fixes a minor inconsistency between the return values of `get_comment_reply_link()` and `get_post_reply_link()` when `get_option('comment_registration')` is TRUE.

The version in `get_post_reply_link()` is missing the `class=""comment-reply-login""` and `esc_url()` wrap. I've added them.",joelhardi
8755,Should be able to specify page order with wp_list_comments(),,Comments,2.7,normal,major,Future Release,defect (bug),new,,2008-12-30T02:50:53Z,2009-11-17T15:48:45Z,"Passing the parameters ''reverse_top_level'' and ''reverse_children'' into the ''wp_list_comments()'' function only reverses the order of the comments '''on each page''', and not the entire comment list overall. It is therefore impossible to display the newest comments first using this function, when comments are great enough to be paged. At least, not without globally changing the comment order for the entire site using the Discussion settings screen so that the ""last"" page is displayed first.

It should be possible to specify the page order in wp_list_comments() by, for example, passing a page_order parameter with 'asc' or 'desc' available.",marky
16770,"The comments field in the post table gets set to 'closed' for all posts, and commenting options change from those set",,Comments,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-03-06T00:48:21Z,2011-03-06T17:25:27Z,"these problems are documented in this forum topic. http://wordpress.org/support/topic/why-is-my-comments-closed-in-all-posts-open-in-all-pages?replies=13#post-1768692 

It has happened to me twice",linusinutah
15905,Using wp_list_comments using both the type and callback arguments causes the first comment to be repeated,,Comments,,normal,normal,Future Release,defect (bug),new,close,2010-12-20T03:12:18Z,2011-01-27T07:01:44Z,"I'm using wp_list_comments like so: 

{{{
	<ol class=""commentlist"">
	<?php wp_list_comments('callback=comment_callback&type=comment'); ?>
	</ol>
}}}

When including the comments on a page listing many posts (like the home index page), the callback function is always passed the first comment that is encountered.  Trying get_comments before wp_list_comments shows the proper comments that should be displayed, but the callback always receives the same comment as it's argument.

Removing '&type=comment' yields the expected output.  My current workaround is to remove '&type=comment' and only respond to comments with an empty string for the comment_type in my comment callback function.
",benschell
23369,WP_Comment_Query meta query 'count' conflicts with 'group by',,Comments,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-02-02T13:39:20Z,2013-02-02T14:52:54Z,"This problem relates to {{{/wp-includes/comment.php}}}, both 3.5.1 and trunk are affected. The following line number refers to the 3.5.1 version. 

At line 195, definition of class {{{WP_Comment_Query}}} , a typical meta query will generate such SQL:

{{{SELECT * FROM wp_comments INNER JOIN wp_commentmeta ON (wp_comments.comment_ID = wp_commentmeta.comment_id) WHERE ( comment_approved = '0' OR comment_approved = '1' ) AND comment_post_ID = 22 AND ( (wp_commentmeta.meta_key = 'my_flag' AND CAST(wp_commentmeta.meta_value AS CHAR) = 'my_value') ) GROUP BY wp_comments.comment_ID ORDER BY comment_date_gmt DESC }}}

Note that at line 357, a meta query will always generate a {{{GROUP BY}}} clause. This works for comment rows. Say that I've got 3 comments matching this query, I'll see each of them in a row:

{{{
comment row 1, data
comment row 2, data
comment row 3, data
}}}

However, this query doesn't work well then {{{$count = true}}}. Note that by specifying {{{$count = true}}}, the function only changes {{{'SELECT *'}}} into {{{'SELECT COUNT(*)'}}}. For 3 comment result, I'm seeing something like this:

{{{
1
1
1
}}}

And you can see, because there's a {{{'GROUP BY'}}} clause. And each comment has a unique ID. The result is 3 'grouped row' of comments, and each will always have count of 1.

Therefore, the result of {{{$wpdb->get_var()}}} will be either 1, or NULL (when nothing is matched). I believe this behavior is not by intention.

To get count working, {{{'GROUP BY'}}} clause must be removed when $count is true.",heshiming
20262,"When ""Automatically close comments on articles older than X days"" is enabled, comments appear closed on draft posts",,Comments,3.3,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-03-20T15:14:21Z,2012-09-05T17:12:08Z,"If the setting to ""Automatically close comments on articles older than X days"" is enabled via Settings -> Discussion, comments automatically appear as closed on draft posts until the post is published. This is regardless of the Discussion settings configured on the Post Edit page for the draft post.

To replicate:

1. Via Settings -> Discussion, click on ""Automatically close comments on articles older than X days."" 

2. Create a new post and save it as a draft. Make sure comments are enabled in your Discussion module.

3. When previewing the draft post, it will say ""Comments closed"" regardless of the Discussion settings.

The post will show comments as being allowed once it's published, they only show up as closed when in the draft format. ",evarlese
15644,"When deleting a user, corresponding comment user IDs aren't reset",,Comments,,lowest,minor,Future Release,defect (bug),new,dev-feedback,2010-12-02T11:19:18Z,2012-08-04T09:55:22Z,"Delete a user with a comment.

The user ID stays.

Potential for clashes later.

We should run this: `$wpdb->update( $wpdb->comments, array( 'user_id' => 0 ), array( 'user_id' => $user_id ) );` in wp_delete_user.

Alternative is to do a full query then manually run wp_insert_comment() on each, so all hooks get fired, which is fine too and is more in line with what we do elsewhere.",nacin
23939,Wrong capability check in wp_ajax_replyto_comment,,Comments,3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-04-04T18:39:21Z,2013-04-05T01:06:32Z,"The wp_ajax_replyto_comment function in the wp-admin/includes/ajax-actions.php checks the ""edit-post"" capability instead of the ""edit-comment"" capability.

Attached a tested patch. ",fgauthier
11566,clean_comment_cache() does not clean $GLOBALS['comment'],,Comments,2.9,normal,normal,Future Release,defect (bug),new,has-patch,2009-12-22T21:18:23Z,2011-04-28T22:55:15Z,"I am trying to add links to comment list, which will allow to delete comments directly without need to move them to trash first (and with trash enabled). For posts/pages I found working workaround: hook `trashed_post` and `call wp_delete_post()` again from. 

Unfortunately similar approach for comments does work. As I checked, `wp_trash_comment()` calls `get_comment()`. The latter function implements simple comments cache using `$GLOBALS['comment']`. When you change comment status to `trash`, `wp_set_comment_status()` clears cache by calling `clean_comment_cache()`, but it leaves that global set. As a result my workaround does not work. 

I think that `clean_comment_cache()` should clear that global too.",sirzooro
13473,comment_status should be set to default_comment_status when commentstatusdiv is removed,westi,Comments,,normal,normal,Future Release,defect (bug),reopened,,2010-05-20T23:36:24Z,2011-11-24T16:13:29Z,"When the Comment Status box is removed from the Add/Edit Post screens, posts should be created with the comment_status set to the value of the default_comment_status option.

-----

I had hidden the Comment Status box via:
remove_meta_box('commentstatusdiv','post','normal');

and made sure that default_comment_status was set to open:
update_option('default_comment_status', 'open');

After adding a new post it displayed ""Comments Off"" when I was assuming that it should have honored the value of default_comment_status.",jimmcq
4916,comment_type function doesn't return the comment type string,,Comments,2.3,normal,normal,Future Release,defect (bug),assigned,,2007-09-06T07:41:30Z,2012-03-12T11:37:16Z,"The comment_type function in comment-template.php only echoes string that explain the comment type. Sometimes we need the string to be returned instead of echoed, e.g. for i18n purposes.",hudatoriq
22635,comments made on iPad get the comment_author_url removed in the pre_comment_author_url filter,,Comments,3.4.2,normal,major,Awaiting Review,defect (bug),new,,2012-11-29T14:21:04Z,2012-11-29T22:18:48Z,"I have tested this on version (3.5-RC1-22909) nightly build too.

if I submit a comment with a valid author url using the iPad then the URL gets removed by the pre_comment_author_url filter in wp-includes/comment.php 

'''works'''
* windows 7 works fine
* windows xp works fine
* debian box works fine
* macbook pro works fine

'''Not working'''
* iphone ios 5.1.1
* ipad ios 5.1.1

duplicable on local, live and someone elses site.

I can see the POST vars show all the proper data.

in wp-includes/comment.php the wp_filter_comment function the `$commentdata['comment_author_url']` exists before 

{{{
$commentdata['comment_author_url']   = apply_filters('pre_comment_author_url', $commentdata['comment_author_url']);
}}}

(line 1291 of wp-includes/comment.php (3.4.2)

but is gone after the filter has been applied,

this happens only if using an ipad or iphone.


",commentluv
14809,comments_by_type doesn't always get reset,,Comments,3.0.1,normal,minor,Future Release,defect (bug),new,reporter-feedback,2010-09-08T01:18:20Z,2011-07-09T17:40:40Z,"in wp-includes/comment-template.php , in function comments_template(), it is possible for $wp_query->comments to be set but for $wp_query->comments_by_type NOT to get reset when it should be reset to array().  We ran into a bug because:[[BR]]
- on a single page (actually inside of a widget), we were pulling comments from multiple posts[[BR]]
- for each post, we were requesting get_comments(array('type' => 'comment'))[[BR]]
- in wp-includes/comment-template.php , in function wp_list_comments(), code says:
{{{
		if ( 'all' != $r['type'] ) {
			if ( empty($wp_query->comments_by_type) )
				$wp_query->comments_by_type = &separate_comments($wp_query->comments);
			if ( empty($wp_query->comments_by_type[$r['type']]) )
				return;
			$_comments = $wp_query->comments_by_type[$r['type']];

}}}
unfortunately, since we were running that again and again, it would not recalculate $wp_query->comments_by_type each time.

I think that the function comments_template() in wp-includes/comment-template.php should have the following line added:
{{{
     $wp_query->comments_by_type = array();
}}}
right after the line where $wp_query->comments is set.",nmassey
13091,edit_post action on wp_update_comment_count_now should not be fired if the comment count hasn't changed,,Comments,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-04-23T06:43:15Z,2010-10-02T00:13:54Z,"wp_update_comment_count_now() is called whenever a comment status is transitioned (or a comment is deleted). However, if the comment transition is not from/to the 'approved' status (e.g., if the comment is transitioned from 'spam' to 'trash' or from 'unapproved' to 'trash'), then the associated post is not actually affected. Therefore in such cases the edit_post action shouldn't be fired, because the post has not been edited/modified in any way. I would argue that the 'wp_update_comment_count' action also should not be fired.

One solution is to check whether the comment count has changed before firing the action.  Another possible option is to call wp_update_comment_count only when a comment has transitioned in/out of the ""approved"" status. I'm inclined to prefer the former because it involves less change.

Proposed patch to follow.",solarissmoke
17778,get_comment_pages_count() returns > 1 when pagination is disabled,,Comments,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-13T05:01:58Z,2011-07-09T11:10:47Z,"If pagination is disabled, get_comment_pages_count() will still return the number of pages possible if pagination was enabled.

As a workaround, themes & TwentyEleven are having to get to see if pagination is enabled first:
{{{
<?php if ( get_comment_pages_count() > 1 && get_option( 'page_comments' ) ) : // are there comments to navigate through ?>
}}}

I'd suggest that if comment pagination is not enabled, this function should return 0 or 1 (0 = no comments, 1 = 1 page).

The addition of an extra block after the [http://core.trac.wordpress.org/browser/trunk/wp-includes/comment.php#L740 empty comments check] would be:
{{{
if ( ! get_option('page_comments') )
	return 1;
}}}",dd32
20006,get_comments (and WP_Comment_Query) does not accept multiple post_type,,Comments,3.3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-02-10T05:46:52Z,2012-08-14T08:34:53Z,"Although get_comments was recently improved to support post_types, it does not seem to properly handle MULTIPLE post_types.

Suppose you need to get the most recent comments for posts, pages, and attachments (attachments don't seem to be included by default).  The following doesn't work, as it only returns comments on attachments (or whichever status is listed first):
 {{{
get_comments(array('number'=>20, 'status'=>'approve', 'post_type'=>array('attachment','post','page')));
}}}

The following doesn't work either, only returning the default post/page comments (taken from the example for multiple category handling at http://codex.wordpress.org/Class_Reference/WP_Query):
 {{{
get_comments(array('number'=>20, 'status'=>'approve', 'post_type__in'=>array('attachment','post','page')));
}}}

A quick look at wp-includes/comment.php, line 327 (WP v3.3.1) shows that the 2nd option will be array_filter'ed away.  Immediately below, all of the WHERE clauses are hardcoded as ""="", which is why there's no way to specify more than one.  As a result, it seems like the only way to get recent comments on posts,pages,and attachments (or any other subset of >1 post_type) is to do multiple calls to get_comments (i.e. one with default params and one for attachments) then merge the results together...effectively requiring twice the work.",Justin_K
16010,get_comments()  returns as result (by default) comments that were not approved.,,Comments,3.0.3,normal,normal,Future Release,defect (bug),new,,2010-12-28T16:41:11Z,2011-01-13T04:00:49Z,"I see two problems in behavior of ""get_comments()"" function (wp-includes/comments.php: 180).

1. The function returns as result (by default) comments that were approved and also comments that were not approved. 
I think that this does not fit the standard of all functions in WP that by default return only posts/comments that have been published/approved.

2. I think that there is no support of cookies of current responder. In other words, a parameter that allows the following functionality does not exist.
comment_approved = '1 'OR (comment_author =% s AND comment_author_email =% s AND comment_approved = '0')
( wp-includes/comments-template.php: 852)",mati1000
13939,get_page_of_comment returns wrong page number when changing threading level,,Comments,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-06-17T07:58:01Z,2010-11-13T10:04:51Z,"Initial discussion settings:
 * Enable threaded comments 2 levels deep
 * 5 top-level comments per page, first page by default
 * Older comments at top of each page

If I have comments on a post like:

'''cpage 1'''
 * comment-1
 * comment-2
 * comment-3
 * comment-4
 * comment-5
  * comment-6

{{{
$page = get_page_of_comment(6); // returns 1 which is the correct page
}}}

If I modify the initial discussion settings by disabling threading (e.g. changing the threading level to 1), the comments change to:

'''cpage 1'''
 * comment-1
 * comment-2
 * comment-3
 * comment-4
 * comment-5
'''cpage 2'''
 * comment-6

{{{
$page = get_page_of_comment(6); // returns 1 which is incorrect
}}}

This function doesn't follow the same algorithm as what is used to display the comments

This can potentially happen whenever you decrease the threading level from x to x-n",laceous
23231,preprocess_comment should get the normalised comment data,,Comments,3.5,low,minor,Awaiting Review,defect (bug),new,,2013-01-18T11:38:02Z,2013-01-18T11:39:30Z,"In '''wp_new_comment''' we normalise some data like user_ID/user_id so that we support people providing both versions but we fire the filter to preprocess the comment first.

This means if someone writes a filter they have to re-implement this normalisation if they want to filter the comment data properly.

An example of where this currently goes wrong is when Akismet tries to fetch the roles of the user submitting the comment - http://plugins.trac.wordpress.org/browser/akismet/tags/2.5.7/akismet.php#L332

This only works if the comment comes via a route that supplies the data correctly and not one that doesn't.",westi
21448,unfiltered HTML comments from a frame js fix breaks js in windowed comments,,Comments,3.4.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-08-01T21:58:53Z,2012-08-02T17:56:36Z,"Noticed this today.

We have comments loading up in a jquery colorbox on a site being developed and it loads the comment form via ajax.  When it's loaded, the fix in #20812 breaks javascript because the property ""name"" is null.

Attaching a patch after posting this for only executing when `document.getElementById(""_wp_unfiltered_html_comment_disabled"")` != null.",nerrad
23931,wp_insert_comment should require comment_post_ID,,Comments,,normal,normal,Awaiting Review,defect (bug),new,,2013-04-03T18:41:58Z,2013-04-03T19:06:08Z,"At this moment there is no check for example comment_post_ID. Not sure if there are more checks needed. Reason I asked are a few notices on the unit tests caused by WP_UnitTest_Factory_For_Comment. Those comments don't add a post ID what should change.

Currently, if a null comment_post_ID is passed, the comment isn't connected to a post. This can create confusion. Also Unit tests should run with WP_Debug on.",markoheijnen
14279,wp_new_comment ignores comment_date_gmt and comment_date,,Comments,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-07-12T14:07:06Z,2011-01-27T08:08:52Z,"wp_new_comment takes in a $comment array, but then ignores the comment_date and comment_date_gmt passed into it, instead replacing them with the current time. 

It should only set them if the data passed in is empty or not a date/time. ",johneckman
9959,wp_rel_nofollow_callback adds too many rel/nofollow attributes,junsuijin*,Comments,2.8,low,minor,Future Release,defect (bug),accepted,has-patch,2009-05-28T13:54:35Z,2011-04-13T20:57:31Z,"if you insert a link in a comment, like:


{{{
<a href=""foo"" rel=""bar nofollow"">
}}}

wp_rel_nofollow_callback() turns that into:

{{{
<a href=""foo"" rel=""bar nofollow"" rel=""nofollow"">
}}}

Here's a correct implementation of a strip_nofollow() function:

http://plugins.trac.wordpress.org/browser/sem-dofollow/trunk/sem-dofollow.php

We'd probably want to do the same in WP, and then reverse it: add rel=nofollow if no rel is present, and add a nofollow to the rel if it's not in there already.",Denis-de-Bernardy
24054,(get_)comment_class() should include a is_user_member_of_blog() class,,Comments,3.5.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-04-11T22:35:04Z,2013-04-11T23:27:06Z,"On multi-site, there's no way to style comments that are members of the site. You can either style the post author or all registered users (who may not have access to the site's admin area). Example use case would be a multi-author site where you want comments from all authors highlighted.

I think it'd also be cool to include what role they are so that you could style say all authors, editors, and administrators but not style contributors or something like that.

I'm not sure if this would an information exposure issue though (does it matter if it is known what role a user is or that they are a member of the site?).",Viper007Bond
19256,Ability to mark a comment as spam from the trash,,Comments,2.9,normal,normal,Awaiting Review,enhancement,new,,2011-11-16T03:07:48Z,2011-11-16T09:42:58Z,"Say you're scrolling through comments in the trash and you realize a comment should have ended up in spam instead.

There's no easy way to untrash then re-spam the comment — you'd lose it and it'd get restored to its previous status. You can't edit it and modify its status from there, either.

I think there should probably be a way to spam a comment from the trash. (For that matter, I don't think there's an issue with being able to edit a trashed comment, too. Perhaps you want to modify it then untrash/approve it.)",nacin
20977,Add Dynamic Comment Statuses,,Comments,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-06-15T17:12:07Z,2012-06-15T17:21:37Z,It would be great to add some filters/actions that would allow plugin developers to add additional statuses to comments.,supercleanse
11334,Add caching to get_page_of_comment(),,Comments,2.9,high,major,Future Release,enhancement,new,has-patch,2009-12-05T07:33:50Z,2013-02-05T05:10:21Z,"Ack. `get_page_of_comment()` lacks caching which means if you call `get_comment_link()` for the same comment ID on the same page multiple times (and outside of the loop), it will query multiple times. You also can't cache the result between page loads (the big ""uh oh"").

Attached patch introduces a cache that stores comment ID => older comment count (in short, the result of the function's query) on a per-post basis.

When any comment's status is changed, the entire cache for that comment's parent post is deleted as it will likely affect other comments (for example, deleting a comment can change the page of newer comments).

I opted to make a new cache flag (group), but I'm not sure if using an existing one would be better or not.

Oh, and this patch needs through testing and/or a good review.",Viper007Bond
20446,Add comment form submit button class attribute,,Comments,3.3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-04-15T07:34:55Z,2012-05-03T15:59:12Z,"The comment_form() is packed with filters all over the place to customize the from just the way you need, but one thing i find missing is a class on the submit input tag and if there was a class attribute then it should be filterable.

I know you can set the input ID and simply style based on the ID selector but when designing themes usually you have some kind of class defined for buttons, especially when using any of the html5/responsive theme frameworks and if the comment submit input had a class which was filterable then it would make our lives much easier.

",bainternet
22922,Add filter 'comment_notification_email_to' in wp_notify_postauthor(),,Comments,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-12-13T17:53:32Z,2013-01-03T17:57:54Z,"Currently, mailto: address is not filterable in pluggable function `wp_notify_postauthor()`. Thus, in order to send replies to email addresses other than the post author, the entire function must be overridden.

Patch makes mailto: filterable for `wp_notify_postauthor()`, moving `$author->user_email` to an array, and applying the `'comment_notification_email_to'` filter.",chipbennett
20353,Add filter for email recipients in wp_notify_moderator(),,Comments,3.3.1,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-04-04T12:35:36Z,2013-01-03T17:57:33Z,"As administrator, I would like more control over email notifications when comments are marked for moderation without having to overwrite the pluggable function wp_notify_moderator. 

The function wp_notify_moderator sends emails to post authors (when they have sufficient roles) and the admin by hard coding the $email_to array. I'd like to see the $email_to array sent to a filter with $comment before wp_mail() is called. That would allow me to write a theme function to manipulate the $email_to array to add or delete recipients. 

My workaround was to write a site specific plugin that overwrote wp_notify_moderator() to manipulate the $email_to array.",lexhair
761,Add hook to conditionally disable comment notifications [w/ patch],matt,Comments,1.2.2,normal,normal,Future Release,enhancement,reopened,has-patch,2005-01-27T07:42:58Z,2012-11-07T07:56:15Z,"E-mail notifications for posted comments are controlled by the  'comments_notify' setting.  E-mail notifications for comments needing modification are controlled by the 'moderation_notify' setting.  Each is an all or nothing setting, i.e. if 'on', ALL post authors will receive notifications when appropriate.  AFAIK, there isn't a  clean way for a plugin to insert itself into the notification process.",coffee2code
16944,Add new 'bynetworkuser' CSS class to output from comment-template.php,,Comments,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-03-23T06:28:46Z,2011-06-08T05:23:43Z,"Currently, the comment-template.php file checks to see whether a comment author is in the wp_user table.

If they are, then WordPress will emit a 'byuser' class as part of the comment div markup.

However, this behaviour is not ideal from multisite installations. 'byuser' should be restricted on a per-blog basis.

I propose that the current behaviour be assigned to a new CSS class, 'bynetworkuser'.",jacques_chester
23988,Add post info on comment.php?action=editcomment,,Comments,3.5.1,normal,minor,Awaiting Review,enhancement,new,,2013-04-08T12:58:20Z,2013-04-08T14:54:39Z,"When you get a comment notification, if you click on a link to mark as spam, etc, when you get to the edit comment screen, there's no indication of which post/page the comment was in response to, which can be a determining factor in deciding if a comment is valuable, off-topic, or spam. 

We should add an ""In response to"" area that lists the post title, date/timestamp like on comment list screen. If it's in response to another comment that should show as well, but since we don't have that in comment screen functionality yet, at least adding the post info that we already have and show on the list would be a clue and a step in the right direction.",jenmylo
16882,Add support for fetching comments posted since a specific date,,Comments,3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-03-17T21:08:51Z,2011-03-22T14:30:12Z,"Adding a ""since"" option to wp.getComments and get_comments() could help reducing bandwidth used by mobile apps.

Probably useful for themes/plugins too",koke
21571,Add support multiple comment types in get_comments,,Comments,,normal,normal,Awaiting Review,enhancement,new,,2012-08-14T00:49:42Z,2012-08-24T19:54:42Z,"Custom comment types are a nice way to categorize comments, however, if you wish to retrieve multiple comment types you cannot use ''get_comments''.  This enhancement request (patch attached) adds support for multiple comment types a la:

{{{
$comments = get_comments( array(
  'post_id' => $post->ID,
  'type' => array(
    'a-sweet-comment-type',
    'some-other-comment-type',
  ),
));
}}}",borkweb
20597,Allow WP_Comment_Query::query to filter by category,,Comments,3.4,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-05-02T03:35:35Z,2012-05-02T03:45:58Z,"The attached patch allows WP_Comment_Query::query to accept three additional arguments:

* `cat`
* `category__in`
* `category__not_in`

The resulting comments are then filtered by these category arguments as well as any other arguments.

These arguments work the same way as their `WP_Query` counterparts.

I would appreciate advice on the appropriateness of using `INNER JOIN` (as I have done here) to join in the taxonomy tables to the query.",sambauers
20302,Allow comment_form() to add attributes to <form> tag,,Comments,3.3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-03-25T15:48:53Z,2012-04-01T18:23:56Z,"The standard method to allow Google Analytics to track comment submissions as a 'goal' is to add a piece of JavaScript code wrapped in an 'onsumbit' attribute:
http://www.optimisationbeacon.com/analytics/track-blog-comments-in-google-analytics/
http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html

We want something like the following:

{{{
<form action=""http://www.example.com/wp-comments-post.php"" method=""post"" id=""commentform"" onsubmit=""_gaq.push(['_trackEvent', 'Comments', 'Submit', 'POST TITLE']);"">
}}}

However the current arguments submitted to comment_form() do not provide for adding attributes to <form>
http://codex.wordpress.org/Function_Reference/comment_form

I was forced to perform a workaround in which the onsubmit code was inserted by JavaScript on the fly at runtime.

So this is request to alter comment_form() such that arguments accepted provide for 'onsubmit' or other custom attributes to be appended on the <form> tag.",psbook
10569,Allow filtering of reply text with comment context,,Comments,,normal,normal,Future Release,enhancement,new,has-patch,2009-08-08T13:55:54Z,2011-02-01T16:30:36Z,"I know you can specify the reply text for comments, but you can't make them specific to each comment such as ""`Reply to comment #1234 by Joe`"".  This will let you do that by adding a filter called `comment_reply_link_text` to `get_comment_reply_link()` that passes along $args, $comment, and $post (just like the existing `comment_reply_link` filter).

I know you COULD do this with some processing on the link, but it would require pulling comment and post IDs from the URL and/or onclick, then replacing the text in the link itself.  This way would be a lot simpler and only adds a single filter.",aaroncampbell
12991,Allow setting default_comment_status specifically for Pages (or for any post type),messenlehner,Comments,3.0,normal,normal,Future Release,enhancement,assigned,has-patch,2010-04-13T22:52:28Z,2012-11-25T01:22:22Z,"Now that the default theme has {{{comments_template}}} in Pages too, I have been thinking that maybe we should offer a way of setting {{{default_comment_status}}} specifically for Pages (as distinguished from Posts).

Why?

Say that I select Twenty Ten as my theme.  I leave the global option for comments ON, because, like most people, I want comments on my Posts.  However, like most people, I do not want comments on Pages, or I want comments only on a few selected Pages.  So, every time I make a new Page, I have to untick the checkbox on the Edit screen, in order to override the global setting.  That’s not convenient!

I think we need to do something about that:

Either we leave Twenty Ten as is and change something at the level of post type registration, or we change something in Twenty Ten.

(I have no idea what would be a satisfactory way to deal with this at the theme level.  Sandbox, for instance, displayed the form on Pages only if there was a certain custom field with a certain value, which may seem very unfriendly at first sight, but I find it is much friendlier than what we have now in Twenty Ten.)",demetris
15520,Break date/time into a separate column in Comments views,,Comments,,normal,normal,Future Release,enhancement,new,needs-refresh,2010-11-20T15:30:35Z,2012-03-08T10:18:38Z,"Now that column sorting is in, it makes sense to break the date and time a comment was made into a separate column in the Comments view so they can be sorted chronologically.

Currently, the time is part of the content column, which can be confusing as if someone sorts by that column it becomes an alphabetical sort.",markel
23851,Can we get some classes on the comment form output?,,Comments,3.0,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-03-22T20:02:00Z,2013-04-04T03:32:41Z,"The `comment_form()` function is quite useful, but styling it pretty much requires that you target the IDs, since the the outermost div and the form itself don't have classes.

If you're trying to stay as low on the specificity scale when writing CSS, not having classes available to target pretty much stops you cold.

I don't really care about the class names, though something descriptive and somewhat semantic would be preferable.

Anybody have thoughts?",nathanrice
21834,Comment History,,Comments,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-09-07T20:30:47Z,2012-09-08T03:37:40Z,"This ticket provides a simple patch for comment history in core.

''The Problem'':  

In at least a few  places:  ([comment:ticket:9117:10], [comment:ticket:15534:4], [comment:ticket:9495:3]) Nacin has mused about the desirability of introducing comment history to core, citing Akismet’s implementation as a model for how this might be done.

There are good reasons for wanting this, as comment history could serve as a solid underpinning for a variety of other features such as more informative moderation emails, some indication of why a message was marked as spam, and even comment versioning.

The idea is that to implement any of that, we really should have basic comment versioning in core, a la Akisment.


''The Solution'':

Our goal was to expand the API so as to reproduce and streamline the basic history functionality provided by Akismet, port and tweak Akismet’s nice history UI, and keep the change set minimal.

Comment history API:

* added simple functions to /wp-includes/comment.php to get and update comment history.  These in turn use existing comment_meta functions.

UI:  

* there’s now a comment history meta box on the comment edit screen.  It looks just like Akismet’s.  This was implemented as a real meta box.  A sorting function is also included.

History Events:

* this patch supports the following history events, each of which has a nice, plain-english (internationalizable) history message, which always includes the user responsible for the action and a timesince. 
 * edit_comment (“edited by user”)
 * trashed_comment (“trashed by user”)
 * untrashed_comment (“un-trashed by user”)
 * comment_unapproved_to_approved (“user approved this comment”)
* comment_approved_to_unapproved (“user unapproved this comment”)
* spammed_comment (“user marked this comment as spam”)
* unspammed_comment (“user marked this comment as ham”)

''Next steps'':

Here’s what we’d think of doing next if this were to be introduced into core:
* support more history events and provide more detail. In particular, support events where the comment is spammed as a result of a blacklist word or other reason.
* include some of this detail in moderation emails

''Note'':

* the Akismet plugin should be updated to use this new API instead of its own history functions
* meta boxes on edit comment did not work properly until this: http://core.trac.wordpress.org/ticket/21499 (in 3.5)

''Who we are'':

This patch comes from [http://profiles.wordpress.org/bbrooks Ben Brooks], [http://profiles.wordpress.org/mattoperry Matt Perry] and [http://profiles.wordpress.org/natebot Nathan Letsinger].  Enjoy",mattoperry
20487,Comment search isn't customizable,,Comments,3.2.1,normal,normal,Future Release,enhancement,new,has-patch,2012-04-18T23:32:07Z,2012-07-12T16:05:07Z,"*cross-posted to the wp-hackers mailing list last night*


I work on a large news oriented WP site and first off, it actually scales remarkably well. We keep users, comments, and actual posts all in WordPress. However, due to our size, administering comments is causing us issues at the moment.

Our last outage was caused by one of our comment moderators doing a simple comment search in the admin. The query took 16 seconds to execute, the next query locked, and, with our traffic, the DB couldn't handle the resulting queued traffic.

Staying away from discussions of ""you should use Disqus"" or, ""you need more X for your mysql server,"" I think there is significant opportunity to improve the way WP handles comment searching. Every comment search takes the following form:

SELECT * FROM wp_comments  WHERE ( comment_approved = '0' OR comment_approved = '1' ) AND (comment_author LIKE '%TERM%' OR comment_author_email LIKE '%TERM%' OR comment_author_url LIKE '%TERM%' OR comment_author_IP LIKE '%TERM%' OR comment_content LIKE '%TERM%') ORDER BY comment_date_gmt DESC LIMIT #;

As we can all see, this is a beast of a query. Even when the term is clearly an specific term (say an email or IP), or when the intent of the admin is known (e.g. clicking the IP link on a specific comment). Furthermore, there are no hooks activated in this process for plugins to use to say create an advanced comment search plugin. One might expect hooks like those activated in post search to be activated here, like ""parse_request"" and ""get_search_query.""

Waxing philosophical, as posts, comments, and users are the three basic types of data to be stored and displayed in WP, one would expect them to have similar interfaces and functionality. They each have basic functionality of being able to retrieve a single item, a list (in full or in part), search for an element, or edit a single entry. For this reason I don't understand why each of their functionality isn't derived from something like an abstract class or an interface. The architecture here is also difficult in that you are not able to replace or extend a single class to change the functionality.

Back on target. I propose that we add functionality by which we'll be able to search by exact match in addition to the existing full wildcard (left, right, or full wildcard is probably excessive) as well as specifying the field to search. This would allow my earlier use case of searching by IP to look for an exact match in the ""comment_author_IP"" field only, not searching the fulltext of every comment.

This functionality can be created simply by:

1. Adding ""search_type"" and ""search_field"" to the WP_Comment_Query::query_vars data structure in wp_includes/comment.php
2. Replacing WP_Comment_Query::get_search_sql with something more robust, able to understand these new properties and construct the query on their basis
3. Upgrading WP_Comments_List_Table::prepare_items to accept the new queries and add them to the data structure it creates
4. Either modifying WP_List_Table::search_box to have some options of advanced search, or dropping a hook so that a plugin can easily modify it
5. Modifying the WP_Comments_List_Table::column_author to supply the correct query string to indicate an IP search

If I can figure out a way to make this more similar to the signature of posts and users, or at least add some hooks at the right places, I can do that as well.

This will add efficiency for everyone--particularly those who have lots of comments. I modified our core for this functionality today and we will fully QA it tomorrow. I made it on 3.2.1 as that is what we're running right now, and there are minimal changes in the affected files and functions between 3.2.1 and 3.3.1 and even the nightly.

I can submit a patch as long as it passes our QA--how should I do that, off the nightly?

Thanks,
-Kenton Jacobsen",brokentone
16365,Comment transition for new comments,,Comments,3.1,normal,minor,Future Release,enhancement,new,dev-feedback,2011-01-24T21:07:46Z,2012-05-28T12:39:19Z,"As far as I can tell wp_transitions_comment_status() does not get called for new 'comments' based on my testing and review of comment.php in wp-includes.

There is a similar transition for posts that gets called for new 'posts' including hooks like 'new_to_publish' and 'new_to_private'.

I feel that there should be a similar hook to this form comments so that plugins can hook into new comments differently from comments moved from one existing status to another (like comment_unapproved_to_approved'.",MattyRob
15015,Customisable submit button for comment form,,Comments,3.0.1,normal,normal,Future Release,enhancement,new,dev-feedback,2010-10-02T16:38:10Z,2012-12-16T00:07:37Z,"Note: I'm setting this as a blocker because it is a blocker '''to me'''. Set it whatever you feel appropriate.

I badly needed to customise the submit button because I wanted to add a tabindex.

I could reimplement the whole form with my markup, but as I already worked my way through all the other fields, I did want to continue this way.

Sadly I discovered it's not possible. So, after discussing this in IRC, I decided to hack the core and propose the attached patch.

Basically now you can create a filter and output your markup, like this:

{{{
function awesome_comment_form_submit_button($button) {
	$button =
		'<input name=""submit"" type=""submit"" class=""form-submit"" tabindex=""5"" id=""[args:id_submit]"" value=""[args:label_submit]"" />' .
		get_comment_id_fields();
	return $button;
}
add_filter('comment_form_submit_button', 'awesome_comment_form_submit_button');
}}}

and filter magic happens. Please notice that
1. you have to include [args:id_submit] and [args:label_submit] if you want the comment_form() parameters to work.
2. you have to use the get_comment_id_fields() function.

It may be better but it works for me. If anybody feels like making it better, be my guest.",morpheu5
7051,Delete blacklisted comments rather than mark them as spam,,Comments,2.5.1,normal,normal,Future Release,enhancement,new,has-patch,2008-05-28T11:37:11Z,2011-02-08T04:10:40Z,Comments that are blacklisted because of the Blacklist keys on options-discussion.php should be deleted immediately instead of being marked as spam. Patch attached.,donncha
12521,Disable Site Wide Discussions - Admin Settings,,Comments,3.0,normal,normal,Future Release,enhancement,new,,2010-03-05T01:44:26Z,2011-08-27T08:42:14Z,In the admin discussions options there should be an option to completely disable discussions site wide.,ceenz
21758,Do not require a file in comments_template(),,Comments,3.4.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-08-31T20:22:16Z,2012-09-01T11:23:07Z,"comments_template() is a very useful and reliable way to set up comments for a page, but it has a major downfall: it forces a file to be included when, in reality, one does not need to be.

Numerous times it has been the case that I needed comments to be setup in the wp_query object, but did not want to output anything at that time. The hack I have used is simply to include an empty comments.php file. This method is less than desirable for obvious reasons.

So, I propose that we simply add a parameter I'm calling $require that will control whether or not a file is included at all.",mattonomics
11359,Don't nofollow links in admin comments,,Comments,2.9,normal,normal,Future Release,enhancement,new,,2009-12-08T12:23:15Z,2011-04-15T08:25:24Z,"Links in admin comments shouldn't have rel=nofollow.

Admin comments are not user-generated content, and the site owner (admin) is vouching for the links just like when they link from the post itself. 

Therefore, this usage of nofollow is incorrect.

Also, if I go and edit a comment and remove nofollow from a link, WP adds it back. It shouldn't do that either.

Note that in the unlikely event of wanting a link in a comment to be nofollowed, this could still be done manually.",caesarsgrunt
11360,Don't nofollow links within the site,,Comments,2.9,normal,normal,Future Release,enhancement,new,has-patch,2009-12-08T12:24:42Z,2010-04-04T06:48:37Z,"Relative links or links with the site's own domain shouldn't be nofollowed.

This use of nofollow is damaging to the site's search engine rankings.",caesarsgrunt
9775,Duplicate comment check is too strict,,Comments,2.7.1,normal,normal,Awaiting Review,enhancement,reopened,,2009-05-09T21:27:38Z,2012-08-19T23:33:35Z,"The duplicate comment detection mechanism doesn't allow duplicate comments on the same post, even from the post author. That's not good.

The duplicate comment check should only block the new comment if there is no other comment posted between the new comment and the old comment.",scribu
13363,Edit Comments: Pending > Approving shouldn't make them disappear from screen,garyc40,Comments,3.0,normal,normal,Future Release,enhancement,assigned,has-patch,2010-05-11T23:35:45Z,2012-03-08T01:56:30Z,"Edit Comments: Pending > when clicking Approve the comments shouldn't just disappear from the screen.

They should collapse and have an undo status like when you trash or spam a comment.

ENV: WordPress trunk r14573 (3.0-beta2-14565)

",lloydbudd
10869,Eliminate moderation on admin comments,,Comments,,normal,normal,Future Release,enhancement,new,,2009-09-28T10:18:53Z,2009-11-28T12:34:10Z,"Currently, if comment moderation is enabled, comments left by the admin are also moderated, requiring approval before they're posted.  

Proposed change: If comment moderation is activated, all replies and comments left by the admin are auto-approved.",heather_r
13857,"Email notifications lack a link to the comment, from address could be improved",,Comments,,normal,normal,Future Release,enhancement,new,,2010-06-11T21:27:24Z,2010-10-28T01:47:17Z,"'''Email Notification'''
For the 6+ years I believe I have been using WordPress, the emails that notify me someone has made a comment have several links in them.

'''Fields within an email notification'''
Email, Url, Whois, Comment, All Comments, Delete, Spam

The comment, at least in plain text emails, contains html markup, which often is encoded making it hard to read, depending on the comment complexity.  I suggest a simple strip_html style function be ran on the comment copy.

The link to the comments only takes you to the comments, but does not add in the identifier in the url to take you to that specific comment.  The blog I am managing has 30+ comments on each page, making it harder than it should be to get to the comment and reply.

An example of a better method might be:
http://example.com/foo-bar-baz/#comment-7348
Compared to:
http://example.com/foo-bar-baz/#comments
----
'''Email Headers'''
The From header in the email is is correctly set to the ""Name"" value the user filled into the comment form, the email address is set to wordpress@example.com where example.com is the domain of the site.

However, the reply-to header is correctly set to the actual sender.  Bounces (NDR's) and the cosmetic view of an email could all be improved with a simple condition:

{{{
if is_valid(emaIl) then
  from = name & ' <' & email & '>'
  reply-to = from
else
  // looks like they did not set the data
  // fall back to some sane defaults
end if
}}}


",hexley
16979,Extra hooks needed in comment process,,Comments,,normal,normal,Future Release,enhancement,new,dev-feedback,2011-03-27T06:06:54Z,2012-05-22T16:29:11Z,"I'm running into a few commenting issues whilst building a plugin with a custom post type..

 * Duplicate comment check's cannot be bypassed
 * Empty comments are not allowed (In this case, the comment body is empty whilst a set of custom fields acting as metadata are set, meaning, the plugin wants to accept that comment)
 * being able to override the wp_die() in the commenting process would be useful (Currently: Duplicate comments, User not logged in, and not all fields filled in will cause this)

One potential solution would be to move [http://core.trac.wordpress.org/browser/trunk/wp-comments-post.php#L55 lines 55-84] from `wp-comments-post.php` to functions hooked to `preprocess_comment`",dd32
23800,"Filter Comment Blacklist, to delete duplicated terms",,Comments,,normal,normal,Awaiting Review,enhancement,new,,2013-03-16T23:37:13Z,2013-03-16T23:37:13Z,"Hi,

In Comment Blacklist, when I save terms, duplicates are not eliminated.

Would be good if the function array_unique would remove these duplicate terms.",shadowhck
13450,Filter Comments Link,,Comments,,normal,normal,Future Release,enhancement,new,has-patch,2010-05-19T01:19:50Z,2010-10-28T12:12:51Z,"This filter allows a developer to modify a post's comments link.

Useful for situations where one needs to add or modify components of the URL such as on-click javascript, or changes to the anchor text, etc...",ikailo
23870,Filter Glyph for Comment Required Fields,,Comments,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-03-27T16:57:51Z,2013-03-31T15:31:37Z,"Currently the `comment-template.php` file uses an asterisk (*) as the default glyph for required fields used in the `comment_form()` function. This glyph is not easily manipulated without having to essentially over-write the entire `comment_form()` function.

I suggest the glyph be filtered. Therefore if one wants to change it, for example, to a hash (#) symbol then they can simply filter the output; or, if for any other reason one might want to enhance the glyph visibility or utility the filter would then allow for this while minimizing the impact on the default comment form.",cais
19739,Filter to override exit for comments on drafts (comment_on_draft),,Comments,3.3,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-01-04T19:01:18Z,2012-01-05T18:45:37Z,"I'd like to use comments on draft posts as part of an editorial workflow. Will this be as easy as adding a filter to fire before the current comment_on_draft action that can be checked before exiting? I'll try that and add a patch if it looks good.

Related #13276. Not relevant to #18630, I think.",cyberhobo
7054,Generated avatars should not be shown on moderation pages.,ryan,Comments,,normal,normal,Future Release,enhancement,reopened,has-patch,2008-05-28T15:53:22Z,2011-02-01T04:44:25Z,"When moderating a lot of comments or checking the akismet queue the presence of an avatar can assist when checking for spammers. If generated avatars are shown on those pages it will increase the time to check comments and could lead to spam being inadvertently approved.

These 2 pages should not show generated avatars.

/edit-comments.php?comment_status=moderated

/edit-comments.php?page=akismet-admin

This does mean that avatar-free users who have had a previous comment approved would not have their generated avatar shown. In this case their avatar would need to be shown.",podz
10863,Gravatars without email all end up looking generic,,Comments,,low,minor,Future Release,enhancement,new,has-patch,2009-09-26T19:26:36Z,2011-01-06T14:50:54Z,"When your blog has this option turned on

  ""Comment author must fill out name and e-mail""

and multiple users leave comments, if these users do not provide email addresses it will appear that they are all the same user as the identicon/monsterid/etc icons will be the same.

With two additional lines of code, you can substitute the IP address in place of the email to get a unique hash in order to distinguish one anonymous/non-emailed user from another.

Patch is attached",thecodepro
23797,Hard coded HTML marking in comment_form(),,Comments,3.5.1,normal,normal,Awaiting Review,enhancement,new,,2013-03-16T21:16:23Z,2013-03-17T14:50:58Z,"Hello

it seems so ugly hard coding has slipped in the comment form. 

On line 1554 of comment-template.php, there is some hard-coded html :
 {{{
<h3 id=""reply-title"">
<?php comment_form_title( $args['title_reply'], $args['title_reply_to'] ); ?>
<small><?php cancel_comment_reply_link( $args['cancel_reply_link'] ); ?></small>
</h3>
 }}}

Semantically speaking, a H3 is far from being optimal. 
Also, filters exists for all other elements of the comment form. 
The h3 and small should not be hardcoded. 

A new value could be included in the defaults : 

 {{{
'comment_reply_markup' => 
    '<h3 id=""reply-title"">%1$s <small>%2$s</small></h3>',
 }}}

and line 1554 replaced by : 

 {{{
<?php printf( $args['comment_reply_markup'], 
comment_form_title( $args['title_reply'], 
$args['title_reply_to'] ), cancel_comment_reply_link( $args['cancel_reply_link'] ); ?>
 }}}

Thanks a lot, hope you'll take it :)",Marie-Aude
16219,"If you can edit comments on the post, 'Slow down Cowboy' shouldn't kick in",garyc40,Comments,,normal,normal,Future Release,enhancement,assigned,has-patch,2011-01-13T19:05:44Z,2011-01-14T02:51:10Z,Currently it's for administrators only. That doesn't make much sense for those who can already moderate comments.,nacin
6536,"Introduce the concept of ""read"" and ""unread"" comments for better workflow in the admin",markjaquith*,Comments,2.5,normal,normal,Future Release,enhancement,accepted,,2008-04-02T00:48:54Z,2012-03-08T01:31:11Z,"The Moderation Queue is a great way to manage your comment workflow.  All comments go in there, and you approve, spam, or delete them.  At the end you get a nice little ""0"" and you know you've dealt with all new comments.  This doesn't work for people who don't moderate every comment.  They have no idea when they are done, and which comments they have or have not looked at.

I'd like to add a {{{comment_read}}} column to the comments table.  It would be either ""1"" or ""0"".  There would be a new sub-tab for Comments: ""Unread comments (%d)""  This page would be just like the Moderation page, except that it would only show comments with {{{comment_read = 0}}}.  This could act as ""comment workflow central"" for both people who pre-moderate and people who post-moderate.  Unapproved comments would have the actions: Approve, Spam and Delete.  Approved comments would have the actions: Archive, Spam and Delete.  Clicking any of these actions would both carry out that action AND mark that comment as read, making it disappear from the ""Unread comments"" page.  (""Archive"" only marks it as read).

Enterprising theme developers could even have this status shown on the public blog, so that people know whether their comments have been seen.

For background on this idea, please see [http://markjaquith.wordpress.com/2008/03/20/the-comment-inbox/ The Comment Inbox]

Note that this has benefits for people who moderate every comment, because they can now store comments in the moderation queue (comments they want to remove from the blog, but not delete) without that getting in the way of their comment workflow.",markjaquith
22164,"Move comment ""keyboard shortcuts"" setting to comments -> screen options",,Comments,,normal,normal,Future Release,enhancement,new,has-patch,2012-10-11T14:14:23Z,2012-11-22T03:31:45Z,"Seems like it would make more sense to move the comment ""keyboard shortcuts"" setting from ""Your Profile"" to the screen options pane of edit-comments.php.  Something like:

[[Image(http://f.cl.ly/items/1k210Z2V1o0b350I1n0V/keyboard-shortcuts.jpg)]]",lessbloat
12392,Move comment fields to meta data instead,,Comments,,normal,normal,Future Release,enhancement,new,,2010-02-26T20:09:24Z,2012-07-16T04:19:52Z,"Look at the comment table:
{{{
CREATE TABLE $wpdb->comments (
  comment_ID bigint(20) unsigned NOT NULL auto_increment,
  comment_post_ID bigint(20) unsigned NOT NULL default '0',
  comment_author tinytext NOT NULL,
  comment_author_email varchar(100) NOT NULL default '',
  comment_author_url varchar(200) NOT NULL default '',
  comment_author_IP varchar(100) NOT NULL default '',
  comment_date datetime NOT NULL default '0000-00-00 00:00:00',
  comment_date_gmt datetime NOT NULL default '0000-00-00 00:00:00',
  comment_content text NOT NULL,
  comment_karma int(11) NOT NULL default '0',
  comment_approved varchar(20) NOT NULL default '1',
  comment_agent varchar(255) NOT NULL default '',
  comment_type varchar(20) NOT NULL default '',
  comment_parent bigint(20) unsigned NOT NULL default '0',
  user_id bigint(20) unsigned NOT NULL default '0',
...
}}}
A lot of that is not actually being used on many sites and could be moved to standard meta data, available on demand, but not pulled out by default.

Specifically:

comment_author_IP - Used by Akismet and blacklist functions, included in emails sent to post authors/moderators, but once stored in the DB it's never really used again.

comment_karma - Used by some of the importers as a space to store temporary data. Not actually used by core for anything serious anywhere.

comment_agent - Used by Akismet and blacklist functions, but once stored in the DB it's never really used again.

These could be pushed to meta and thus still made available, but without them being in the main table.

This is a long term change, because some plugins would likely break. So the columns should be deprecated for a while first.
",Otto42
17951,Move or duplicate comment actions at top of each comment row,,Comments,,normal,normal,Awaiting Review,enhancement,new,close,2011-06-30T17:29:35Z,2013-01-21T23:31:29Z,"When I attempt to take an action on a comment and the comment is EXTREMELY long, it takes a while to get to the SPAM link since it's at the bottom of the comment.

This ticket is to simply propose moving the actions to the top, rather than the bottom of the comment. Or perhaps duplicate the actions there, since they are only visible on hover anyway.",chriswallace
20490,Move submit_button to wp-includes for frontend inclusion & use with comment-template.php,,Comments,,normal,normal,Awaiting Review,enhancement,new,,2012-04-19T18:04:55Z,2012-04-23T14:43:09Z,"It would be nice to be able to use submit_button() on the frontend as well (cf. #15064). It appears that #16066 ""fixed"" #16061, which it did, but moving the submit_button functions would enable to revert back to the use of submit_button(). Moreover, I recommend changing the comment-template.php in wp-includes ([http://core.trac.wordpress.org/changeset/16066#file2 16066#file2]) to use a filter with the submit_button to enable attributes like onClick. As it stands right now, if a user wants to track comments in their analytics they have to hide the original and add a function hooked into comment_form and redo all the args.",wpsmith
10856,Move unesential comment fields to the comment meta table,,Comments,2.9,normal,normal,Future Release,enhancement,new,dev-feedback,2009-09-26T03:07:47Z,2011-07-28T21:03:24Z,"The wp_comments table has 3 less-used fields that would be better placed in the new commentmeta table. These are:

- comment_author_IP

- comment_agent

- comment_karma",scribu
7532,Need comment_modified_date_gmt for approvals and edits,,Comments,2.6,low,minor,Future Release,enhancement,new,,2008-08-17T04:45:49Z,2009-06-11T12:39:18Z,"Summary:[[BR]]
Currently there is only one date field for comments, comment_date_gmt. This is insufficient, because it represents only the creation date, not the approval date. The function get_lastcommentmodified can only check comment_date_gmt, which means that it can return an earlier date than the approval date. This can lead to RSS feeds wrongly returned HTTP 304 Not Modified responses. There needs to be comment_modified_date_gmt in addition to comment_date_gmt.

Steps to Reproduce:[[BR]]
(1) First comment is submitted.[[BR]]
(2) First comment is mistakenly marked as spam by Akismet.[[BR]]
(3) Second comment is submitted and posted.[[BR]]
(4) Check comments feed in RSS reader. Second comment appears in feed, first comment does not.[[BR]]
(5) Mark first comment as not spam.[[BR]]
(6) Check comments feed in RSS reader again.

Expected results:[[BR]]
Comments feed returns HTTP 200, because there is a new comment in the feed.

Actual results:[[BR]]
Comments feed returns HTTP 304.

Notes:[[BR]]
The same bug could occur in other circumstances. For example, if a comment was held for moderation.

",lapcat
23179,New avatar related option - use gravatar  only for registered users,,Comments,,normal,normal,Awaiting Review,enhancement,new,,2013-01-11T15:40:59Z,2013-01-21T04:42:39Z,"The use of gravater is problematic because there is no attempt to verify that a comment with which an email was used was actually left by the owner of the email (AFAICT gravatar doesn't even have an API for authentication).

This makes impersonating to someone else that have a gravatar in a wordpress site comments much too easy. 

IMO non autogenerated gravatars should be displayed by default only for users for which it is known that they actually own the email address, which are usually only the registered users.",mark-k
22889,Reconsider no-JS ?replytocom= links,,Comments,,normal,normal,Awaiting Review,enhancement,new,,2012-12-12T15:13:20Z,2012-12-14T13:05:31Z,"We have a no-JS fallback for comment replies. Normally JS moves the comment form around. For people with JavaScript disabled, they follow the `?replytocom={123}` link. This results in a lot of extra crawling by search engines (potentially an additional crawl per reply-able comment!) in exchange for enabling an awkwardly executed, likely underused, and non-essential feature for non-JS users.

I'd like to consider making comment reply JS-only.",markjaquith
12431,Record comment meta in wp_new_comment,,Comments,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-02-28T21:29:43Z,2010-10-28T09:01:14Z,"Spam filter plugins usually trigger on the preprocess_comment filter, which obviously happens prior to storing the comment (and thus prior to knowing comment_ID).

Comment meta would be ideal for storing spam status information, but since the comment_ID isn't known at that point, doing so involves jumping through some hoops.

This patch provides a simple way for spam filters to include comment metadata from preprocess_comment.  They simply include values in a 'comment_meta' array like this:

{{{
add_action('preprocess_comment', 'my_spam_handler');

function my_spam_handler($comment) {
    $comment['comment_meta']['my_spam_status'] = 'not-spam';
    return $comment;
}
}}}

Each key/value pair in the comment_meta array is stored as comment metadata.
",tellyworth
8071,Refrain from querying all the comments on a post when paged,,Comments,2.7,normal,normal,Future Release,enhancement,reopened,,2008-11-05T22:17:15Z,2012-07-16T04:35:24Z,"If a post has more than (comment_per_page) comments, we should query them specifically, not query all the comments and sort in PHP (doesn't scale well).

Logic:

if threading is off, use a simple limit query

elseif the page has equal or fewer comments than (comments_per_page), query them all

else query (comments_per_page) parent comments, and keep doing queries for their children, up to the threading limit (10).",markjaquith
17159,Return meaningful HTTP response for comment submitted with no POST body,,Comments,,normal,trivial,Awaiting Review,enhancement,new,has-patch,2011-04-17T19:45:03Z,2011-09-10T03:25:52Z,"A POST request to wp-comments-post.php currently returns a HTTP 200 response with an empty body if the body of the request was empty.

The server should die quickly and instruct the requesting agent not to repeat the request without modifications if minimum necessary key(s) are not present on $_POST.

I believe the possible creation of a comment requires at least a comment_post_ID. It's also the first $_POST key checked in the script. If the POST did not supply a comment_post_ID let's stop processing and provide a meaningful response. HTTP 400 Bad Request communicating the failure. Due to the spammy nature of the requestors we may or may not want to provide variable hints in the response.",niallkennedy
3842,Should make nofollow implementation cleaner and easier to remove,,Comments,2.1.1,normal,normal,Future Release,enhancement,new,,2007-02-22T10:08:56Z,2011-07-23T06:44:21Z,"{{{rel=""nofollow""}}} didn't appreciably stop comment spam, and there are many arguments for why it is a '''bad''' idea (and not just a failed idea).  We should consider axing it.",markjaquith
17913,Site-level comment options may override individual post settings. Improve communication.,,Comments,,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-06-27T20:46:43Z,2011-06-27T20:46:43Z,"Post comments may be automatically closed for a  site's posts if site option 'close_comments_for_old_posts' is true and the post was published before 'close_comments_days_old' days ago. These two options are set in options-discussion and override the 'comment_status' of an individual post.

The edit posts screen's comment meta box displays comments open/close status, allowing publishers to open or close comments for a single post. It's possible the site-level discussion settings will override the individual post yet we still might display a different post comment status than the site settings allow.

1. Enable site-level option to close comments on articles ( wp-admin/options-discussion.php#close_comments_for_old_posts )
1. Enter a days value of 1 for maximum impact
1. Edit a post published over a day ago
1. View the Discussion meta box ( #commentstatusdiv )
1. Interact with the 'comment_status' field

I would like to better communicate expected failure and let the post author or editor know this particular setting has been overridden at the site options level. If the current user can manage options I might you could link to the override in the options page.

I created a new test blog, set comments to auto-close after a day, and checked allow comments in the post screen. I was wondering why comments_open() was false for the post when I was looking at a checked box on the post screen.",niallkennedy
17020,Some comment queries are not filterable,,Comments,3.1,normal,normal,Future Release,enhancement,new,has-patch,2011-04-02T16:56:32Z,2011-05-09T23:21:46Z,"Although WP_Comment_Query::query() is fully filterable, some supplemental comment queries are still unfilterable.  The submitted patch adds the following hooks:

 * function get_approved_comments() - query filter 'get_approved_comments_query'

 * function wp_dashboard_recent_comments() - query filter 'dashboard_recent_comments_query'",kevinB
17862,The second argument for wp_notify_postauthor() is unnecessary,,Comments,,normal,normal,Future Release,enhancement,new,has-patch,2011-06-21T17:04:39Z,2011-06-21T17:04:39Z,Only the comment id is needed. See patch.,scribu
17275,UI: Missing comments count in admin screen,,Comments,3.2,normal,normal,Future Release,enhancement,assigned,has-patch,2011-04-29T13:00:48Z,2013-02-23T11:29:14Z,See Attached image.,ramiy
4332,Unusable comment error pages,markjaquith*,Comments,1.5,normal,normal,Future Release,enhancement,accepted,,2007-05-24T20:53:17Z,2012-03-08T01:35:22Z,"No comment error page requires browser navigation to leave

ENV: WP trunk r5486

While viewing a post, I click Submit Comment without entering any information and the result is  (wp-comments-post.php):

WordPress [[br]]
Error: please type a comment.

Dead end: no link back to the page where I meant to comment or maybe accidentally clicked the button, and ""Error:"" makes me feel stupid ;-)

POSSIBLE SOLUTION

I don't see any reason to navigate away from the post post.

ADDITIONAL DETAILS

Assuming the error page is desirable (sure hope not), being able to style it might be useful.",foolswisdom
10653,Update comment_author when display_name changes,,Comments,,normal,normal,Future Release,enhancement,reopened,has-patch,2009-08-19T19:43:29Z,2010-12-18T11:08:18Z,One thing that has bothered me recently is the fact that your previous comments doesn't get updated when your display_name is being updated. Which could cause some confusion. I wrote a function (see attached file for further reference) that takes care of this but I would love to see a similiar feature in the WordPress core.,mptre
19623,"Use Comment API in comments_template, rather than hardcoded SQL",,Comments,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-12-20T18:07:44Z,2012-08-14T08:36:00Z,"Currently the function {{{comments_template}}} uses hard-coded SQL queries, rather than {{{WP_Comment_Query}}} or {{{get_comments}}}. There's a note above the queries saying [http://core.trac.wordpress.org/browser/tags/3.3/wp-includes/comment-template.php#L888 /** @todo Use API instead of SELECTs. */].

To replace the queries using the API, the {{{WP_Comment_Query}}} class will need to be extended to allow querying for comments which are '''either''' approved '''or''' unapproved ({{{hold}}} status) but by a particular comment author email and comment author name ''or'' by a particular {{{user_id}}} to replace these two queries:

* {{{SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND (comment_approved = '1' OR ( user_id = %d AND comment_approved = '0' ) )  ORDER BY comment_date_gmt}}}
* {{{SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND ( comment_approved = '1' OR ( comment_author = %s AND comment_author_email = %s AND comment_approved = '0' ) ) ORDER BY comment_date_gmt}}}

If we change to use the API, there's also an opportunity to add a filter for the args, which would be lovely for plugin developers. :)",simonwheatley
10931,Verify Comment Email Addresses of Registered Users,,Comments,2.8.4,normal,normal,Future Release,enhancement,assigned,has-patch,2009-10-08T14:34:44Z,2013-01-13T21:45:07Z,"When leaving a comment with an email address of a registered user, WordPress should force the visitor to login or change the email address in the comment form.

Anyone can impersonate a blog's user if they know the user's email address.",mtdewvirus
21010,View Post Link on edit-comments.php,mordauk,Comments,3.4,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-06-18T15:10:27Z,2012-12-23T03:47:41Z,"Anytime I approve a comment, I'm always irritated by the fact that there isn't a ""View Post"" link anywhere that links to the live post on the front end. The title of the post, such as ""Hello World"", is shown, but it links to post.php.

A lot of times I want to read back through the original post before I answer the comment, and I'd prefer to do that on the live site, not the admin, so I think there needs to be a ""View Post"" link next to the post title that links to the live site.",mordauk
17928,"When a comment is spammed/trashed, change the parent of it's children",,Comments,3.2,normal,normal,Future Release,enhancement,assigned,has-patch,2011-06-29T06:42:11Z,2012-03-08T02:17:19Z,"When removing (spam/trash) a comment that has children, everything goes to hell in terms of hierarchy and you're left with a bunch of orphaned comments.

See two attached images for what currently happens after removing a comment that has children.

When a comment is removed, all immediate children of the comment to be removed should have their parent changed that of the the parent of the comment being removed (or top level if the comment to be removed is top level). Each comment that has it's parent changed then gets that action logged to it's post meta so that it can be moved back in the case of it's previous comment being restored (on post un-delete/spam, find all matching comment metas).",Viper007Bond
16576,comment_form() fields being displayed only for non logged in users,,Comments,3.0.5,normal,normal,Awaiting Review,enhancement,new,,2011-02-16T18:15:44Z,2011-10-19T23:28:16Z,"I've just noticed this - When using the '''comment_form()''' function and adding some comment meta fields,using the fields array in the $args, these fields are being showed in the front-end only for non logged in users.
In this case, the registered users can never use these comment fields.

Look at wp-includes/comment-template, lines 1561-1573 (WP 3.0.5), it parse the $args['fields'] in the else block - 

{{{
<?php if ( is_user_logged_in() ) : ?>
	<?php echo apply_filters( 'comment_form_logged_in', $args['logged_in_as'], $commenter, $user_identity ); ?>
	<?php do_action( 'comment_form_logged_in_after', $commenter, $user_identity ); ?>
<?php else : ?>
	<?php echo $args['comment_notes_before']; ?>
	<?php
	do_action( 'comment_form_before_fields' );
	foreach ( (array) $args['fields'] as $name => $field ) {
		echo apply_filters( ""comment_form_field_{$name}"", $field ) . ""\n"";
	}
	do_action( 'comment_form_after_fields' );
	?>
<?php endif; ?>
}}}

I think it is better that added meta fields should be displayable for all users (logged in and not logged in), or even to add a parameter to let the developer decide which extra fields are shown to logged or not logged users.


",maorb
14510,comment_notes_before does not work.,,Comments,3.0.1,normal,normal,Future Release,enhancement,reopened,,2010-08-02T18:39:34Z,2011-02-18T04:51:54Z,"I am unable to get the comment_notes_before to work.

Using the code:

{{{
comment_form(array( 'comment_notes_before' => 'some text' ));
}}}

... does not work.  it just leaves the default text there.

{{{
comment_form(array( 'comment_notes_after' => 'some text' ));
}}}

... does work.  It allows you to put whatever text you want.",hotforwords
12104,edit-comments.php not available to roles with proper capabilities,,Comments,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-01-31T22:25:24Z,2012-10-12T15:49:22Z,"I tried to create a Comment Moderator role today and realized it wouldn't work. My intention was to create a role for people who can't write or edit posts, but can keep an eye on the comment threads. I created the role like so:

{{{
#!php
add_role('moderator', 'Moderator', array(
            'read' => 1,
            'moderate_comments' => 1,
        ));
}}}

... then created a new user with that role. When I logged in as my test user, I realized that it was for all intents and purposes a Subscriber. I couldn't see any admin panels but the Dashboard, my profile, and the Tools. I went poking around in edit-comments.php and discovered that it's checking for another capability altogether: 

{{{
#!php
if ( !current_user_can('edit_posts') )
	wp_die(__('Cheatin&#8217; uh?'));
}}}

I double-checked wp-admin/includes/menu.php and it agreed that 'edit_posts' was the minimum capability to see this page, so I tried adding 'edit_posts' to my new role, and I still couldn't get there.

Later on in edit-comments.php, when actually trashing a comment, there is a check for 'moderate_comments', but it's a moot point: this screen doesn't even show up in the admin menu, and if you navigate directly to it, you'll get the ""You do not have sufficient permissions to access this page"" message.

I thought it was entirely possible I'd missed some finer point of creating roles, so I redid it with Justin Tadlock's excellent Members plugin, and that didn't work either.

This behavior might be intentional, but if so, I'm not following the logic. I know roles are due for an overhaul in the next version or two.",sillybean
19893,get_comments_link() doesn't link properly if there are no responses,,Comments,,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-01-25T03:35:53Z,2012-01-25T13:13:12Z,"Since the current implementation of get_comments_link() simply returns the permalink with `#comments` appended to the end of it, and the HTML element with an ID of `comments` only exists when existing comments are wrapped inside of it, it doesn't lead to anything when there are 0 comments on the post.

I've attached a patch that checks whether there are any comments on the post or not; and, if not, it appends `#respond` to the end of the link; otherwise it appends `#comments`.",cgrymala
19903,wp_count_comments() and get_comments_count() both do SQL queries,,Comments,3.3.1,normal,normal,Future Release,enhancement,new,,2012-01-26T22:16:42Z,2012-04-18T20:35:04Z,"{{{wp_count_comments()}}} and {{{get_comments_count()}}} are similar functions, with a few differences:

* Their results are returned in different formats:
 * {{{wp_count_comments()}}} returns an object of:
  * spam
  * approved
  * moderated
  * total_comments
  * trash
  * post-trashed
 * {{{get_comment_count()}}} returns an array of:
  * spam
  * approved
  * awaiting_moderation
  * total_comments
* {{{wp_count_comments()}}} caches, but {{{get_comment_count()}}} always hits the database.
* {{{get_comment_count()}}} is used nowhere in WordPress core.

I propose that we add 'trash' and 'post-trashed' reporting to {{{get_comment_count()}}}, and then have {{{wp_count_comments()}}}  use {{{get_comment_count()}}} instead of doing its own SQL queries.

See #6884 and #19901",markjaquith
14697,wp_list_comments not fully HTML5-friendly,,Comments,3.0.1,normal,minor,Future Release,enhancement,new,has-patch,2010-08-25T16:33:37Z,2012-07-04T09:47:48Z,"Currently, wp_list_comments supports ol, ul, and div as ""styles"" of nesting for threaded comments. While HTML5 is new enough that good markup practices are not entirely settled, the closest thing I've seen to a consensus is nested article elements.

This is currently not possible (except perhaps through a callback). Making it work right would also require inserting the comment classes as part of wp_list_comments' operation, which might require another parameter to turn it on.

I'm sure there are other WP functions that could use expanding to accommodate good HTML5 markup, but this is what jumped out at me.",adamrice
20025,Add a filter for post types when viewing list of comments in the backend,,Comments,3.3.1,normal,normal,Awaiting Review,feature request,new,,2012-02-12T14:03:49Z,2012-02-12T14:38:23Z,Filtering comments based on post type,nprasath002
12223,Adding a titles to comment levels with the walker class,,Comments,,normal,normal,Future Release,feature request,new,,2010-02-14T11:20:07Z,2010-02-14T17:52:36Z,"Hi Everyone! 

This is only my second post here, and my first feature request, so please excuse me if I have duplicated something or my solution is completely unsuitable. 

I am experimenting with the CMS capabilities of Wordpress, especially the enhanced post_type GUI in the new 3.0 alpha release. While building a sort of Yahoo Answers type platform, I wanted to have 1st level comments as answers to a question (a post), and 2nd level comments as comments on the answer (1st level comments). I wanted to label comments on an answer as ""comments"", but this is not really possible to do, to my knowledge, using ""wp_list_comments"".

I created my own function for wp_list_comments so I didn't have to modify Wordpress core, in order to get at the walker class at the bottom of wp_list_comments. I wanted to use start_lvl to add a title for comment level 2. However, start_lvl in ""class Walker_Comment extends Walker"" will only let you change the list type to ""ul"", ""ol"" or ""div"". My idea is to add an argument which would allow you to add a title, along with specifying it's heading (or surrounding tag). As I said, I am not an expert on Wordpress coding standards, so the following code may be completely off. 

{{{
/**
   * @see Walker::start_lvl()
   * @since unknown
   *
   * @param string $output Passed by reference. Used to append additional content.
   * @param int $depth Depth of comment.
   * @param array $args Uses 'style' argument for type of HTML list.
   * @param array $args Uses 'title' argument for title text.
   * @param array $args Uses 'title_heading' argument for title text heading level.
   */
	

function start_lvl(&$output, $depth, $args) {
  $GLOBALS['comment_depth'] = $depth + 1;
  
    switch ( $args['style'] ) {
      case 'div':
        break;
      case 'ol':
        echo ""<ol class='children'>\n"";
        break;
     default:
     case 'ul':
        echo ""<ul class='children'>\n"";
        break;
    }
	
	if (!empty ($args['title'])) {
	  
      if(!empty ($args['title_heading'])) {
	    echo '<'.$args['title_heading'].'>';
	  }
	  
	  echo $args['title'];

	  if(!empty ($args['title_heading'])) {
	    echo '</'.$args['title_heading'].'>';
	  }
	
	}
	
}
}}}",danielpataki
16252,Allow comment reparenting to fix poor threading,,Comments,,normal,normal,Awaiting Review,feature request,new,has-patch,2011-01-15T23:12:25Z,2012-04-29T10:48:16Z,"For the OCD among us, it would be super nice to be able to edit the comment_parent, to properly thread comments made in the wrong place/threading order.

Choose your own UI, but even just a numeric editor in the Quick Edit area would be a huge enhancement.",Otto42
18417,Comment whitelist in discussion settings,,Comments,,normal,normal,Awaiting Review,feature request,new,,2011-08-15T18:48:46Z,2011-08-17T09:49:25Z,"Currently, there are methods for automatically flagging comments for moderation or blacklisting comments, but there's no way to auto-approve comments that meet a certain criteria.

In Discussion Settings, it would be nice to have ""Comment Whitelist"" option to automatically approve comments from a specific IP address, using a specific email address, or matching certain keywords.

One use case: a conference or workshop where lots of people are posting comments from the same IP address often invokes the ""Slow down, you're posting too fast"" message. Instead, we should be able to add the IP address to the whitelist (possibly temporarily) so that everyone can comment without hitting the restriction.

The concern I can think of is that this would add another large paragraph box to the Discussion Settings view.",danielbachhuber
18630,Custom Comment Validation Error,,Comments,3.3,normal,minor,Awaiting Review,feature request,new,,2011-09-09T19:49:33Z,2012-04-04T18:16:21Z,"One of the things that bugs me about WordPress is not being able to customize the wp_die() function that is called on comment form validation. I have seen some people sugget core hacks, eek. I'm hoping that a hook is added to allow overriding of the default wp_die(). Maybe even a new template file wp_error.php that would be called first. 

I haven't found a lot of discussion on this in trac just #11286 and #10551",bandonrandon
12986,Enhancement to comments_popup_link(),,Comments,,normal,normal,Future Release,feature request,new,has-patch,2010-04-13T06:25:13Z,2010-04-18T05:53:20Z,"Currently ""Comments Off"" is wrap with <span> tag, but not ""Enter your password to view comments."" if post requires password. 

The idea is to wrap ""Enter your password to view comments."" with span tag, have its own css class e.g enter-password. Also adds $css_class if set. This way, theme author can easily style it based on post / comment status condition.

And add another paramater $password so that theme author can customize the text to display if post is password protected.

Need 2nd opinion with the attached patch.

",zeo
13820,AJAX update the comment bubbles on edit-comments.php,,Comments,3.0,normal,normal,Future Release,task (blessed),assigned,has-patch,2010-06-10T13:45:27Z,2012-03-08T01:58:35Z,"We update the bubble in the Comments admin menu item. We should also update the counts in the ""In Response To"" bubbles, as well as the bubble color.",matt
13158,Cron : some events may not be scheduled,westi,Cron,3.1,high,major,Future Release,defect (bug),new,,2010-04-27T23:29:46Z,2012-08-03T22:39:04Z,"the problem appears when two different events are scheduled at the same time

what happens in code is :

1st event : _get_cron_array();
2nd event : _get_cron_array();

1st event : _set_cron_array( $crons );
2nd event : _set_cron_array( $crons );


1st event is lost.",arena
19621,Cron not working in WP 3.3,,Cron,3.3,normal,major,Awaiting Review,defect (bug),new,reporter-feedback,2011-12-20T12:15:32Z,2012-04-23T21:15:31Z,"Hi,

I was working on wordpress cron and found that the cron doesn't synchronize the times even when the traffic is visiting site pages. The script works fine WP 3.2.1

Please check this. I believe wp-cron.php is not run in this latest release. ",hassanasad
20537,Don't spawn cron requests for suspended blogs,,Cron,3.3.1,normal,normal,Future Release,defect (bug),new,dev-feedback,2012-04-24T20:40:19Z,2012-09-17T06:54:10Z,"
{{{

}}}
For multisite, spawning cron requests is wasteful and unnecessary. wp_cron()/spawn_cron()/wp-cron.php should check the blog's status and bail if the blog is suspended.",ryan
12609,Enabling FORCE_SSL_ADMIN breaks wp-cron.php,westi,Cron,,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-03-15T16:02:29Z,2010-11-13T07:50:43Z,"I just completed a server migration and discovered that scheduled posting broke during the process. I tried a few things, including the suggestions from ticket #8923 with no luck. I realized that one change I made, on the new server, was a requirement that the admin uses SSL. After disabling FORCE_SSL_ADMIN I discovered that scheduled posts work again. It seems that I can leave FORCE_SSL_LOGIN turned on and it doesn't cause any problems. This is good enough for our security needs, but I'm sure others might want to have both enabled.",dphiffer
11826,Endless Cron Spawn,westi,Cron,2.9,normal,normal,Future Release,defect (bug),new,,2010-01-08T19:09:02Z,2010-12-14T10:00:23Z,"I somehow get it managed to keep such request in memory while they consume CPU all the time. I noticed that first a week ago or so and now I was able to find out some specifics:

{{{
REQUEST_URI /wordpress-trunk/wp-cron.php?doing_wp_cron
REQUEST_METHOD post
}}}

Maybe there is a condition for an endless loop in there?",hakre
8923,cron timeout is too short,,Cron,,normal,normal,Future Release,defect (bug),reopened,reporter-feedback,2009-01-22T23:50:57Z,2011-09-21T17:13:46Z,"Many users have reported  that 2.7 cron sometimes fails to publish future post. 
And it is further reported that it depends on the number of jobs on the cron queue - when the queue is too long, it will miss some. 

I believe this is because we set the timeout value too short: 

wp_remote_post($cron_url, array('timeout' => 0.01, 'blocking' => false));

When making a request to wp-cron.php, it won't return until all cron jobs are executed.  And 0.01 is just too short time span. It doesn't hurt to give it sufficent time, such as 10 minutes. It will return as long as the mature crons are fired up and executed (in most cases, it's going to be at most a few seconds ). 
",hailin
11800,doubled execution of cron jobs,westi,Cron,2.9.1,normal,normal,Future Release,defect (bug),new,,2010-01-07T11:17:53Z,2011-06-02T07:18:50Z,"Hi,

as I've already mentioned in ticket #11505 , cron-jobs occasionally get executed twice (e.g. daily backup arrives two times).

I've changed the code according to the patch attachment:ticket:11505:ticket-11505-stop-gap.patch (which derives from [http://wpengineer.com/ping-problem/]) after my comment:ticket:11505:49 and had no doubles within this time period. This week I've upgraded to WP 2.9.1 and since then backups arrive two, sometimes three times, again.

Looking at the changes from 2.9 to 2.9.1, I have no other explanation for this behavior. - Maybe we should consider having a closer look again on this patch attachment:ticket:11505:ticket-11505-stop-gap.patch .

Greetz,
Berny",neoxx
18471,Add action hook after cron processed it's jobs,,Cron,3.2.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-08-18T12:30:19Z,2012-10-15T01:26:35Z,Sometimes it's hard to debug cron jobs or validate the results. A simple action fired after the wp-cron.php did his magic could help improve this experience.,tott
21072,CRON often returns ambiguous values,,Cron,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-06-26T02:18:27Z,2012-06-26T06:18:34Z,"Many of the cron API functions return ambiguous values.  For example, `wp_cron()` [http://core.trac.wordpress.org/browser/tags/3.4/wp-includes/cron.php#L251 returns] `null` (explicitly) when cron doesn't run, but it also returns `null` (implicitly) every other time.  This can make debugging harder.

Whenever possible, I think it's valuable to return meaningful values.  The attached patch does that.",evansolomon
15148,Cron Storage Abstraction,,Cron,,normal,normal,Future Release,enhancement,new,has-patch,2010-10-19T04:04:00Z,2011-06-02T07:03:36Z,Abstract cron storage to allow pluggable storage schemes.,ryan
23133,Display a warning in the admin if cron tasks fail due to blocked HTTP requests,,Cron,3.5,normal,major,Awaiting Review,enhancement,new,dev-feedback,2013-01-07T08:33:05Z,2013-01-29T20:08:25Z,"I recently upgraded my very simple WP site to 3.5 where the following was in use:

Theme: Twenty Eleven
Plugins: None Activated

I have been completely unable to submit a post for publishing in a future date, when the time occurs, I get a ""missed schedule"" message.

The schedule entry in cron is as follows:

Next due (GMT/UTC): Jan 4, 2013 @ 11:28 (1357298880)
          Schedule: One-off event
              Hook: publish_future_post
         Arguments: [0]: 358

Increasing the timeout value in cron.php has made no difference. 

I will need to remain on a lower release until this is fixed or a diagnosis ""kit"" is made available.

I am not using any software other that WP produced at this point and feel that the lack of wp-cron documentation and support in the public domain leaves alot of people clocking many hours googling in desperation...

Make a difference in 2013 and get 3.5 development priorities to de-mystify the methods of fixing wp-cron please :o)",prb22public@…
17957,wp_reschedule_event & daylight saving,,Cron,3.2,normal,normal,Awaiting Review,enhancement,reopened,,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
18997,Adding wp_unschedule_hook function,arena,Cron,3.3,normal,normal,Future Release,feature request,reopened,needs-unit-tests,2011-10-19T07:45:11Z,2012-04-20T00:02:54Z,"
Unschedule all previously scheduled cron job for a hook.

Can be usefull for plugins when deactivating to clean up the cron queue

The $hook parameter is required, so that the events can be identified.

@param string $hook Action hook, the execution of which will be unscheduled.
",arena
13103,"""Unknown character set"" during install into database reports successful install.",barrykooij,Database,3.0,normal,normal,Future Release,defect (bug),assigned,has-patch,2010-04-24T15:10:23Z,2012-11-07T23:30:23Z,"During editing of the wp-config.php, I changed 

{{{

define('DB_CHARSET', 'utf8');
}}}
to
{{{

define('DB_CHARSET', 'utf8_general_ci');
}}}
Which I thought was valid.

After clicking ""Install Wordpress"" I got a page full of:
{{{
WordPress database error: [Unknown character set: 'utf8_general_ci']
}}}
And at the bottom, ""Success"" with a login prompt, but nothing was actually created in the database.

I think WP shouldn't report a successful install if the user happened to accidentally change this value (or another) during install as it would cause confusion.

I used a svn checked out version of WP on 2010-04-24 on my local computer using PHP5 and apache2, but I think this is really a problem since 2.6 (or when the current install system was implemented).",MECU
21870,@ error control operator hides fatal error on mysql_fetch_object,,Database,1.5,normal,normal,Future Release,defect (bug),new,has-patch,2012-09-11T14:59:36Z,2012-11-07T19:49:19Z,"I ran a get_posts() query that took me a while to track down to the @ error control operator on the mysql_fetch_object call (see wp-db.php:1219 in trunk), therefore PHP was silently die'ing on me because of a memory limit error.

I'm curious as to what use cases there are for the error control operator to be used here. In my case, I want to see these errors and fix my code accordingly, or tailor my query to the memory constraints, or rethink my data relations in the database.

",ericlewis
23085,Calling $wpdb->query() when no connection exists causes mysql_error() to throw an error,,Database,3.5,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2012-12-30T10:30:49Z,2013-01-21T00:42:22Z,"In the query() method of wp-db.php, the mysql_error() expects that if a parameter is passed to it then it should be a valid link identifier.

*May need feedback or added testing* ...this error may be specific to transactions, which is why it hasn't been noticed before. Unit tests do use transations and I only get these errors when ROLLBACK is called during specific unit tests that don't modify the DB state. A simple transaction opened & rolled back in the Debug Bar Console is not triggering this for me.

Unit test failure examples:

'''Test: test_is_image_positive'''

{{{
mysql_error() expects parameter 1 to be resource, integer given
Execution time: 0.02507209777832s
Stack Trace:
Array
(
    [0] => Array
        (
            [file] => C:\xampp\htdocs\wpnew\wp-includes\wp-db.php
            [line] => 1202
            [function] => mysql_error
            [args] => Array
                (
                    [0] => 0
                )

        )

    [1] => Array
        (
            [file] => C:\xampp\htdocs\wp_test_svn\includes\testcase.php
            [line] => 25
            [function] => query
            [class] => wpdb
            [type] => ->
            [args] => Array
                (
                    [0] => ROLLBACK
                )

        )

)
}}}

'''Test: test_is_image_negative'''

{{{
mysql_error() expects parameter 1 to be resource, integer given
Execution time: 0.02237606048584s
Stack Trace:
Array
(
    [0] => Array
        (
            [file] => C:\xampp\htdocs\wpnew\wp-includes\wp-db.php
            [line] => 1202
            [function] => mysql_error
            [args] => Array
                (
                    [0] => 0
                )

        )

    [1] => Array
        (
            [file] => C:\xampp\htdocs\wp_test_svn\includes\testcase.php
            [line] => 25
            [function] => query
            [class] => wpdb
            [type] => ->
            [args] => Array
                (
                    [0] => ROLLBACK
                )

        )

)
}}}

I don't think we should attempt {{{if ( $this->last_error = mysql_error() )}}}. That is because when mysql_error() is called without a link identifier then the most recent connection to MySQL is referenced. On a busy server this may not be the same connection as our page or transaction originally used. See #3544 for history/details.",mbijon
11151,Common White Screen of Death in wpdb,,Database,2.8.5,normal,major,Future Release,defect (bug),assigned,,2009-11-16T15:07:53Z,2010-12-08T21:32:54Z,"I imported some 10.000 users into WP through a  custom script, using wp_insert_users().
Import successful, I could log in with new users.
Yet wp-admin/users.php page fails to load the users table; I got the admin header and menu but the page stopped loading when querying the DB for the users data.
I set WP-DEBUG to true, but still no error. NO errors in the server log also.
I eventually had to add 

define('WP_MEMORY_LIMIT', '64M');

to wp-config.php to get the users.php page working.
The problem here is that the page doesn't issue the usual PHP memory limit fatal error, I had to guess to sort it out.
",nutsmuggler
23383,High archive page numbers cause invalid database queries,,Database,trunk,normal,normal,Awaiting Review,defect (bug),new,,2013-02-04T20:36:30Z,2013-02-05T13:46:24Z,"Visiting `http://www.viper007bond.com/category/videos/page/6805063692754011230` on my site generates the following database query:

`SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) WHERE 1=1 AND ( wp_term_relationships.term_taxonomy_id IN (21) ) AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 6.805063692754E+19, 10`

Note the scientific notation `LIMIT` value.


PHP: 5.3.15-pl0-gentoo[[BR]]
MySQL: 5.2.12[[BR]]
WordPress: r23386
",Viper007Bond
15004,Missing index on signups table,pento,Database,,normal,normal,Future Release,defect (bug),assigned,commit,2010-10-01T03:48:25Z,2013-05-07T17:36:17Z,"{{{
wp-includes/ms-functions.php:590:
$signup = $wpdb->get_row( $wpdb->prepare(""SELECT * FROM $wpdb->signups WHERE user_email = %s"", $user_email) );
wp-includes/ms-functions.php:595:
$wpdb->query( $wpdb->prepare(""DELETE FROM $wpdb->signups WHERE user_email = %s"", $user_email) );
}}}

But there is no index on user_email in the signups table.  Makes these queries perform a full table scan which is slow when you have lots of signups.

Attached patch adds the index but I can't figure out how schema upgrades on MS-specific tables ever get run after the initial activation of MS mode and table creation.

",barry
21504,Not checking if apply_filters exists before calling it in WP_DB,,Database,3.4.1,normal,normal,Future Release,defect (bug),new,has-patch,2012-08-06T22:49:52Z,2012-10-25T21:17:48Z,"Prior to version 3.4, there was a check to verify that apply_filters existed before calling it in wp-includes/wp-db.php.  


{{{
// some queries are made before the plugins have been loaded, and thus cannot be filtered with this method
if ( function_exists( 'apply_filters' ) )
  $query = apply_filters( 'query', $query );
}}}


In version 3.4 and above, that check doesn't exist anymore, and can throw an error. There is still a comment indicating that a check should be made, but the actual code to perform the check is now gone. This is around line 1081


{{{
// some queries are made before the plugins have been loaded, and thus cannot be filtered with this method
                 $query = apply_filters( 'query', $query );
}}}




Here is the github blame view to show when the code was remove (I'm not sure how to find this same view in your svn):

https://github.com/WordPress/WordPress/commit/81ed9a7563e5ad4c0edccd059bc4ea7d9c1a4a10

There's no explanation about why the code was removed, so would it be possible to add it back in?

Thanks!

Julia
",jdkoelsch
21762,Storing a multidimensional array using register_setting double-serializes subarrays identified with a string,sekatsim,Database,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-31T22:43:16Z,2012-09-01T16:36:41Z,"Storing a multidimensional array, such as `$options['my-option'][$id] = ""value""`, into the database using register_setting results in the ""my-option"" string getting double serialized. The option_value is stored as:

`s:9:""'my-option'"";a:1:{s:9:""option-id"";s:5:""value"";}`

The my-option array is encased in both single and double quotes, so that `isset($options['option-id']` evaluates false, but `isset($options[""'option-id'""]` evaluates true.",sekatsim
18210,"Update_post_meta is case insensitive on meta_key, but get_post_meta is NOT",,Database,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-07-22T07:05:28Z,2013-02-28T16:06:54Z,"In WordPress 3.3-aortic-dissection and 3.2.1

get_post_meta is case sensitive on the meta-key

BUT

update_post_meta is NOT case sensitive

Thus If there is a pre-existing meta record with a key in say UPPERCASE, then one can issue an update for a lowercase key that one can not then fetch as it does not exist - only the uppercase key exists. 


Example Code

{{{

	$meta = get_post_meta ($post->ID, '_allday');
	if ($meta ) { echo '<br />got lower: '; var_dump($meta);
	}
	$meta = get_post_meta ($post->ID, '_ALLDAY');
	if ($meta ) { echo '<br />got upper: '; var_dump($meta);
	}
	update_post_meta (21, '_allday','Tried to update lowercase');
	$meta = get_post_meta ($post->ID, '_allday');
	if ($meta ) { echo '<br />got lower: '; var_dump($meta);
	}
	else { echo '<br />Tried to get lower but no go';
	}
	$meta = get_post_meta ($post->ID, '_ALLDAY');
	if ($meta ) { echo '<br />Still have upper: '; var_dump($meta);
	}


}}}



Output of above:



got upper: array(1) { [0]=> string(14) ""tis the upper."" }
Tried to get lower but no go
Still have upper: array(1) { [0]=> string(25) ""Tried to update lowercase"" } ",anmari
16107,WordPress Database Error Logging Extravaganza,,Database,3.0.4,normal,normal,Future Release,defect (bug),new,has-patch,2011-01-05T12:41:00Z,2011-01-05T14:33:05Z,"If PHP error logging is enabled, the wordpress database class will log errors to file by using the error_log() function. This is a PHP function.

While doing so, it does not reflect the PHP configuration setting for {{{log_errors_max_len}}} which defaults to 1024 (bytes).

While not doing so, the database class can log extremely long queries into the file creating multiple gigabytes quite quickly.",hakre
12302,add_metadata() Fails to Store Serialized Values as BINARY,ryan,Database,,high,critical,Future Release,defect (bug),new,,2010-02-20T10:52:15Z,2010-04-18T04:36:44Z,"Symptoms:

WordPress stores corrupt values in post_metadata if there are any non-UTF-8 bytes in the meta_value.

Steps to reproduce:

Call add_metadata() with non-UTF-8 values such as a latin-1 copyright char.

Even though the serialized string goes through prepare() before the query, MySQL is required to truncate the invalid value being assigned to the meta_value field.  The result is that the stored value can never be un-serialized.

This behavior can also be replicated by trying to inject CHAR(169) into any UTF-8 table query.",miqrogroove
14445,dbdelta do not handel FULLTEXT KEY correctly and generate MySQL errors,,Database,3.0,normal,minor,Future Release,defect (bug),new,has-patch,2010-07-28T17:36:36Z,2011-01-16T02:11:59Z,"When using dbdelta during the update of a plugin that a Fulltext index use, dbdelta generate a MYSQL error due to duplicate index.

This is due to the array_search return always false.

I attached a posible solution to address this issue. I added a key named 'index_type' to the $index_ary. This way, when 'index_type' == fulltext, I add to $index_string ""FULLTEXT"".",edirect24
22408,wp_insert_attachment and _real_escape input validation and better error handling,,Database,3.4.2,normal,trivial,Awaiting Review,defect (bug),new,dev-feedback,2012-11-10T21:47:03Z,2012-11-10T21:49:25Z,"Recently when using the `wp_insert_attachment()` function I passed the whole result of the `wp_check_filetype()` function for the `""post_mime_type""` attribute, instead of the `""type""` property from the filetype check result. What I got was an error in the `_real_escape()` function which expected a string, but received an array, which didn't quite help me find my error.

I believe some kind of type checking would be nice for both the `_real_escape()` function as well as the `wp_insert_attachment()`.

It seems suitable if the `wp_insert_attachment()` function returned a `WP_Error` object in case there are issues with the passed arguments.

I'm not sure, however, what the best solution would be for the `_real_escape()` function -- return false, fail quietly, raise an exception or also return a `WP_Error`.

I would have proposed a patch, but I'm not sure what solution to implement. Let me know if I should do it in a certain way and I'll submit a patch for review, saving you a little time for other ticket review.",magadanski_uchen
12257,wpdb Scales Badly Due to Unnecessary Copies of All Query Results,ryan,Database,,normal,critical,Future Release,defect (bug),reopened,needs-refresh,2010-02-17T03:08:06Z,2013-03-19T05:19:44Z,"While working on #11726, I encountered a reproducible crash in wpdb::query()

The following code causes memory exhaustion on large result sets:

{{{
while ( $row = @mysql_fetch_object($this->result) ) {
	$this->last_result[$num_rows] = $row;
	$num_rows++;
}
}}}

The memory exhaustion message is error-controlled, causing a white screen of death even in debug mode.

I searched wp-db.php for references to $this->last_result, and I found no justification for these object reference copies.  $this->last_result '''should''' be maintained as a MySQL resource and properly optimized using the MySQL client layer instead of this PHP nonsense.

Tagging for dev-feedback to discuss which Milestone is appropriate.",miqrogroove
16762,wpdb::$base_prefix is not documented,,Database,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-03-05T16:17:01Z,2012-08-29T19:59:25Z,"Probably wpdb::$base_prefix has been merged into from MU and not further specified then.

It ''genereally'' can be replaced with {{{wpdb::get_blog_prefix(0)}}} when the MULTISITE constant is defined. That is are after wp-settings.php has been included (wp-config.php, wp-load.php), even on SHORTINIT.

It ''might'' be that this function call does not cover all cases needed because if MULTISITE is not defined when called, it will not return the {{{wpdb::$base_prefix}}}.

More insight into MU is needed, feedback appreceated. Some places look like that they are not aware of the wpdb::get_blog_prefix() function. Probably legacy MU code.

Related: #16756",hakre
11717,Access to automatic database repair/optimize with admin rights,ryan,Database,2.9.1,normal,normal,Future Release,enhancement,new,dev-feedback,2010-01-05T07:35:10Z,2012-08-08T08:52:02Z,"Hi,

I read somewhere that the reason for using a constant as enabler for the automatic repairing/optimizing database functionality was, that some people are not able to access their back-end in case certain tables are broken.

Anyway, as db optimization (and not only repairing) is also included in ''/wp-admin/maint/repair.php'', it would be helpful, if we could avoid setting the constant and in addition grant users with the admin role the right to access the functionality.

I've added the necessary two lines and attached a patch to this ticket. - Hopefully this will make it into core, because it would really ease access and increase usability.

My Best,
Berny",neoxx
18736,Add REGEXP to 'compare' values in meta_query,,Database,3.2.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-09-21T15:39:51Z,2013-01-16T23:18:07Z,"I wish to sort some queries using the alphabet.

My current query:
{{{
#!php
$getPostIds = $wpdb->get_col(""
    SELECT p.ID
    FROM $wpdb->posts p, $wpdb->postmeta pm
    WHERE p.ID = pm.post_id 
    AND pm.meta_key = 'prod-id' 
    AND pm.meta_value
    REGEXP '^"" . $wpdb->escape($alpha) . ""'
    AND p.post_status = 'publish' 
    AND p.post_type = 'review'
    AND p.post_date < NOW()
    ORDER BY pm.meta_value ASC""
);

$posts = new WP_Query(array(
    'post__in' => $getPostIds,
    'post_type' => 'review',
    'post_status' => 'publish',
    'showposts' => 20,
    'paged' => $paged,
    'caller_get_posts' => 1, // do not order sticky posts at the top
    'orderby' => 'title',
    'order' => 'ASC'
));
}}}

It would be much simpler if I could use the equivalent with meta_query:
{{{
#!php
query_posts(array(
    'post_type' => 'review',
    'post_status' => 'publish',
    'showposts' => 20,
    'paged' => $paged,
    'caller_get_posts' => 1, // do not order sticky posts at the top
    'orderby' => 'metal_value',
    'order' => 'ASC',
    'meta_query' => array(
        array(
            'key'   => 'prod-id',
            'value' => '^'.get_query_var('letter'),
            'compare' => 'REGEXP'
        )
    )
));
}}}

I'd love to see it implemented :)
Thanks!",FlashUK
15499,Add an index for get_lastpostmodified query,,Database,3.0.1,normal,normal,Future Release,enhancement,new,dev-feedback,2010-11-19T18:20:31Z,2012-12-04T21:50:27Z,"I had a friend (Jools Wills) look over a WordPress site recently, to get a fresh view on what might be optimised, and he noticed a query which might benefit from an additional index on ```WP_Posts```. The query ```SELECT post_modified_gmt FROM $wpdb->posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY post_modified_gmt DESC LIMIT 1``` in ```get_lastpostmodified``` is run for last modified date in GMT, and currently doesn't use an index. This SQL is run whenever certain types of feed are requested as far as I can see.

We added ```CREATE INDEX type_status_modified ON wp_posts (post_type, post_status, post_modified_gmt);``` and ```CREATE INDEX type_status_modified_no_id ON wp_posts (post_type, post_status, post_date_gmt);``` and the query runs a lot faster now. The following timings were taken running the first query (```post_modified_gmt```) on a 36,362 row posts table. Note that it doesn't use filesort after the index has been added.

''Before:''

{{{
mysql> EXPLAIN SELECT post_modified_gmt FROM slgr_posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY post_modified_gmt DESC LIMIT 1;
+----+-------------+------------+------+------------------+------------------+---------+-------------+-------+-----------------------------+
| id | select_type | table      | type | possible_keys    | key              | key_len | ref         | rows  | Extra                       |
+----+-------------+------------+------+------------------+------------------+---------+-------------+-------+-----------------------------+
|  1 | SIMPLE      | slgr_posts | ref  | type_status_date | type_status_date | 124     | const,const | 24718 | Using where; Using filesort |
+----+-------------+------------+------+------------------+------------------+---------+-------------+-------+-----------------------------+
1 row in set (0.03 sec)
}}}


 * 0.21290683746338ms
 * 0.25690102577209ms
 * 0.230553150177ms
 * 0.2274341583252ms
 * 0.23083996772766ms

''After:''

{{{
mysql> EXPLAIN SELECT post_modified_gmt FROM slgr_posts WHERE post_status = 'publish' AND post_type = 'post' ORDER BY post_modified_gmt DESC LIMIT 1;
+----+-------------+------------+------+---------------------------------------+----------------------+---------+-------------+-------+-------------+
| id | select_type | table      | type | possible_keys                         | key                  | key_len | ref         | rows  | Extra       |
+----+-------------+------------+------+---------------------------------------+----------------------+---------+-------------+-------+-------------+
|  1 | SIMPLE      | slgr_posts | ref  | type_status_date,type_status_modified | type_status_modified | 124     | const,const | 24718 | Using where |
+----+-------------+------------+------+---------------------------------------+----------------------+---------+-------------+-------+-------------+
1 row in set (0.00 sec)
}}}

 * 0.00082707405090332ms
 * 0.00072288513183594ms
 * 0.00074386596679688ms
 * 0.00066494941711426ms
 * 0.00066208839416504ms

In ```get_lastpostmodified``` both these queries are run, so the total savings in my case on a quiet server are nearly 0.5 seconds... worth having, I reckon.

I've not created a patch for schema changes before, but I think the only place the change would need to go would be ```scheme.php```? Suggested patch attached.",simonwheatley
18315,Add an index to the GUID column in the posts table,,Database,3.2.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-08-02T04:31:01Z,2011-08-02T05:09:12Z,"Running queries on the GUID column in the posts table is slow because the column is not indexed. The attached patch adds an index.

Note, this affects ticket #18286 - I will update that ticket with appropriate patches to reflect this request.",alexkingorg
22117,Better backtrace,,Database,3.4.2,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-10-06T14:06:50Z,2012-10-06T18:25:28Z,"Hey,
This is a small hack for a prettier backtrace info.

the file '''''/wp-includes/functions.php''''' at Line 3547

the new functions with added lines

{{{
function wp_debug_backtrace_summary( $ignore_class = null, $skip_frames = 0, $pretty = true ) {
	if ( version_compare( PHP_VERSION, '5.2.5', '>=' ) )
		$trace = debug_backtrace( false );
	else
		$trace = debug_backtrace();

	$caller = array();
	$check_class = ! is_null( $ignore_class );
	$skip_frames++; // skip this function
	$last_info = array();

	foreach ( $trace as $call ) {
		if ( isset( $call['class'] ) && 'wpdb' == $call['class'] )
		{
			$last_info['file'] = basename($call['file']);
			$last_info['line'] = $call['line'];
		}

		if ( $skip_frames > 0 ) {
			$skip_frames--;
		} elseif ( isset( $call['class'] ) ) {
			if ( $check_class && $ignore_class == $call['class'] )
				continue; // Filter out calls
			$caller[] = ""{$call['class']}{$call['type']}{$call['function']}"";
			if( empty( $last_info['func'] ) ) $last_info['func'] = $call['class'].'->'.$call['function'];
		} else {
			if ( in_array( $call['function'], array( 'do_action', 'apply_filters' ) ) ) {
				$caller[] = ""{$call['function']}('{$call['args'][0]}')"";
			} elseif ( in_array( $call['function'], array( 'include', 'include_once', 'require', 'require_once' ) ) ) {
				$caller[] = $call['function'] . ""('"" . str_replace( array( WP_CONTENT_DIR, ABSPATH ) , '', $call['args'][0] ) . ""')"";
			} else {
				$caller[] = $call['function'];
				if( empty( $last_info['func'] ) ) $last_info['func'] = $call['function'];
			}
		}
	}
	if ( $pretty )
		return sprintf(__(""Error at %s, at line %d, in function %s<br/>%s""), 
				$last_info['file'], $last_info['line'], $last_info['func'], join( ', ', array_reverse( $caller ) ) );
	else
		return $caller;
}
}}}",msolution
9642,Database Schema Optimizations,,Database,2.8,normal,normal,Future Release,enhancement,assigned,,2009-04-24T19:42:40Z,2013-02-16T16:15:57Z,Diffs coming...,Denis-de-Bernardy
13310,Extend option_name to varchar(255),ryan,Database,3.4.2,normal,normal,Future Release,enhancement,new,dev-feedback,2010-05-09T13:34:25Z,2012-10-19T09:39:28Z,"option_name is currently set to varchar(64). This raises problems when one tries to use transients with slightly longer names and a timeout:

{{{_transient_timeout_feed_mod_23a137101df6920fbf6047...}}} has 60 chars already.",scribu
22115,Further Simplifying errors,,Database,3.4.2,normal,normal,Future Release,enhancement,new,dev-feedback,2012-10-06T11:32:15Z,2013-05-16T11:55:15Z,"tracking errors while making API's and cron jobs, is a tad difficult.

from the latest wordpress pack, '''''/includes/wp-db.php'''''

{{{
function query( $query ) {
...
...
if ( defined( 'SAVEQUERIES' ) && SAVEQUERIES )
	$this->queries[] = array( $query, $this->timer_stop(), $this->get_caller() );

// If there is an error then take note of it..
if ( $this->last_error = mysql_error( $this->dbh ) ) {
	$this->print_error();
	return false;
}
...
...
}}}

if we change the above to simply

{{{
// If there is an error then take note of it..
$this->last_error = '';
if ( $this->last_error = mysql_error( $this->dbh ) )
	$this->print_error();

if ( defined( 'SAVEQUERIES' ) && SAVEQUERIES )
	$this->queries[] = array( $query, $this->timer_stop(), $this->get_caller(), $this->last_error );

// If there is an error then take note of it..
if ( ! empty( $this->last_error ) )
	return false;
}}}

then we have all required info in the array queries, for use later. may it be wp_footer, or for a plugin as debug info.",msolution
20316,Garbage collect transients,,Database,,normal,normal,Future Release,enhancement,new,dev-feedback,2012-03-28T22:04:35Z,2013-05-14T15:57:57Z,"Per an IRC discussion and long-considered changes:

 * In wp_scheduled_delete(), look for expired transients and purge them.

 * On DB upgrade, purge all transients, regardless of expiration. (This should probably happen on auto-update as well, but let's let that part slide for now, as DB upgrade will run on all major releases these days.)

We should only do this if ! $_wp_using_ext_object_cache.",nacin
18105,Improve JOIN efficency of tax_query,,Database,,normal,normal,Awaiting Review,enhancement,new,,2011-07-14T04:28:59Z,2012-06-04T23:40:00Z,"Use of multiple items in a tax_query creates an inner join for each entry. This seems unnecessary.

Example query:

{{{
array(
  'tax_query' => array(
    'relation' => 'OR',
    array('taxonomy' => 'tax1', 'field' => 'slug', 'terms' => 'term1'),
    array('taxonomy' => 'tax2', 'field' => 'slug', 'terms' => 'term2'),
  )
)
}}}

Resulting SQL:

{{{
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts  
INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) 
INNER JOIN wp_term_relationships AS tt1 ON (wp_posts.ID = tt1.object_id) 
WHERE 1=1 AND
...
AND (wp_term_relationships.term_taxonomy_id IN (XXX) 
  OR tt1.term_taxonomy_id IN (YYY) ) 
...
}}}

Each new entry in the array creates another inner join on the term_relationships table, along with an associated select argument.

However, the term_relationships table is defined with these main keys:

{{{
CREATE TABLE $wpdb->term_taxonomy (
 term_taxonomy_id bigint(20) unsigned NOT NULL auto_increment,
 term_id bigint(20) unsigned NOT NULL default 0,
 taxonomy varchar(32) NOT NULL default '',
...
 PRIMARY KEY  (term_taxonomy_id),
 UNIQUE KEY term_id_taxonomy (term_id,taxonomy),
}}}


This basically means that the term_taxonomy_id is a unique ID for the row, and it's pointing to a unique relationship between some term and some taxonomy. Essentially, term_relationships defines what terms are in what taxonomies.

Therefore, the extra inner join and selection are entirely unnecessary. All references to a term in a taxonomy are unique. This isn't individual terms we're looking for in this query, but term+taxonomy. 

An equivalent SQL statement to the one given before would be this:

{{{
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts  
INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) 
WHERE 1=1 AND
...
AND (wp_term_relationships.term_taxonomy_id IN (XXX, YYY) ) 
...
}}}

This is equivalent because both XXX and YYY point to a specific term+taxonomy combination, not just to a term.

For the similar relation = AND case (instead of relation = OR), this query would be equivalent:


{{{
SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts  
INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) 
WHERE 1=1 AND
...
AND (wp_term_relationships.term_taxonomy_id IN (XXX) 
AND (wp_term_relationships.term_taxonomy_id IN (YYY) ) 
...
}}}

We get a second statement in the where clause, but note the lack of a second inner join and lack of referencing it. This greatly improves performance. 

Only one inner join is ever actually required for any number of items in the tax_query, thanks to the pre-lookups being performed to find the proper term_relationship entries.

Similar enhancements might be available for the meta table, however that is more complex and may be more difficult to improve.
",Otto42
21212,MySQL tables should use utf8mb4 character set,,Database,3.4.1,normal,minor,Awaiting Review,enhancement,reopened,,2012-07-11T04:26:12Z,2012-10-09T06:56:41Z,"Historically, the MySQL utf8 character set has only supported the first character plane of UTF-8. With MySQL 5.5.3, it now supports the entire character plane, using the utf8mb4 character set. This character set is 100% backwards compatible, and does not require more space than utf8 for characters that fall within the utf8 set, only using an extra byte for characters outside of the utf8 set.

References:

http://en.wikipedia.org/wiki/Mapping_of_Unicode_character_planes [[BR]]
http://dev.mysql.com/doc/refman/5.5/en/charset-unicode-utf8mb4.html",pento
19019,Reduce duplication in $wpdb,,Database,,normal,minor,Future Release,enhancement,new,commit,2011-10-20T21:16:00Z,2013-04-22T19:53:27Z,"Currently, update(), insert() and soon delete() [see #18948] use the same code to generate the WHERE clause.

It should be moved into a helper method.",scribu
10819,Suggestion: Addition to dbDelta - returns FALSE on mySQL error,ryan,Database,2.8.4,normal,normal,Future Release,enhancement,new,dev-feedback,2009-09-20T22:07:46Z,2009-09-20T22:21:53Z,"I don't have any idea how to submit or recommend a change to the WordPress core, but I'm going to give this a shot anyway... having just spent a lot of time struggling with the dbDelta function while programming a plugin, I had a possible suggestion to make. It strikes me that said function would be a lot easier to use if something similar to the following code was added, starting on line 1363 of wp-admin/includes/upgrade.php:

	if($execute) {
		$query_error_num = 0;
		foreach($allqueries as $query) {
			//echo ""<pre style=\""border:1px solid #ccc;margin-top:5px;\"">"".print_r($query, true).""</pre>\n"";
			$qresult = $wpdb->query($query);
			if ($qresult === false) {
				$query_error_num++;
				$qerror = 'error' . $query_error_num;
				$for_update[$qerror] = ""Query error - The following query failed: "" . $query;
			}
		}
	}

	return $for_update;

There's probably a more optimized way to go about it - programming isn't my strong suit by any stretch of the means - but at least this way errors caused when *creating* tables with the function will return some kind of error message, even if it's PHP only.

Opinions?",tinwatchman
22884,What if I delete wp_posts table from database.,,Database,3.5,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-12-12T12:48:24Z,2012-12-13T11:51:20Z,"I am not a experienced or mature programmer but I have seen it While I was playing with database of WordPress.

I have deleted wp_posts table in database in WordPress - 3.5(beta).

It looks normal on other pages at admin side but when i open single post it shows post-new.php and when hit save, it shows ""wp_error"" with this message ""You are not allowed to edit this post.""

That's OK. I was expecting error but not this type of error.

It seems WordPress doesn't know that its most important table has gone away and that's why admin may not know( well for a while). I think its not good. well I don't know its issue or it is way it behaves with database and its normal but I think WordPress should know what exactly happened.

when I have updated WordPress with stable 3.5 it has updated but database is still same which is normal.

Should we( can we )track tables( some of tables which are important ) by PHP ?",mukkundthanki
13657,When WP_DEBUG is true show better errors for establishing database connection,ryan,Database,,low,trivial,Future Release,enhancement,new,has-patch,2010-05-31T16:26:04Z,2012-12-30T09:35:09Z,"Right now no matter if WP_DEBUG is enabled or not we always show some generic errors for Error establishing a database connection

We should display the specific error when WP_DEBUG is enabled.",sivel
22196,add $wpdb->upsert function,,Database,3.4.2,normal,normal,Awaiting Review,enhancement,new,,2012-10-15T12:48:33Z,2012-10-15T14:53:24Z,"If i read http://codex.wordpress.org/Class_Reference/wpdb right, we have only insert and update functions, but for many occations, if would be lovely, if we would have upsert function as well (using INSERT ... ON DUPLICATE KEY UPDATE http://dev.mysql.com/doc/refman/5.1/en/insert-on-duplicate.html).

So when i am inserting e.g. posts using database function, i do not have to check if post with that id exist (good for some migration / importing tools etc.)",thomask
10883,db-error.php not used for all DB failures,ryan,Database,2.8.4,normal,normal,Future Release,enhancement,new,dev-feedback,2009-10-01T02:45:28Z,2013-01-25T04:39:55Z,"db-error.php (the optional custom DB error message file to be placed in wp-content) does not get included all the time. Sometimes wp-db.php will use its {{{bail()}}} method to spit out its own message.  This code needs to be there too:

{{{
        if ( file_exists( WP_CONTENT_DIR . '/db-error.php' ) ) {
                require_once( WP_CONTENT_DIR . '/db-error.php' );
                die();
        }
}}}",markjaquith
10404,dbDelta creates duplicate indexes when index definition contains spaces,,Database,2.8.1,normal,normal,Future Release,enhancement,new,has-patch,2009-07-14T10:59:54Z,2013-03-25T12:24:45Z,"I was adding a much needed index in wp_object_term_relationships, and testing revealed it was getting added multiple times.

This works as intended:

{{{
CREATE TABLE $wpdb->term_relationships (
 object_id bigint(20) unsigned NOT NULL default 0,
 term_taxonomy_id bigint(20) unsigned NOT NULL default 0,
 term_order int(11) NOT NULL default 0,
 PRIMARY KEY  (object_id,term_taxonomy_id),
 UNIQUE KEY reverse_pkey (term_taxonomy_id,object_id),
 KEY term_taxonomy_id (term_taxonomy_id)
) $charset_collate;"");
}}}


This doesn't:

{{{
CREATE TABLE $wpdb->term_relationships (
 object_id bigint(20) unsigned NOT NULL default 0,
 term_taxonomy_id bigint(20) unsigned NOT NULL default 0,
 term_order int(11) NOT NULL default 0,
 PRIMARY KEY  (object_id,term_taxonomy_id),
 UNIQUE KEY reverse_pkey (term_taxonomy_id, object_id),
 KEY term_taxonomy_id (term_taxonomy_id)
) $charset_collate;"");
}}}

the only difference between the two is a space in the reverse_pkey column list. we should remove spaces in there to avoid potential bugs.",Denis-de-Bernardy
20634,dbDelta is unforgiving about field declarations,,Database,1.5,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-05-08T03:27:05Z,2012-05-24T07:31:40Z,"the variable type is case sensitive:
int(22) != INT(22)

the mysql type BOOL or BOOLEAN comes back from the db as tinyint(1):
tinyint(1) != BOOLEAN

Not a huge issue, just annoying. Makes dbDelta fire off unnecessary sql.
 ",SidHarrell
23061,get_post_meta() on post with large amount of meta keys uses too much memory,,Database,,normal,normal,Awaiting Review,enhancement,new,,2012-12-27T13:40:17Z,2012-12-27T14:54:48Z,"I think it's likely there has been a ticket on this in the past, but I couldn't find one so here goes!

If I have a post that have say 25k post meta entries, and I call `get_post_meta( $id, 'foo', true )` then `update_meta_cache` is going to cause all post metas to be loaded into memory.

In most cases I can see this makes sense, however I recently had an issue where I was storing contest votes as meta keys, a post had 30k votes, and would take about 70MB of memory to get any meta key of that post (even if I didn't want votes). This is fairly edgecase, but the idea that all meta for a post is always loaded even if you don't want it is perhaps over presumptuous as a dev may be storing a large amount of data in meta.

With persistant object caching this is somewhat worse, as the object cache store gets very large. 

I am not proposing this functionality is removed, maybe just a filter or something in http://core.trac.wordpress.org/browser/trunk/wp-includes/meta.php#L524 so one could either adjust the query or perhaps pass an array of meta keys to exclude from the sql query",joehoyle
14273,maybe_create_table cleanup,pento,Database,3.0,normal,normal,Future Release,enhancement,assigned,has-patch,2010-07-11T13:08:09Z,2012-08-08T07:47:23Z,"Cleaned up maybe_create_table() - no more iterations.
Cheers. Dragoonis aka Dr4g(irc).",dragoonis
20223,simulate mysql_real_escape_string when not yet connected to DB,,Database,3.3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-03-13T09:16:53Z,2012-05-16T19:49:33Z,"Currently wpdb::_real_escape() falls back to addslashes() when you're not yet connected to the database

Instead, have it fall back to a closer mimic of mysql_real_escape_string():

Use this to make patch:
http://pastebin.com/5vMaBhQe

Reference: 
http://dev.mysql.com/doc/refman/5.0/en/mysql-real-escape-string.html
http://www.php.net/manual/en/function.mysql-real-escape-string.php",scottconnerly
15158,wpdb insert & update with null values,sorich87*,Database,3.0.1,normal,normal,Future Release,enhancement,accepted,has-patch,2010-10-19T20:47:51Z,2013-01-08T13:39:21Z,"From: http://wordpress.org/support/topic/bug-fix-wpdb-insert-amp-update-with-null-values

""Some of you might have noticed but the wpdb's insert & update methods don't work well with null value (if you try to set null on a numeric field you'll end up with 0)""
",westi
5932,"wpdb should reconnect and retry query when ""MySQL server has gone away""",pento,Database,3.0,normal,normal,Future Release,enhancement,assigned,has-patch,2008-02-20T08:17:01Z,2012-11-07T06:15:56Z,"Using 2.3.3, here are the type of errors that crop up in error_log everyday. 


{{{

[25-Jan-2008 08:37:35] WordPress database error MySQL server has gone away for query UPDATE wp_options SET option_value = '0' WHERE option_name = 'doing_cron'
[25-Jan-2008 09:23:19] WordPress database error MySQL server has gone away for query UPDATE wp_options SET option_value = '0' WHERE option_name = 'doing_cron'
[26-Jan-2008 00:03:54] WordPress database error MySQL server has gone away for query UPDATE wp_options SET option_value = '0' WHERE option_name = 'doing_cron'
[26-Jan-2008 00:04:29] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_pingme' LIMIT 1
[26-Jan-2008 00:04:29] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_encloseme' LIMIT 1
[26-Jan-2008 00:04:29] WordPress database error MySQL server has gone away for query SELECT ID FROM wp_posts WHERE CHAR_LENGTH(TRIM(to_ping)) > 7 AND post_status = 'publish'
[26-Jan-2008 00:05:09] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_pingme' LIMIT 1
[26-Jan-2008 00:05:09] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_encloseme' LIMIT 1
[26-Jan-2008 00:05:09] WordPress database error MySQL server has gone away for query SELECT ID FROM wp_posts WHERE CHAR_LENGTH(TRIM(to_ping)) > 7 AND post_status = 'publish'
[26-Jan-2008 00:05:47] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_pingme' LIMIT 1
[26-Jan-2008 00:05:47] WordPress database error MySQL server has gone away for query SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = '_encloseme' LIMIT 1
[26-Jan-2008 00:05:47] WordPress database error MySQL server has gone away for query SELECT ID FROM wp_posts WHERE CHAR_LENGTH(TRIM(to_ping)) > 7 AND post_status = 'publish'
.................
}}}
",dtc
12819,wpdb::prepare support for null,ryan,Database,,normal,normal,Future Release,enhancement,reopened,,2010-04-02T18:15:19Z,2013-05-13T16:39:35Z,"now we can not submit null values using wpdb::prepare. if we lets say have datetime field that can be null, and execute query prepared with $wpdb->prepare(""update table set date_time_field = %s"", null) - it sets value of the field to 0, which results in 0000-00-00 00:00:00 date. what is happening here - null is quoted and passed as a string, that should not be the case.",roxaz
21055,Interface for wpdb compatibility,,Database,,normal,normal,Awaiting Review,feature request,new,,2012-06-23T17:30:13Z,2012-08-24T01:40:01Z,"==Summary==

From the wp-includes/wp-db.php file:
{{{
It is possible to replace this class with your own
by setting the $wpdb global variable in wp-content/db.php
file to your class. The wpdb class will still be included,
so you can extend it or simply use your own.
}}}

When one implements a db class that does not extend wpdb, it would be safer that the new class implements an interface. This interface may be called wpdb_compat and would assure that the class has all necessary methods/properties. Of course, wpdb_compat should be supported by wpdb too.

== Design Strategies ==

My patch adds:
* wp-includes/interfaces/wpdb-compat.php

Very small edits to:
* wp-includes/wp-db.php
* wp-includes/load.php
* wp-admin/install.php

At the moment, WordPress does not include any interface; this means that there is not a directory for interfaces.[[BR]]
In my first draft, I put it in wp-includes/interfaces so that - if more interfaces will be added in the future - they will have a logical place.
",santec
21663,Use PDO for MySQL queries when PDO is available,,Database,3.5,normal,normal,Future Release,task (blessed),new,dev-feedback,2012-08-22T21:02:28Z,2013-05-20T22:21:49Z,"the mysql_* functions are officially deprecated for PHP 5.4 and will begin throwing E_DEPRECATED errors in the next version of PHP.
http://marc.info/?l=php-internals&m=131031747409271&w=2

Wordpress should use PDO by default, but fall back to mysql_* when PDO is not present.

See also: #11622 for last year's discussion.",scottconnerly
21411,"Current Local Time for Port-au-Prince, Haiti is incorrect.",patrick@…,Date/Time,3.4.1,normal,minor,Awaiting Review,defect (bug),new,close,2012-07-29T00:44:29Z,2012-07-29T04:50:57Z,"When the Port-au-Prince Timezone is selected via wp-admin/options-general.php the Local Time is one hour behind. Please see [http://wwp.greenwichmeantime.com/time-zone/caribbean/haiti/time-haiti/] for the correct local time.

Yes, the problem occurs even when all plugins are deactivated and the default theme is activated. ",pnommensen
22194,PHP x64 compatibility issue with date values,,Date/Time,,normal,major,Awaiting Review,defect (bug),new,,2012-10-15T09:39:11Z,2012-10-15T10:36:05Z,"Hi,

seems like WordPress is using the ""0000-00-00 00:00:00"" value as magic value for date values, which aren't set instead of NULL.

This is working fine for any PHP x86 builds, because the magic value is also an invalid date.

But PHP x64 builds support this value. It is no longer invalid. It is now a valid date! This will result in problems, because some functions are expecting that parsing this date will return false, but now on x64 systems they won't get an invalid date, when they are expecting one.

So the problem is, that WordPress is using a valid date as magic value for an invalid date aka default value.

Fixing this issue will require a SQL schema change and to update all the code, checking for ""0000-00-00 00:00:00""...

For references, see ticket #21987 and https://bugs.php.net/bug.php?id=53662",Whissi
23227,Properly reflect date and time formats throughout admin area,,Date/Time,3.5,normal,trivial,Awaiting Review,defect (bug),new,dev-feedback,2013-01-17T19:37:21Z,2013-01-18T14:13:53Z,"I have noticed several places in the admin area where the time & date formats set on the General Settings screen are not reflected. For example, on Page Edit, revisions have a hardcoded date format of `'j F, Y @ G:i'` and ajax autosaves use `'g:i:s a'` to show the ""Draft Saved at"" time (of note is the 24 hour vs 12 hour time). The ""Last Edited By _ on _"" time ''does'' properly use the time & date format options.

I have included a patch for the two examples above (comments/critiques welcomed), but there were a few others I noticed that may be somewhat more involved to fix. These include:
- Dates shown in the ""Date"" column of list tables (both the displayed and title text)
- ""Published on:"" date/time for pages (this may be tricky since editing the published time uses a 24-hour time format)
- ""Uploaded on:"" date/time shown in 'Save' metabox on Media edit screen

And there are probably other places I have missed as well.

Obviously somewhat low priority compared to other issues (and may be enhancement rather than defect), but I figured I'd bring it here and see what others thought.",bananastalktome
23203,Scheduling Posts assumes GMT but UI uses local timezone (creating undesired scheduled posts),,Date/Time,3.5,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2013-01-15T15:32:09Z,2013-01-16T13:16:59Z,"I experienced an odd behavior when going to edit a page on a newly created site in a multisite environment. The site uses the New York timezone (GMT-5).

When quick-editing the page, I changed the title and slug, but pressing ""Update"" set the page as ""Scheduled"" rather than leaving it ""Published"". This was very confusing, and took a while to figure out and then explain to the end user. It seems that although the date/time is shown in the UI in the current time zone, once submitted the form interprets the time as if it were in GMT. To the end user, it looks like the page should be published since the time shows what we thought was a 5 minutes ago. In reality, the time in the date field is not recognized as 5 minute ago but 4 hours and 55 minutes in the future.

This is a problem in the full edit form for pages in this newly created site as well. When I go to edit the published time/date, the posted time in my timezone is shown. However, ''even if I hit 'Cancel' the ""Update"" button changes to ""Schedule""''.",bananastalktome
20973,date_i18n() produces invalid output for shorthand formats,,Date/Time,3.4,normal,normal,Awaiting Review,defect (bug),new,,2012-06-15T13:39:50Z,2013-04-04T16:36:54Z,"date_i18n() function relies on parsing passed format to make adjustments. However shorthand formats are not handled and produce invalid output.

Example:

{{{
var_dump( date_i18n( 'Y-m-d\TH:i:sP', time() ) ); // 2012-06-15T13:34:03+03:00 << ok
var_dump( date_i18n( DATE_W3C, time() ) ); // 2012-06-15T13:34:03+03:00 << ok
var_dump( date_i18n( 'c', time() ) ); // 2012-06-15T13:34:03+00:00 << broken time zone!
}}}


Hook-level fix:

{{{
add_filter( 'date_i18n', 'fix_c_time_format', 10, 3 );

function fix_c_time_format( $date, $format, $timestamp ) {

    if ( 'c' == $format )
        $date = date_i18n( DATE_W3C, $timestamp );

    return $date;
}
}}}

See [http://wordpress.stackexchange.com/q/54700/847 Why time functions show invalid time zone when using 'c' time format?]

Possibly related (can't say for sure from description) #13538",Rarst
21987,function get_post_time -  if gmt  (unset),,Date/Time,,normal,minor,Awaiting Review,defect (bug),new,has-patch,2012-09-24T19:33:18Z,2012-12-05T08:47:55Z,"For no publish items and mode auto-draft = close 

if GMT is unset ('0000-00-00 00:00:00' == $post->post_date_gmt)
at wp-includes/general-template.php function get_post_time effect list table -> date column (Last Modified -> %s hours)

Effect code : wordpress\wp-admin\includes\class-wp-posts-list-table.php
class WP_Posts_List_Table -> function single_row  
Line 579 : $time = get_post_time( 'G', true, $post );


I don't know if it affects something else ...

",soficgr
20328,get_date_from_gmt assumes current gmt_offset is appropriate,nacin,Date/Time,,normal,normal,Future Release,defect (bug),reopened,has-patch,2012-03-29T22:02:24Z,2013-05-14T13:22:54Z,"For locations that have daylight savings time, the gmt_offset changes over time. Yet get_date_from_gmt assumes the offset that is in effect now is always the right offset. But I might be trying to display date/times that are in a different timezone transition than the current one.

Proposed fix is to use timezone_transitions_get() as wp-admin/options-general.php does in order to translate those date/times accurately.",scottconnerly
9272,Expand human_time_diff()'s abilities,Viper007Bond,Date/Time,2.8,normal,normal,Future Release,enhancement,new,has-patch,2009-03-04T10:42:21Z,2013-03-08T17:21:44Z,"This is partially related to #7250.

Currently `human_time_diff()` can only do days, hours, and minutes. I propose we expand it a bit, to at least weeks and possibly even months and years (although that can be tricky unless PHP has a shortcut).

It should also support the ability to trim to a certain accuracy, i.e. for a 2 year 1 month old post, minutes don't matter.

In short, I propose we integrate Time Since's functionality into the core by expanding the current `human_time_diff()`.",Viper007Bond
21653,Introduce current_date(),,Date/Time,,low,normal,Awaiting Review,enhancement,new,has-patch,2012-08-21T19:33:59Z,2013-01-07T09:25:24Z,"WordPress comes with a function called `current_time()` which returns the current time according to the timezone chosen on the General Settings screen. It's used when populating the post date, among other things.

It would be nice to have a date equivalent of this function for outputting the current date according to the timezone setting. Currently if you want to output the current date you need to do this:
{{{
echo date( 'd/m/Y', current_time( 'timestamp' ) );
}}}
I'd like to be able to use this instead:
{{{
echo current_date( 'd/m/Y' );
}}}

Note that just using `date()` doesn't give the desired effect as WordPress sets the default timezone (as used by `date()`) to UTC, not to the timezone chosen on the settings screen.",johnbillion
19813,Keyboard shortcuts for editing posted date,,Date/Time,3.3.1,normal,normal,Awaiting Review,enhancement,new,,2012-01-12T09:28:13Z,2012-01-12T17:39:31Z,"In short, I thought it would be a nice feature to be able to use the Up/Down arrow keys to increment or decrement the values within the post published date/time input boxes. I found this stackoverflow post with the basics of how to retrieve keystrokes and alter the value based on which one was pressed. 

http://stackoverflow.com/questions/7742364/incrementing-value-integer-in-an-input-type-field.

I then altered the code to prevent negative numbers and stay within the limits of each field type.

Days get 1-31
Year gets 1900+
Hours get 0-23
Minutes get 0-59

JS could probably be cleaned up a bit and condensed, but I wasn't quite sure how to separate them all out. Maybe someone with more js-fu can help out with that",tw2113
19849,Pass $comment_date to get_comment_time filter,,Date/Time,3.3.1,normal,minor,Awaiting Review,enhancement,new,,2012-01-17T17:50:50Z,2012-01-17T17:50:50Z,"I was writing a function to customize the formatted time to include the timezone in the comment meta data using the get_comment_time filter. In order for me to properly indicate whether daylight savings time was in effect at the time of the comment, I needed to globalize $comment to get the comment_time property. The filter passed the $date variable which is the formatted time part of the timestamp but not the $comment_date variable which contained the entire timestamp from $comment. In the function I developed, the $date string wasn't used at all. I returned the formatted time string from $comment->comment_date directly. 

Since get_comment_time() already establishes $comment_date, why not pass it to the filter as well?",lexhair
15921,date column filter in media list table,,Date/Time,3.1,normal,normal,Future Release,enhancement,new,,2010-12-20T18:25:49Z,2011-03-23T17:08:18Z,"please add a filter for date column in media list table, like posts list table.

in wp-admin\includes\class-wp-media-list-table.php @ line:288
replace:
{{{
<td <?php echo $attributes ?>><?php echo $h_time ?></td>
}}}

with:
{{{
<td <?php echo $attributes ?>><?php echo apply_filters( 'media_date_column_time', $h_time); ?></td>
}}}",gonahkar
10660,Time zone suggester based on nascent WordPress.org API call,rmccue,Date/Time,2.8.4,normal,normal,Future Release,feature request,assigned,has-patch,2009-08-20T05:59:42Z,2013-02-19T19:00:38Z,"The attached patch uses a new API call to http://api.wordpress.org/core/ip-to-zoneinfo/1.0/ to retrieve a suggested time zone based on client (not server) IP address.

A button is added next to the existing dropdown list of time zones providing the option to ""Suggest a time zone"". This calls the API using an AJAX/JSONP request which then auto-selects a time zone for the user from the dropdown.

Visual feedback is via a spinner when fetching and then a text response.

Additionally the Date and Time settings have been split out to a new settings page.

Related ticket: #10324",sambauers
16478,"""Get Shortlink"" button disappears if you edit the permalink",,Editor,3.0,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-02-07T08:44:02Z,2012-10-08T08:33:15Z,"Go to edit a post and change the permalink. The ""Get Shortlink"" button is overwritten by the AJAX response. I think it's a simple case of moving where the shortlink is added, see patch.",solarissmoke
24369,"""Open link in a new window/tab"" shows the wrong information",,Editor,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-05-19T23:55:56Z,2013-05-19T23:55:56Z,"I noticed that the ""Open link in a new window/tab"" checkbox in Wordpress' editor sometime shows the wrong information. I can get this consistently by:

1/ writing a post in word, including links inserted in Word

2/ copy the text to WP's editor

3/ links will be converted from Word in clean HTML and will open in the same window by default

4/ select the first link and open ""Insert/Edit Link"" by clicking on the Link button. The first time, the box will be unchecked. That's correct.

5/ change that first link to ""Open link in a new window/tab"". click on Update

6/ go to the next link and open ""Insert/Edit Link"" again. Oh no it shows the ""Open link in a new window/tab"" checked while the HTML code shows that it is NOT targeted to ""_blank"".

Example: WP's editor says that this will open in aa new window: http://screencast.com/t/rxR6oeEjL

Bur the HTML is clear: it's not targeted to ""_blank"": http://screencast.com/t/xDBnYsh9Z

Thank you,",hubertnguyen
21563,"""Save as"" button disappearing on edit/new post screens",,Editor,3.4.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-08-13T15:15:58Z,2013-03-11T22:01:41Z,"When switching ""visibility"" from ""public"" to ""private"", the ""Save as (draft/etc.)"" button disappears. It doesn't come back when switching to ""public"" anymore.

[[Image(http://i.imgur.com/EExwB.png)]]",F J Kaiser
16477,"""View post"" link should not change when sample permalink changes",,Editor,3.0,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-02-07T08:15:26Z,2011-12-18T23:54:38Z,"To reproduce:

- Go to edit a post
- Change the permalink
- Click on ""View post"" and you get a 404 because the href has been changed to the new sample permalink but the post hasn't been updated yet

The ""View post"" link should always point to the permalink of the currently saved post.",solarissmoke
20609,"<p> tags  in Editor not working on editing with wp_editor, wenn disabling media_buttons or quicktags",,Editor,,normal,normal,Awaiting Review,defect (bug),new,,2012-05-03T16:36:01Z,2012-05-05T01:01:57Z,"When disabling the media_buttons or quicktags via the third argument in wp_editor via a settings array, <p> tags are not displayed any more, so there are no line breaks any more in the editor. Only ""      "" is in the source code. The Problem also occurs, when changing 'quicktags' or 'media_buttons' in class-wp-editor.php in the core to false. wpautop is still true.

",julian42
17391,Alternative color schemes and theme settings in editor styles,azaozz,Editor,3.2,normal,trivial,Future Release,defect (bug),assigned,early,2011-05-12T13:14:56Z,2012-01-14T19:10:10Z,"Hello there. 

There is no support for links color change in editor-style.css. 
If you change it in Theme Options, you will see the same:

{{{
a {
	color: #1b8be0;
	text-decoration: none;
}
}}}

As we want the editor to be WYSIWYRG, maybe we should include this change in editor-style.css too. 

I have tried to do that with `add_editor_style()`, but it is only intended for .css archives. 
I have tried to add it as a filter extending `twentyeleven_print_link_color_style` in `mce_css` and `tiny_mce_before_init`, unsuccessfully.  

All ideas for what can I use to make tinyMCE read the options are welcome. ",bi0xid
19947,Copy paste behavior in Visual mode differs from HTML mode,,Editor,,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-02-02T13:13:11Z,2012-02-02T13:13:11Z,"Copy a random html page from a random site including links and images and paste it into the WYSIWYG Editor Visual mode and it will include the images and links. Basically it (mostly) looks like the copied page. If you paste the same into the WYSIWYG Editor HTML tab and it will strip out _all_ HTML markup and just leaves the plain text, without the images or links.  

Expected: 
I would expect the Visual and HTML mode of the WYSIWYG editor to behave the same, either both use the code (displaying the results of the markup code in the Visual tab and the markup code itself in the HTML tab) or both strip out all html.   

",BjornW
19649,DFW Auto textarea lengthening is twitchy,koopersmith,Editor,,normal,normal,Future Release,defect (bug),assigned,,2011-12-22T21:52:36Z,2012-04-27T21:08:56Z,"The auto textarea lengthening is twitchy. It shoves the content up a line, then pulls it back down.

Best seen in a screencast: http://screencast.com/t/e5zIpkk9nY",markjaquith
22185,Distraction Free Writing mode lacks any controls on touch devices,,Editor,3.2,normal,normal,Awaiting Review,defect (bug),new,,2012-10-13T22:39:05Z,2013-01-10T00:30:44Z,"Distraction Free Writing mode on touch devices is pretty disastrous. All the controls disappear, meaning you can't apply any formatting and - more importantly - you can't save your content or exit fullscreen mode.

Not sure what would be best:
 1. Don't autohide the controls at all on touch devices.
 2. Autohide the controls but add a toggle button which shows up on touch devices to toggle the controls on again.
",johnbillion
18627,Google Chrome handles bulleted lists differently in Visual Editor than other browsers,,Editor,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-09-09T16:10:51Z,2011-09-09T16:10:51Z,"In Firefox (working functionality):

1. create brand new post or page
2. in the visual editor, click Bulleted List icon
3. In Format menu choose H1
4. Type some text (it's inside a ul >> li >> h1)
5. Press Enter

Result: a new bullet, and we've lost the H1 style (just inside a ul >> li now)

Try this with Chrome 13.x

1. create a brand new post or page
2. in the visual editor hit the Bulleted List icon
3. in the Format menu choose H1
4. Type some text (it's inside a ul >> li >> h1)
5. Press enter

Result: no new bullet. We're inside a ul >> li >> div

Also tested in IE 7 and 8 (works fine). haven't tried other WebKit browsers.",tomauger
11986,HTML comments in post/page content get wrapped in P tags,,Editor,2.9.1,normal,normal,Future Release,defect (bug),new,,2010-01-23T19:32:13Z,2010-06-14T01:39:31Z,"I don't know if someone already caught this i had mentioned it to someone in the #chat but

When you write a post or a page and include comment html tags

the comments end up being wrapped in <p> tags

<p><!-- comment --></p>

An older plugin i use makes use of comment tags to know where to insert content but comments may be used for other reasons inside posts.

the more comments you add
the more line breaks errr paragraph breaks 

additionally the plugin I was using could not pickup the comment tag and insert the content.


",NPSites
16116,Hide 'Move to Trash' for auto drafts,,Editor,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2011-01-06T05:54:59Z,2013-01-22T16:52:51Z,"The 'Move to Trash' link should not appear for auto-drafts. 

This was the original intent of what [13905] removed, which I want to say was designed to reflect additional scenarios.",nacin
22996,IE8 - Hierarchical Taxonomies with bulk terms cause massive slow-down / freeze,,Editor,,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2012-12-18T19:18:02Z,2013-01-06T08:07:28Z,"For a project, we have about 550+ terms in a single taxonomy, the other taxonomies have around 10-40 each themselves too. There appears to be an issue when IE8 comes across too many checkboxes on a page, and this recently was exacerbated by an upgrade to WP 3.5. The upgrade itself didn't cause it, but it coincided with the addition of a few new terms (don't know how many were added before the upgrade just yet, will post if I find out more info).

To reproduce, you've gotta have a large amount of terms for your taxonomies, then go into the post editor (for whatever post type you're testing on), and ensure your taxonomies have 'hierarchical' set to true in their definitions. I've seen the issue crop up on save (on subsequent load of the page w/ success message on it), and on open of the edit page itself.

The issue seems to be more severe for IE8 on Windows XP Service Pack <= 1, but I've seen it cause a massive slow-down for newer XP versions, just not freeze up entirely like it did on the XP SP 1 machine I was primarily testing on.

''I'm not really sure'' what the solution is going to have to be here, or if this will serve merely as a paper-trail for the folks searching for information about this.

I did a blanket forceful change for checkbox input to autocomplete on the meta boxes associated to hierarchical taxonomies using the following Gist to resolve the freezing for now:

https://gist.github.com/4330772

Here's the info you'll probably ask for, I went down to the basics to see exactly what the cause was:

1. No plugins activated (except a small plugin that had the Gist in it to resolve the issue for me)

2. Standard Twenty Twelve theme activated

3. Tested and found the issue happening on both WP 3.4.x and WP 3.5

4. Tested on XP SP 1 with IE8, saw the greatest degradation of performance here

5. Tested on XP SP 3 with IE8, saw a noticeable freeze and then slow-down of performance as the page loads here",sc0ttkclark
19645,Image caption gets removed when editing image dimensions.,,Editor,3.3,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-12-22T16:24:34Z,2011-12-23T18:25:53Z,"When editing an image placed into a post in a certain way, the caption of the image is removed.

Steps to reproduce:
1. Edit a post that contains an included image.
2. Click the edit options icon when selecting the image.
3. Go to the advanced image settings(make sure the image does have a caption).
4. Empty the width field.
5. Press the submit button.
-> The caption of the image is set empty.

Remarks,
In my case only leaving the width input field blank caused this issue.",JanJaapKempenaar
13942,Logged-out notice in post edit page is easily missed,,Editor,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-06-17T11:25:40Z,2012-09-27T15:42:48Z,"When a user gets logged out during post editing, a small warning appears bellow the post editor, next to the word count. This warning states that changes will not be saved until user logs in again - but it's a small notice and is very easily missed.

Since this can be potentially catastrophic for users writing long posts while relying on auto-save, a bigger and more prominent notice probably makes more sense.

=== Repro ===

ENV: WP 3.0

This bug can be reproduced in WordPress 3.0 by opening two tabs – one tab with a blog’s Dashboard, and another tab with the same blog’s New Post page. In the Dashboard, click Logout, then switch to the New Post tab. Here, enter any text in the post’s title, then hit Tab to switch to the editor. This will trigger the permalink preview, which will in turn trigger the notice about being logged out: “ALERT: You are logged out! Could not save draft. Please log in again.”

=== Additional Details ===

The notice comes from wp-admin/admin-ajax.php, in line 36.

Currently behavior was introduced by #7630, where it was already noted ""maybe something more obvious needed""",RanYanivHartstein
23103,Non image caption shortcode lost when switching from text to visual editor and back,,Editor,3.4,normal,normal,Awaiting Review,defect (bug),new,,2013-01-02T16:40:25Z,2013-02-13T05:56:05Z,"1. Add the line in text editor 
{{{
[caption caption=""test"" width=""300""]Checkuot this text[/caption]
}}}

2. switch to visual editor 

3. switch back to text and you get 
{{{
<dl class=""wp-caption alignnone"" id="""" style=""width: 310px;""><dt class=""wp-caption-dt"">Checkuot this text</dt><dd class=""wp-caption-dd"">test</dd></dl>
}}}
",mark-k
16077,Placement of link popup in full-size visual editor when browser window is resized,garyc40,Editor,3.1,normal,normal,Future Release,defect (bug),assigned,has-patch,2011-01-02T19:47:30Z,2013-01-22T16:54:13Z,"To recreate: Writing a post in the full-window view of the visual editor, click the link popup. While popup open, resize browser window to be smaller. Link popup stays in original location, even if the window gets small enough to cut it off. 

You can move the link popup by dragging the top bar. If you do this, then the link popup will stay in the new place b/c our save state stuff, even when you're writing in the regular size visual editor.

Preferred UX: if browser window resizes, have link popup recenter itself in the overlay. ",jane
13327,Post editor puts content through wpautop() before displaying it to users without JS enabled,,Editor,3.0,low,normal,Future Release,defect (bug),new,,2010-05-10T21:42:50Z,2010-11-12T11:24:54Z,"'''Steps to reproduce:'''

 1. With JS on, change to the Visual Editor
 2. Disable JS
 3. Add a new post
 4. Save as draft
 5. Note that the content is wrapped in {{{<p>}}} tags in the textarea.

[[Image(http://img19.imageshack.us/img19/6363/screenshot20100510at524.png)]]

'''Expected:'''

No paragraph tags are added.",markjaquith
20114,Posts and Pages w. private visibility don't show up in existing content,,Editor,3.3.1,normal,major,Awaiting Review,defect (bug),new,has-patch,2012-02-24T20:58:52Z,2012-03-07T13:12:29Z,"when inserting or editing a link in the editor (post or page) pages & posts with private visibility don't show up in the ""existing content"" section of the ""insert/edit link"" popup. All pages/posts with public visibility are shown. This doesn't make sense as I have all necessary privileges to see and edit these private pages/post. Even the admin doesn't see the private pages. Very annoying.",heinrichgeps
22567,Preview button triggers popup blocker in some browsers if no title is set,,Editor,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-11-23T21:41:35Z,2012-12-05T21:31:33Z,"Steps to reproduce:

1. Click on Add New (for a post)
2. DO NOT enter a title.
2. Start typing in the post body.
3. Click Preview

Expected result:

New tab opens with preview.

Actual result:

If popup blocking is disabled, a new window opens with the preview.  On subsequent clicks of the Preview button, it reverts to opening a new tab as it should.

Found in WordPress 3.5-RC1.",miqrogroove
20233,Preview opens in the same window when edit panel was previously another Preview window,,Editor,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-03-13T23:29:16Z,2013-01-03T05:52:29Z,"Steps to reproduce:

1. Create a new post, save as draft
2. Click ""Preview""
3. Go to the Preview window, and from there use the Admin bar to go back to the Dashboard and start writing a new post
4. Save that new post as draft
5. Hit ""Preview""
  * Expected result: preview opens in a new window
  * Result: preview opens in the same window

Is there some way we could get around that? For people working with multiple tabs, it can be really confusing.",hd-J
11082,Saving an empty draft dumps user out to edit.php,akhilasuram,Editor,2.7,low,minor,Future Release,defect (bug),assigned,needs-refresh,2009-11-05T15:16:46Z,2012-12-13T20:09:23Z,"ENV: wp trunk r12138 (2.9-rare)

When a user starts up the editor for a new post and attempts to save a post with no title and no content, WordPress dumps the user back out to the list of posts in edit.php with no message or indication as to why this happened. You can edit the publish information (date, status, etc.), tags, and categories, but as long as there is nothing for either the post title or the post content, the behavior is the same.

It's expected that a post with no content whatsoever wouldn't be saved (there's nothing there!), but would be nice if the behavior were easier to understand or explained why nothing was happening.",markel
14749,Scrollbar position jumping in the Appearance->Editor newcontent textarea,,Editor,3.0.1,normal,normal,Awaiting Review,defect (bug),new,,2010-09-01T01:32:10Z,2012-11-01T05:14:52Z,"As I am editing code in the Appearance Editor main textarea called newcontent, the scrollbar slider will jump upward to a new position moving the current line being edited down.

On a vista machine using ie8 with wp3.0.1 and the 2010 theme, a single character stroke will move the scrollbar up 3 lines.  

On an xp machine using ie8 with wp3.0.1 and a custom theme, a single character stroke will move the scrollbar up 8 lines.  Ocasionally the scrollbar will only move 1 line and every keystroke will bring the down.  Pasting text can and often does bring the line being edited below the visible area of the textarea.

It is very frustrating when it jumps around like this.",Giant Slayer
20016,Spellchecker returns suggestions with wrong encoding,,Editor,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-02-10T17:59:00Z,2012-02-10T20:34:01Z,"Steps to reproduce:

* Create new post
* Type 'canamo'
* Set spellcheck language to Spanish
* Click on 'canamo' for suggestions

",koke
19666,Switching from HTML to Visual editor removes some line breaks inside PRE,,Editor,3.3,normal,normal,Awaiting Review,defect (bug),reopened,has-patch,2011-12-25T21:34:59Z,2013-02-09T12:49:25Z,"All line breaks inside PRE elements used to transmit correctly when switching editor mode from HTML to Visual. Around WP3.1 or so, line breaks started to be removed if they happened to be inside an inline element. The common use case is a single CODE element in a PRE element:
{{{
<pre><code>Line 1
Line 2
Line 3</code></pre>
}}}
The above markup used to be handled correctly when switching between editor modes in either direction, but now the line breaks are converted to spaces when switching from HTML to Visual mode.

Many users have posts with a single CODE inside PRE, as it's semantically correct for source code, and is the convention required to support some syntax highlighters like Chili.",mrclay
21311,"The ""Paste as plain text"" feature in TinyMCE produces double-line breaks between paragraphs.",,Editor,3.4.1,normal,minor,Awaiting Review,defect (bug),new,close,2012-07-19T10:41:13Z,2012-07-20T08:44:55Z,"Mac OSX Lion, Chrome, WordPress 3.4.1

See attached SWF for a screen-video demonstration.

 • In WP-Admin -> Posts -> Add new, with the editor in visual mode, click the ""Pase as plain text"" icon [[BR]][[BR]]
 • Paste your content into the window that pops up and click ""Insert"" [[BR]][[BR]]
 • Note that two paragraphs seem to be double-line breaked. [[BR]][[BR]]
 • Switch to HTML mode and note that there are extra ""&nbsp;"" spaces inserted between paragraphs. [[BR]]

 ",uxtremist
21460,The accesskeys in Quicktags don't work in all browsers,,Editor,,normal,normal,Awaiting Review,defect (bug),new,,2012-08-03T19:21:56Z,2012-08-03T22:01:43Z,"IE (Alt+letter) works properly. Firefox (Alt+Shift+letter) only focuses the corresponding Quicktags button sometimes. Doesn't perform the action. If the button is hidden, performs the action (this shouldn't happen in Quicktags). Chrome doesn't seem to do anything. Opera works differently: Shift+Esc brings a list of all defined access keys on that page. The Quicktags access keys are not listed there.

",azaozz
21934,Title field on Insert/edit link form shouldn't allow autosuggest,,Editor,3.4.2,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-09-19T21:10:18Z,2012-09-20T22:37:44Z,"When entering a link through the ""Insert/edit link"" thickbox form, Firefox displays autosuggest dropdowns for both the URL field and the title field.

This would be helpful, except that the javascript keyboard handlers bound on keydown/keyup prevent the browser UI from being accessible.

What happens is:

1. User tries to add link to text through the editor (Visual or HTML).
1. User enters the correct URL into the URL field, and exits that field by hitting ""tab"".
1. User begins typing the link title. Firefox browser UI helpfully suggests some similar titles.
1. User sees a title they'd like to use, and hit the keyboard down arrow, thinking that this will select the correct title for them.
1. What actually happens is that the first link listed below in the link to existing content gets selected. This overwrites what's been entered in the URL and title field.
1. User says, WTF just happened.

Solutions:

- Adding `autocomplete=""off""` to these two form fields would prevent Firefox from displaying its autosuggestions. This might fix the problem, but feels kind of like a bandaid.

- A keydown/keyup handler could be attached to each of the text input fields with event.stopPropagation could stop the ui keyboard behavior when typing into those fields.",goldenapples
18946,Too long tags make the cross not moving anymore.,,Editor,3.2.1,normal,minor,Awaiting Review,defect (bug),new,,2011-10-14T13:13:48Z,2011-10-22T13:29:27Z,"If you have a long tag like a long title of a book or movie title or game title and you more the cross doesn't move with the tags.

Look to the screenshot for more info",jonezjea
21853,Unable to Add Whitespace After Hyperlinks,,Editor,3.3.2,normal,major,Awaiting Review,defect (bug),new,,2012-09-09T06:22:43Z,2012-09-09T15:10:02Z,"This bug seems to have developed somewhere after version 3.1.

To reproduce this bug:

1. Start a new post or page.
2. Click the HTML tab.
3. Paste this snippet:

{{{
<ul>
	<li><a href=""http://www.google.com/"">Parent item</a>SPACEME
		<ul>
			<li>Child item</li>
		</ul>
	</li>
</ul>
}}}

4. Click the Visual tab and note how the hyperlink runs up against the word ""SPACEME"".
5. Click the HTML tab.
6. Add a space before ""SPACEME"".
7. Click the Visual tab.
8. Like magic, the space has vanished! :(

Curiously, I am unable to reproduce this behavior if I add the space on the Visual tab rather than the HTML tab.  Very buggy!",miqrogroove
24161,Updating long post quickly could result in post truncation,,Editor,3.5.1,normal,critical,Awaiting Review,defect (bug),new,,2013-04-23T00:45:20Z,2013-04-23T02:30:41Z,"I've observed a bug yesterday when updating a 10,000 word post frequently while testing another feature. The last update ended up eating almost half of the post at the end and went unnoticed until today when it was pointed out by users.

I've examined the update history and indeed found the last update to not contain a good portion of the post - it just cuts off.

The only explanation I have for this behavior is that because the post is so long, the update button was pressed while the textarea field was still loading, which interrupted the loading process and submitted whatever was loaded at the time. This is very dangerous - a race condition like that could demolish long posts or posts on slower connections.

A solution here should be a validation function that makes sure the post was loaded before the Update button is clickable. Perhaps just tie the onload to the Update button so it's disabled until the browser confirms things are loaded. I'm open to other suggestions, but I'm now definitely scared of one of the authors or myself accidentally truncating content.",archon810
20073,When I publish a draft the posting date is not updated,,Editor,3.3.1,normal,major,Awaiting Review,defect (bug),new,dev-feedback,2012-02-18T20:39:13Z,2012-02-19T15:23:57Z,"I believe this was a bug previously that has come back with the latest version.  If you create a draft post and edit it over time, then publish it the date is NOT automatically adjusted to the date you publish.  It keeps the original date the post was created as a draft, thus putting it behind in the RSS feed and on your posting list.  This used to be an issue before, and seemed to be corrected and has come back up again

Steps to re-produce:
1)  Create a draft today
2)  Wait a couple days then publish
3)  You will see the ""published Date"" is the date it was created NOT the date it was published

This also happens with scheduled publishes ",ccolotti
9716,WordPress Theme/Plugin editor adds blank lines,,Editor,2.7.1,normal,normal,Future Release,defect (bug),reopened,has-patch,2009-05-03T20:32:01Z,2012-04-20T16:29:42Z,"When I edit theme css in theme editor in WP admin
!WordPress reformats my CSS and adds a blank life between entrys in css.
it adds a cr and line break ....
In other words if you have a 100 line css
download with FTP look at in text editor
it is now 200 lines
as WP added blank lines to css
it should not be adding things to the CSS?

It may only do this when it wraps window but I think not it appears to add blank lines.

Imagine the damage to a 1000 line CSS it spaces every entry by 1 line!!!!!!!!!!!!!! It stiil works but it messes it up.

THAT IS COFIRMED ONE EDIT DOUBLE SPACE ENTIRE CSS... VERY BAD 

Here is part of the problem but not the double space in total.
When you down load the file in FTP and it is in windows encoding
the line endings.
So you ftp back and all is fine.
Now you are at the coffee shop and what a quick change, so you login to WP admin and theme editor edit CSS.
Now you get home and download in ftp to continue your work on CSS.
The file is now mac formatted (or thinks it is) so when you edit the line endings do not contain the right line breaks for windows OR WP theme editor as it ignores them. This explains the wierd spacing though not the double spacing .... why is it converting to mac and yet ignores mac?!
weird.. it adds a CR tag
must be bug
again though its still double spacing on edit IN windows line ending though if you down load cSS its tagged mac format...


Use notepad 2 or Note pad plus to see the error.
When ever you edit with !WordPress editor it adds cr and says css is now mac formatted.

FTP download the file and now see all the extra CR's it adds.

So it likes CR only so I convert to CR only and it beaks CSS it wants CR LF to work but if that is the case why does the online editor add CR only????????????????????????? 
",Vistronic
23382,WordPress admin panel lags,,Editor,,normal,normal,Awaiting Review,defect (bug),new,,2013-02-04T19:02:20Z,2013-05-20T00:01:32Z,"I'm using Windows 7, brand-new laptop with i7 processor, 8GB RAM and 1080p resolution.

I have created a post with 15 1920x1080 images in it and a lot of content (25000 characters). Results:

=== CHROME & CHROME CANARY ===
It's far from being usable at all. It lags that much that cursor doesn't even change from ""default"" to ""pointer"" when I hover over ""Publish"" button. Even switching to WordPress Admin Panel tab takes 5 seconds. Textareas are not resizable because lags prevent my mouse cursor from doing anything. Actually, entire Admin Panel lags, all these Drag&Drop widgets etc.

=== FIREFOX ===
A bit better than Chrome, everything lags but at least I can resize textareas and after 10 seconds it becomes usable. Nonetheless, it's not as smooth as other websites.

=== IE10 ===
Excellent. Not even a single slowdown!

=== SAFARI ===
Very close to IE10.

I think that WordPress Admin Panel is stuffed with heavy Javascript. Maybe it's worth taking a look at that. The module that seems to be the heaviest is TinyMCE - when this appears then lags appear as well. Chrome works fine everywhere except WP Admin Panel.

Good luck guys and thank you for your hard work during WordPress development :) My complaints are here only to make it better. I can live with these lags (since I can do it in IE10) but those are just my thoughts (many people use Chrome).",Looimaster
23332,iPad Can't Move Cursor in Visual Editor,,Editor,,normal,normal,Awaiting Review,defect (bug),new,,2013-01-30T23:13:50Z,2013-02-11T23:33:20Z,"I've been ramping up iPad usage with WordPress both for mobility as well as testing.

The more I use it, the more frustrated I become with the visual editor.  Due to what appears to be multiple bugs with both iOS and WordPress, I am often unable to move the cursor and must switch to the Text tab to do my editing.

When tapping into the Visual editor in a long post, the screen auto scrolls so that the cursor is sitting directly above the keyboard, and the admin bar moves to the middle of the page, covering most of the remaining editing area.  This blocks the view of any preceing or following text, and makes it very awkward to write sentences longer than the editor is wide.

To move the cursor to a different part of the post, I have to un-focus the editor and the tap into the editor on a different line.  The only place I can reliably land the cursor is at the end of a line, so to change anything in the middle of a paragraph, I have to use the text editor.",miqrogroove
23321,ins button in text editor produce semantically different HTML then the U button at the visual editor,,Editor,,normal,minor,Awaiting Review,defect (bug),new,,2013-01-30T06:54:51Z,2013-01-30T06:54:51Z,"U button at the visual editor makes something like 

{{{
<span style=""text-decoration: underline;"">text</span>
}}}

while the ins at the text editor makes

{{{
<ins datetime=""2013-01-30T05:44:49+00:00"">text</ins>
}}}

It is actually not easy to understand that the intentions behind both are equivalent - underline the text*, but semantically they have different meaning, and in the context of WP usage the styling one has probably the more correct meaning.

Alternatively, if ""ins"" is important html tag then why it is not possible to add it in the visual editor.

related #20149

*Browsers by default underline ""ins"" but twentyeleven and twentytwelve remove it.",mark-k
22392,save_state() in postbox.js should look at the hidden checkboxes instead of :hidden,,Editor,,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-11-08T16:05:28Z,2012-11-08T18:11:13Z,"At this moment save_state() looks at all the metaboxes that are really hidden with filter(':hidden'). With can lead to weird behavior when a plugin starts to hide a metabox in some cases since it can be showed/hidden by default.

I was wondering if it is possible to look at the checkboxes and mapped them as a string and pass it to the AJAX action closed-postboxes.",markoheijnen
19354,wp_allowed_protocols() does not allow data URI scheme,,Editor,3.2.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-11-25T03:34:46Z,2012-03-26T03:27:19Z,"When inserting images into a post via copy-paste, Firefox will paste a base64 text string (using the Data URI scheme) into the post editor.  The result will look something like:

<img src=""data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg=="" alt=""Red dot"">

When the post is saved, the ""data:"" portion of the src attribute is stripped away by wp_kses_hair() via the line:

if ( in_array(strtolower($attrname), $uris) )
   $thisval = wp_kses_bad_protocol($thisval, $allowed_protocols);

""data:"" is treated as a protocol prefix, and is not seen as part of the src attribute.

To reproduce this error, try the following in Firefox:

1) Do a Google image search for a rendom image.
2) Right-click -> ""Copy Image""
3) Paste into rich text editor
4) Save post
5) View HTML tab of the editor and notice that the ""data:"" scheme has been removed.

A side effect of this issue is that the image src is treated as a relative image path on the server (in subdirectory ""image/png"" with long string of characters as the ""file name.""  The server will typically report an error in its log file about the request length of the URI being too long.",hardy101
16819,Accessibility: Internal Linking behaviour in Editor / TinyMCE,,Editor,3.1,normal,normal,Awaiting Review,enhancement,reopened,,2011-03-10T10:52:26Z,2012-10-22T15:58:33Z,"'''Issue'''

The default behaviour of the new 'Internal Linking' feature is to auto-insert the title attribute as a duplicate of the link text.

This is not best-practise and, contrary to some beliefs, doesn't actually aid accessibility.

'''Solution'''

The title field should be blank by default and only included if the uses enters data.

'''Why?'''

Title text is only useful when it is *different* to the actual link text AND provides additional information.  Duplicating the link text in this fashion just adds fuzz to the page.
",stencil
18979,Add $post_type parameter and a filter to meta_form(),,Editor,,normal,normal,Awaiting Review,enhancement,new,,2011-10-18T03:55:56Z,2012-04-01T12:29:54Z,"In the current version, meta_form(), the function which outputs Custom Fields form used in Edit Post pages, shows all meta keys you have used regardless of post type. Sometimes this gives users unwanted options.

I'd like to suggest adding $post_type parameter to meta_form() to show only meta keys you have used in the same post type. In addition, it would be better if there were a filter for the meta keys.",takayukister
14808,Add Editor Documentation Functions URL for theme-defined functions,,Editor,,normal,normal,Future Release,enhancement,new,has-patch,2010-09-08T00:57:20Z,2011-08-25T00:15:44Z,"Currently, functions that are called within template files shown on the editor are included in the list of functions that you can try and lookup documentation for.

(The $ignore_functions array only seems to be for functions defined, not called, in a file.)

As the http://api.wordpress.org/core/handbook/1.0/?function=... seems to be hard-coded in, it's not possible for themes to overwrite it for functions they've defined.

Is it possible to allow themes to define where the documentation lookup should be for their own functions?",GamajoTech
23159,Add Words Counter In The Excerpt Metabox,,Editor,3.5,normal,normal,Awaiting Review,enhancement,new,,2013-01-09T19:46:57Z,2013-01-11T17:26:24Z,"Hi WordPress Lovers :) , WordPress 3.6 fouces on ""Content Editing"" a small good idea is to add a words counter in the bottom of excerpt meta-box , and a small tip of the current theme max words count ..",alex-ye
22924,Add filter to theme editor accepted files,,Editor,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-12-13T21:35:48Z,2013-02-22T20:41:09Z,"Proposing adding a filter to theme-editor.php so theme authors can add to the list of files that are editable. ie html/less/js files.

Hers an example of what could be possible:
{{{
add_filter( 'wp_theme_editor_filetypes', 'add_my_filetype', 10, 2 );
function add_my_filetype( $allowed_types, $theme ) {
	
	$extra = $theme->get_files( 'less', 1 );
	return $allowed_types += $extra;
}
}}}",pross
7665,Add jQuery UI's datepicker() where applicable,chsxf,Editor,2.7,lowest,minor,Future Release,enhancement,assigned,has-patch,2008-09-01T09:32:03Z,2013-05-14T07:48:59Z,"Obviously it'll need some skinning, but it's handy dandy:

http://jqueryui.com/demos/datepicker/

It'd be slick to have that for choosing dates (for example publish dates). We should still allow manual entry though.",Viper007Bond
11268,Allow Image Map in KSES,,Editor,2.9,low,minor,Future Release,enhancement,new,has-patch,2009-11-26T00:12:31Z,2010-03-31T08:50:20Z,Add image maps in allowed post tags.,mtdewvirus
19992,Auto-fill URL field on Insert/edit link popup,,Editor,3.3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-02-08T22:38:14Z,2012-11-26T00:14:21Z,"I'd like to see the following behavior: When I select a plain URL or email address in the editor and click on ""Insert/edit link"" the URL field is already populated with either the URL or with a ""mailto:<email-address>"". Any thoughts? I'd more than happy to write a patch.",tillkruess
15631,Custom fields auto-focus,,Editor,3.1,normal,normal,Future Release,enhancement,new,has-patch,2010-12-01T19:02:16Z,2013-01-22T15:23:25Z,"When you are on the post editor (page editor, whatever), if you want to create a new custom field and click on Create New, it should auto-focus on the text input field that appears. ",jane
23339,DFW in HTML mode should have switch text direction button for RTL languages,,Editor,,normal,normal,Awaiting Review,enhancement,new,,2013-01-31T12:22:55Z,2013-02-01T19:14:02Z,It is hard to edit HTML when the flow of the text is right to left. The normal HTML editor has this button when used in RTL environment.,mark-k
20237,Default editor needs support for non-DFW fullscreen mode,,Editor,3.3.1,normal,minor,Awaiting Review,enhancement,new,close,2012-03-14T23:13:51Z,2012-12-27T22:54:22Z,"There's currently no way to change whether or not to use distraction-free-writing (DFW) mode for the default WYSIWYG editor. When inserting a new editor via the wp_editor() function, you can pass 'dfw' => false as one of the settings arguments; but in 'edit-form-advanced.php', the editor is hard-coded to use DFW.

Many people prefer to make layout and styling adjustments in full-screen view, so it seems strange to have this preference hard-coded. Recommend adding an option to Settings > Writing to select between DFW and classic full-screen.",danblaker
20186,Default font in the Visual Editor doesn't work well in all languages,,Editor,,normal,normal,Future Release,enhancement,new,,2012-03-06T20:41:53Z,2012-05-02T20:25:57Z,As the title. This is somewhat unnoticed as most themes seem set the fonts there with editor-style.css. However we would need a default that works well for themes that don't set that.,azaozz
17388,Distraction free writing mode submit button text,,Editor,3.2,normal,normal,Awaiting Review,enhancement,new,,2011-05-12T12:11:09Z,2011-05-12T12:11:09Z,"The text on the submit button in distraction free writing mode should match that of the submit button on the main editing screen. Currently it always says ""Update"" for published posts, and ""Save"" for other statuses. It should say ""Save Draft"", ""Save as Pending"" etc when relevant (and change when you change the post status dropdown too).",johnbillion
2702,Easier way to change page order (AJAX/jQuery?),mdawaffe,Editor,2.3,normal,normal,Future Release,enhancement,new,,2006-05-03T21:36:37Z,2011-10-08T03:23:13Z,"When having a lot of pages, they get harder to manage (see also Ticket #2004 [Pages page should page]).

When needing to change the page order, it's very inefficient to manually change the page order value, or whole series of page order values, just to move one page up or down the list. Suggestions for alternative ways to change the page order are:

In ""Manage - Pages""
1) With up/down arrows (page goes one up or down when the button/link is clicked).
2) or: Drag+Drop (The post/page settings can be dragged and dropped, so why can't this, too?)
",FireMotion
14640,"Feature Requst:  Add Action Hook ""post_submitbox_end""",,Editor,3.0.1,normal,normal,Future Release,enhancement,new,has-patch,2010-08-18T21:09:53Z,2013-01-10T02:55:26Z,"I'd like to add a button UNDER the Publish button on an edit post page.  There is an action for adding a button (or other elements) BEFORE the Publish button (post_submitbox_start), but I'd like one at the end.  I know that I can address this w/ CSS if necessary, but it would be nice to be able to position my button in the HTML as well.",ancawonka
18820,Formatting bar loading experience is subpar,azaozz,Editor,3.2.1,normal,normal,Future Release,enhancement,reopened,,2011-09-29T21:51:41Z,2011-11-18T07:23:24Z,"When you save a post, the way the formatting bar loads in (Visual and HTML both) is subpar. It pops in really late, and shoves your post content down.

Screencast: http://s3.amazonaws.com/txfx/screencasts/Formatting-Toolbar.mov

Let's make this better.",markjaquith
22980,Get Shortlink button should be appended using the get_sample_permalink_html filter,,Editor,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-12-17T18:39:43Z,2012-12-17T18:49:00Z,"Currently the Get Shortlink button is appended directly to the output of get_sample_permalink_html(), which makes it impossible (without CSS/JS) to append items to the HTML.

The get_sample_permalink_html filter should be used inside of 
[source:/trunk/wp-admin/edit-form-advanced.php?rev=23180#L334 edit-form-advanced.php] so the user has complete control over the generated output.",coreygilmore
24047,Line numbers in post editor text mode?,,Editor,3.5.1,normal,normal,Awaiting Review,enhancement,new,,2013-04-11T17:48:32Z,2013-04-11T22:23:28Z,"I would love to see line numbers in the post editor when in text mode. This and/or the cursor returning to the editing point when updating a post.

It can be very annoying that the cursor always returns to the top of the editor when a manual update is initiated. Making a lot of small edits in various parts of a longish post can be really tedious.",dgwyer
18423,Make internal linking's River + Query constructors public,koopersmith,Editor,3.2,normal,normal,Future Release,enhancement,reviewing,has-patch,2011-08-16T02:00:07Z,2011-12-19T00:24:45Z,"...and restructure them so that they're slightly more configurable, i.e. making the AJAX endpoint URL and result rendering overrideable.",mitchoyoshitaka
18306,Make sample permalink clickable,,Editor,3.2,normal,normal,Future Release,enhancement,new,has-patch,2011-07-31T14:41:39Z,2012-11-01T20:02:13Z,"Following the lead from #17282, the ""View Post"" button next to the sample permalink is also just a link to another screen.

I propose we get rid of it and make the sample permalink itself clickable",scribu
18245,Make the visual editor KSES filter/user capabilities aware,,Editor,,normal,normal,Future Release,enhancement,new,,2011-07-25T18:11:21Z,2011-08-23T20:16:45Z,"Currently the visual editor assumes ""unlimited html"" for all users. This can result in some surprises when a user doesn't have that capability.

We can make a function that translates the KSES allowed tags and attributes into TinyMCE format and sets the editor accordingly.",azaozz
18254,Preserve image aspect ratio when editing dimensions manually in post editor,,Editor,3.2.1,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-07-26T01:57:16Z,2011-10-09T14:09:17Z,"The dialog box that pops up when the user clicks the ""edit image"" icon that appears on hovering over an image in the visual editor has an ""Advanced settings"" tab with input fields for the pixel dimensions of the image.

When one is updated, the other does not change. A popular feature of image management software is to ""link"" the values and preserve the aspect ratio of the image.

I propose that WordPress have the option (a checkbox by the inputs?) to do this.

Sorry if this is terse; I'm about to be kicked off this library machine and I can't come back until tomorrow. Comment with anything I need to add and I'll update when I can.",voyagerfan5761
16284,Remove the wpdialog plugin from TinyMCE,azaozz,Editor,3.1,high,normal,Future Release,enhancement,new,,2011-01-18T14:26:28Z,2011-01-18T14:26:28Z,"Combining TinyMCE with jQueryUI is not a very good idea IMHO:

 * TinyMCE has all the functionality to create dialogs which is native, more extended and seems more robust than jQuery UI.
 * The reason why most dialog type scripts use an iframe is to remove any possibility of conflicts with the parent page. In out case such conflict might be introduced by a plugin that alters the edit screen.
 * There were suggestions some time ago to stop using jQuery UI in WordPress admin and replace it with one of the other jQuery plugins with similar functionality that are a lot more concise and robust.",azaozz
22412,Save posts via Ajax,,Editor,3.4.2,normal,normal,Awaiting Review,enhancement,new,,2012-11-11T12:18:09Z,2012-11-12T09:39:16Z,"When editing a post/page (as with any other type of document) one of the primary benefits is the undo/redo feature.

However, as soon as you update your changes you lose access to undo your previous keystrokes before the update. If you could save posts via Ajax then you would still be able to undo/redo post edits seamlessly.

Perhaps there could be a toggle in general settings for this option, and have it enabled by default?",dgwyer
8368,Scheduling post time behavior and language refinements,garyc40,Editor,2.7,low,minor,Future Release,enhancement,assigned,early,2008-11-26T17:56:19Z,2013-01-22T17:38:00Z,"On post editor, in publish module, at Publish Immediately-Edit. 

If click Edit, layer opens revealing the entry boxes for date and time of publication but still says Publish Immediately. Text should change to say ""Publish at:"" b/c it's weird if you change time and screen still says immediately until you click OK. 

Move OK button to the right side of module (submission buttons to the right as standard placement) with cancel to left (as with other places).

If you start to type in an alternate time then hit cancel, it reverts to publish immediately, which makes sense. If you have already scheduled the publish time but you decide to change it and start typing a different alternate time, if you hit cancel it does not revert to your originally scheduled time, but to publish immediately. It should revert to your previously saved schedule time. Should have a separate link to revert to publish immediately. ",jane
18943,Scroll back to previous editor position after post save/update,,Editor,3.2.1,normal,normal,Awaiting Review,enhancement,new,,2011-10-14T10:23:05Z,2012-09-21T14:38:47Z,"I work exclusively in html mode in the WordPress editor, but this probably applies to the visual mode too.

When editing long(ish) posts it is really frustrating that the cursor position defaults to the beginning of the post after saving/updating.

Constantly having to manually scroll back down to the previous cursor position after updating, soon gets really tedious.

Focus always seems to be returned to the post title text box after saving/updating a post. It would be more intuitive to return focus to the main editor instead and automatically jump to the previous cursor position.",dgwyer
23630,Simplify the DFW implementation,,Editor,,normal,normal,Future Release,enhancement,new,early,2013-02-26T16:44:57Z,2013-03-06T20:04:42Z,"I was sad to see that distraction free writing [http://make.wordpress.org/core/2013/01/08/wordpress-3-6-distraction-free-writing-improvements/#comment-7469 didn't get picked up] for 3.6.  I decided to play around with a rough proof of concept to see how difficult it would be to use the existing TinyMCE instance for DFW.

Benefits of handling it this way include:

- It eliminates the need (and complexity) of juggling multiple instances of TinyMCE
- We'll be able to remove a bunch of the old DFW code
- It makes the transition between regular mode and DFW mode much more smooth
- It can be as fully featured as we want it to be",lessbloat
15139,Texteditor: link button always enabled,,Editor,,normal,normal,Future Release,enhancement,assigned,,2010-10-17T08:27:06Z,2012-01-06T01:32:10Z,"When you make a link you are forced to write the text in the editor and select the text before the link button is usable. I have seen users fail to understad this and getting stuck at creating links.

It might be better if the link button was enabled as default and if no text was selected a textfield with the link text appeared in the insert/edit link.

Another alternative is that the link text textfield (just mentioned) is visible all times but if text is selected it's written there by default. Otherwise it's left blank.",olalindberg
22154,The 'More' tag placeholder looks terrible,,Editor,,normal,minor,Awaiting Review,enhancement,new,,2012-10-10T20:12:36Z,2012-10-11T05:17:18Z,"Really, it does.",johnbillion
20309,Visual Editor: Editor styles overwrite FF minimum font size settings when a small size is set,,Editor,3.4,normal,normal,Awaiting Review,enhancement,new,,2012-03-27T14:08:50Z,2012-03-27T14:08:50Z,"This issue can be found when using Minimum font size accessibility settings in Firefox, instead of the Zoom settings.

* When editor-style.css defines a specific font size, the text in the visual editor cannot be made smaller than this font size.
* If I set the default font size to a bigger value than the one set in editor-style.css, it works.

Could we change this, so that all contents in the dashboard always fit the minimum font size defined in FF, whether that size is a small value or a big one?

Possibly related: #12825",hd-J
18222,Visual clue after saving in fullscreen edit mode,,Editor,,normal,minor,Awaiting Review,enhancement,new,close,2011-07-22T19:45:00Z,2011-07-23T08:09:24Z,"You can save your current state while writing an article in fullscreen edit mode by pressing Ctrl+S.

However, there is no visual indication after this that the article has been saved or while saving.

This should be added.",mathbr
21649,_WP_Editor class is currently marked as final,,Editor,,normal,normal,Awaiting Review,enhancement,new,,2012-08-21T13:13:08Z,2012-08-21T17:16:30Z,"Revision [19420] turned

{{{
class _WP_Editors{}
}}}

from wp-includes/class-wp-editor.php into 

{{{
final class _WP_Editors{}
}}}

I'm aware that editor API is currently under large changes but it would be great if plugins could extend _WP_Editors class by removing ""final"" keyword.",Marko-M
23323,"img quicktag is so inferior to add media, should be merged or removed",,Editor,3.5,normal,normal,Awaiting Review,enhancement,new,close,2013-01-30T09:55:50Z,2013-01-30T20:16:31Z,"Right now, in the text editor there are two ways to add an image, with the ""img"" button or the ""add media"" button. ""Add media"" contains all the functionality of ""img"" and adds much more, while ""img"" is ugly and feels like an historical artifact.

IMO ""img"" should be deleted or be an alias to ""add media""",mark-k
11319,oEmbed should be integrated into Add ... from URL experiences,,Editor,2.9,normal,normal,Future Release,enhancement,new,,2009-12-03T22:55:05Z,2010-10-28T08:50:33Z,"oEmbed should be integrated into Add ... from URL experiences

enhancement, ENV: WP 2.9-beta-2 ++ (trunk r12320)

For WP 2.9 we removed oEmbed from the UI, #11288.

The ""Embed"" field did not validate the oEmbed, that is part of the reason I recommended not incorporating UI for WP 2.9 -- I think JS based validation is essential to a good experience.

If you use the ""Insert an image from another web site"", once you input a URL, WordPress should automatically check if it is an oEmbed link and adjust and populate the fields as appropriate.

ADDITIONAL DETAILS

If JS is disabled, I see little benefit to including a oEmbed form. The ability just to include oEmbeds on their own line in the content seems like a good balance.",lloydbudd
6619,permalink field misleading in page editor: it displays the erroneous values,,Editor,2.5,normal,normal,Future Release,enhancement,new,,2008-04-06T14:48:15Z,2009-11-20T20:32:33Z,"if you create a sub-page, the permalink field should display the proper permalink.

currently, if you have:

site.com/page/

and when you create:

site.com/page/subpage/

the permalink shows:

site.com/subpage/

until it gets saved

the expected behavior would be for it to show the correct permalink.

the same remark applies when you then change the permalink. if the parent is no longer page, but rather page-2, then the permalink should update accordingly.",Denis-de-Bernardy
22180,"Add attachments to ""existing content"" area in link dialog",,Editor,3.4,normal,normal,Awaiting Review,feature request,new,,2012-10-12T20:59:26Z,2012-11-13T01:30:57Z,"At the moment, the process for linking to attachments within the editor is rather cumbersome. Each time someone wants to link to a PDF document or other item they've uploaded through the media interface, they have to take the following steps:

1. Upload the file through the media uploader
2. Press the File URL button in the media modal
3. Copy the URL from the ""Link URL"" box
4. Close the media modal
5. Highlight the text they want to link
6. Press the ""Insert/edit link"" button in the editor toolbar
7. Paste the URL from their clipboard into the URL input

It would be nice if attachments could be included in the ""Link to existing content"" area within the link dialog.

I can see two possible ways of implementing this. Either simply include attachments in line with the pages, posts and custom post types that already display in that area; or, use a tabbed interface to switch back and forth between the normal ""existing content"" list and a list of existing attachments.

When I discussed this with Nacin and a few others at WordCamp Baltimore, we proposed adding a preference (possibly based on the information that's stored when the user uploads the media) determining whether the permalink leads to the attachment page or the actual file.

Based on my preliminary research, it looks like implementing this will essentially take two steps:

1. Add 'attachment' to the `$pts` array at the beginning of the `_WP_Editors::wp_link_query()` method.
2. If the preference has been set to link to the actual file, the code will need to adjust the `permalink` value in the `$results` array for anything that comes up as an attachment.

I'll look at starting a patch for this over the next few days, unless someone else gets to it first. Thanks.",cgrymala
21188,Fullscreen (distraction-free) editor should have a preview button,,Editor,,normal,normal,Awaiting Review,feature request,new,,2012-07-08T08:36:00Z,2013-01-08T14:01:54Z,"Per http://alexking.org/blog/2012/07/06/wordpress-fullscreen-preview-button

I do find it annoying to have to exit fullscreen, preview, then flip back to fullscreen.",markjaquith
19109,Want display fullscreen button only html editor mode.,,Editor,3.2.1,normal,normal,Awaiting Review,feature request,new,,2011-11-02T03:18:48Z,2011-11-02T03:37:55Z,"v3.2.1 writing fullscreen mode is display button both visual mode and html mode or visual mode only.

I want to display html mode only button. Want the following specification.

1. visual mode and html mode
2. visual mode only
3. html mode only <- new

Regards.",tatsuya
11489,iTouch useability in the editor out of the box,,Editor,2.9,low,minor,Future Release,feature request,new,dev-feedback,2009-12-19T03:47:58Z,2013-02-01T11:37:40Z,"I have tried to write a post in 2.9 in iPod Touch and the text zone has some problems:

* When you write the title, if you want to write the post the keyboard doesn't appear. You must move to another text-editable zone and go back to the main text zone to have the keyboard. 

* Once you have the keyboard, you have capslock activated and cannot deactivate it (you can deactivate letter-per-letter). 

I have tried in 2 different iTouchs with the same result. 

I put it as low because WordPress has an iPhone/iTouch app and don't know if happens the same in other mobile platforms. ",bi0xid
23776,"A string of text starting with ""http://"" turned into a paragraph",,Embeds,2.9,normal,normal,Awaiting Review,defect (bug),new,,2013-03-14T21:11:00Z,2013-03-15T07:10:14Z,"
In either editor, if there's a line of text that starts with http:// wordpress will create a new paragraph.

This description box isn't working to show what I mean see this support post.

http://wordpress.org/support/topic/a-string-of-text-starting-with-http-turned-into-a-paragraph",winterstreet
17210,Massive duplication of oEmbed postmeta,Viper007Bond,Embeds,3.1,normal,normal,Future Release,defect (bug),reopened,dev-feedback,2011-04-21T23:38:35Z,2013-02-15T19:56:22Z,"Hey guys,

Ever since my blog grew to a considerable size (a few million PVs a month) and started slowing down and exploding my server, I've been looking and implementing various optimizations. During one such passes through the data, I noticed this really weird oEmbed related behavior, which I've been observing for a number of WP version upgrades.

I use [embed] shortcodes a lot, and every new post after a few minutes ends up with a ton of oembed caches that don't belong to it at all - they're all from other posts. Posts that don't even have [embed]s at all still have over 100 oembed entries in wp_postmeta.

Here's an example of just a small subset of data residing in the table:

[[Image(http://farm6.static.flickr.com/5230/5641419581_0610c9e267_b.jpg)]]

There are now about 150,000 entries in the wp_postmeta table due to this, half of which are duplicated _oembed entries, which I think has heavy impact on server load. Not only that but I'm sure WP is filling the table up with values by redoing oEmbed queries, which may explain that load shoots up very high at times when publishing.
{{{
mysql> select count(*) from wp_postmeta where meta_key like '_oembed%';
+----------+
| count(*) |
+----------+
|    81499 |
+----------+
1 row in set

mysql> select count(*) from wp_postmeta;
+----------+
| count(*) |
+----------+
|   148451 |
+----------+
1 row in set
}}}

Just look at how many times this random video embed value shows up in the table. I'm sure it was used in only one actual post:
{{{
mysql> select count(*) from wp_postmeta where meta_value like '%p2oWELcd-lI%';
+----------+
| count(*) |
+----------+
|      815 |
+----------+
1 row in set
}}}

Just to clarify - I don't have 815 updates to a single post that may have explained this - these are completely unrelated, separate, published posts.

To put things in perspective, here are the top 20 offenders:
{{{
mysql> select distinct meta_key, count(*) as cnt from wp_postmeta where meta_key like '_oembed%' group by meta_key order by cnt desc limit 20;
+------------------------------------------+-----+
| meta_key                                 | cnt |
+------------------------------------------+-----+
| _oembed_5607e41abb700707540a854ae76182cf | 864 |
| _oembed_984bc07d3bc0f61b6b35230cd2fa7ced | 859 |
| _oembed_da8ae36275b4576cfcd92c0ed455be96 | 859 |
| _oembed_71dd4068a9a6911f50dbe57b3ff477c5 | 858 |
| _oembed_9f817e820c23ccbfac9b22b3474e5dd3 | 858 |
| _oembed_f3c1c03a81bc301b5f1a063f65119328 | 857 |
| _oembed_31bf10d95cb7c8e9f646d9d6e5728da0 | 857 |
| _oembed_25d0ebf59c994050cb604900cf04f53f | 856 |
| _oembed_6265dae657e38579c0a8ddb66132d526 | 852 |
| _oembed_562dd8c13888905cbd15dbd74e8699cc | 849 |
| _oembed_30ea17d1cc73acd925a74373d2be32ec | 848 |
| _oembed_87f16916b4da6571f454266bfbfaebe0 | 847 |
| _oembed_9f1f038d43e973bd60929201eee24f57 | 843 |
| _oembed_d46317d44fe11c0d90ef2cc3b45bce57 | 843 |
| _oembed_b1f8685ba405feee46baf9408eb632f7 | 841 |
| _oembed_1b56f492eba4c4ea698d816d0ecf2d51 | 840 |
| _oembed_fe597714de4081e6e7e78a88256c7db4 | 840 |
| _oembed_fb843e7b604cbc4e1ffa144d4eb300c8 | 839 |
| _oembed_97b12f2f1e59ee6eff95c61095aa5bef | 838 |
| _oembed_2b94d9f7c28ee37bfbead0a622c8be85 | 838 |
+------------------------------------------+-----+
20 rows in set
}}}

I'm quite at a loss here and would appreciate the next debugging steps. I haven't been able to determine where things are going wrong on my own.

Thank you.

P.S. The site in question is AndroidPolice.com",archon810
24296,"Viddler oembed has new endpoint, old one strips maxwidth",,Embeds,,normal,normal,Awaiting Review,defect (bug),new,,2013-05-09T17:34:41Z,2013-05-09T17:34:41Z,"Viddler changed their oembed endpoint:

http://developers.viddler.com/documentation/oembed/

Now it's ""http://www.viddler.com/oembed/"" instead of ""http://lab.viddler.com/services/oembed/"".

They have the old endpoint redirecting, but unfortunately, the redirection strips off the maxwidth (and possibly other) parameters, which can result in incorrectly sized videos when using oembed with Viddler.

Example:
http://lab.viddler.com/services/oembed/?url=http://www.viddler.com/v/bdce8c7&format=json&maxwidth=250

Redirects to:
http://www.viddler.com/oembed/?url=http://www.viddler.com/v/bdce8c7&format=json

We should change the endpoint in class-oembed.php to the new one. If the new endpoint is used directly, with no redirect, then it does correctly handle the maxwidth parameter.
",Otto42
23395,Video elements removed after revision,,Embeds,3.5.1,normal,critical,Awaiting Review,defect (bug),new,,2013-02-05T14:19:40Z,2013-02-05T14:19:40Z,"Users have been reporting that when they make a revision to an article that includes embedded videos, their updated version removes all YouTube embed videos. This is occurring from both Text & Visual editor views. Restoring a previous revision does not resolve the issue. This also happens when ""previewing"" a post prior to publish. 

Site with issues: http://porchdrinking.com

Thanks!
- Chris",chris_pd
24124,YouTube embed fails silently,,Embeds,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-04-18T14:43:39Z,2013-04-18T14:43:39Z,"I have never been able to get the YouTube embed to work by [embed] or just quoting the URL. I tried finding out why today, and tracing through what the code does, I find it times out trying to fetch JSON for the oEmbed data via php-cURL from YouTube. (In fact I think it is the DNS lookup that is particularly slow here, but I don't think it makes much difference where the cause is, and it seems to fail not just on the server I'm developing on, but also on other servers). It consistently takes about 7 seconds for YouTube to reply on the system I'm testing on, and I see the timeout is 5 seconds. Now I know what the problem is I have added a filter to increase the timeout.

The biggest problem though is that it fails quietly. There is no error message on saving a post. Secondly, it behaves randomly and marginally - sometimes it works, sometimes it doesn't, depending on the load at YouTube presumably.

I think the author should at least be told their post has failed and why. However, if the timeout is consistently too low, there is then no way to make it work, without changing PHP code in a much more knowledgeable way than a typical user.

Ideally, you'd then offer the opportunity to repost with a larger timeout. If this were available, then the post could be refused publication until it works.

Just increasing the default timeout globally isn't a good solution, as saves will appear to hang, and I don't really know what side effects that might have elsewhere.",frankieandshadow
23171,Add Meetup.com oEmbed support,,Embeds,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-01-10T12:21:01Z,2013-04-25T23:19:37Z,"Given the number of meetups people are doing around the world I think it would be nice to add Meetup.com to the list of oEmbed providers.

http://www.meetup.com/meetup_api/docs/oembed/

Currently there is a ''minor issue'' with their oEmbed API as it fails when the Meetup group has a custom domain for the group. I've had to do some ''dodgy'' code for our Aussie custom domains to get around that:

https://github.com/BronsonQuick/wpaustralia/blob/master/plugins/wpoz-meetups/wpoz_meetups.php

Seeing their is a new agreement between http://make.wordpress.org/events/ and Meetup.com hopefully one of the Automatticians can let Meetup.com know that their API needs a patch for custom domains ;)",sennza
21540,Add support for responsive video embeds,Viper007Bond,Embeds,,normal,normal,Awaiting Review,enhancement,assigned,,2012-08-10T17:15:50Z,2013-01-17T17:27:31Z,"By wrapping the html content of a video embed with a container (incl. class name), we could provide a simplified way for Theme authors to make video embeds truly responsive, through basic CSS.

See #21480",obenland
21632,Adding Imgur as an oEmbed provider,markjaquith,Embeds,,normal,normal,Future Release,enhancement,reopened,dev-feedback,2012-08-19T15:51:15Z,2012-09-23T18:26:36Z,Adding imgur to the list of oEmbed providers! (wcgr rocks),bradparbs
23442,Allow wp_remote_get args to be filtered for oEmbed calls,,Embeds,3.5,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-02-10T21:48:10Z,2013-02-15T20:36:04Z,"Currently, the oEmbed code use wp_remote_get() to communicate with the oEmbedded service. However, there's no way to filter the arguments that get used - it simply uses the system wide defaults. 

Filtering the defaults (E.g. http_request_timeout) seems overkill when you know that you only want to change things for something specific like an oEmbed call that you know may take longer than 5 seconds (E.g. 
https://github.com/leewillis77/wp-github-oembed/blob/1.2/github-api.php#L35)

The attached patch adds a new filter oembed_remote_get_args which allows plugins to override the wp_remote_get args for oembed calls (Including discovery)",leewillis77
14759,Improve the way oEmbed deals with caching,,Embeds,3.0.1,normal,normal,Future Release,enhancement,new,,2010-09-01T23:47:30Z,2013-03-15T07:57:59Z,"As Matt pointed to me today, caching oEmbed results to post meta is kinda lame.

I originally did this because I didn't want the HTML in old posts changing on it's own, say for example if the oEmbed provider got compromised. However I think that's extremely unlikely since we only whitelist major websites that can be trusted.

Perhaps instead we should use transients to cache this data. That way when embed HTML is updated, posts will eventually be updated too due to expiring caches. I'm thinking a cache time of a week would be good, but with some random +/- to make sure multiple caches don't all expire at once.

A good example of this is Vimeo. Anyone who embedded a Vimeo embed in their post before a few weeks ago got `<object>`-based embeds. However now Vimeo gives out `<iframe>` based ones. The only way currently to update the old embeds to the new HTML (without using a few lines of code) is to edit all of the posts and re-save them to trigger a cache update. That's painful.

Alternate suggestions welcome though.",Viper007Bond
23149,YouTube Embedding is incorrect for https:// URLs,,Embeds,3.5,normal,normal,Awaiting Review,enhancement,new,,2013-01-08T19:46:28Z,2013-04-07T01:52:09Z,"Reference: #18719, #20102, Conversation from 9-19-2012:
https://irclogs.wordpress.org/chanlog.php?channel=wordpress-dev&day=2012-09-19&sort=asc#m459455

This is incorrect and a bug. If the user has posted an https link, then we should send the correct parameters to YouTube to get an https value in the resulting HTML returned.

At present, there is no way within WordPress to get the proper https code in a YouTube oEmbed iframe when https is actually desired.

",Otto42
24170,oEmbed / Vimeo: Support player.vimeo.com-style URLs,,Embeds,,low,minor,Awaiting Review,enhancement,new,,2013-04-23T21:24:58Z,2013-04-23T21:24:58Z,Vimeo also supports URLs like http://player.vimeo.com/video/64213430 for its oEmbed endpoint. It would be nice if the core regex also handled these URLs.,danielbachhuber
24318,oEmbeds in feeds,,Embeds,trunk,normal,normal,Awaiting Review,enhancement,new,,2013-05-11T16:31:46Z,2013-05-13T19:06:43Z,"The [http://wordpress.org/news/2013/05/wordpress-3-6-beta-3/ latest blog post] on wordpress.org included links to a playlist on Rdio and Spotify. As per #24242 these are converted to oEmbeds.

When viewing this post in Google Reader, neither the Rdio or the Spotify embeds are displayed, presumably because they both use an iframe. This led to the paragraph above it not making a lot of sense (see screenshot).

Is it safe to assume that any oEmbed which uses an iframe will not be displayed in an RSS reader? I genuinely don't know the answer to this as I only use Google Reader (not for much longer of course).

Should we implement a fallback (ie. just display the link as-is) in the RSS feed if the oEmbed uses an iframe?",johnbillion
22346,Add Videojug.com to internal whitelist,,Embeds,3.4.2,normal,normal,Awaiting Review,feature request,new,has-patch,2012-11-02T15:30:50Z,2012-11-05T10:48:00Z,"Dear Wordpress,

I am writing on behalf of Videojug. We create and distribute hiqh quality ""How-To"" online content, and have been producing professional, instructional, short-form video content since 2006. We receive many requests monthly from our Contributors and Users asking for assistance in embedding our videos in their Wordpress sites. Currently it is a convoluted process involving plugins adding complexities.  

Other video providers in our sector are already whitelisted. We would like to be added please to your internal whitelist, allowing any Wordpress blogger to embed our videos by copying the URL just like they would when embedding a Youtube video. Our own embed code has been stable for a long time.

We have our oembeds working in the following wordpress account:
[http://chloeluper.co.uk/index.php/embed-test-page/]

This is the add oembed provider code:

{{{
wp_oembed_add_provider( '#http://(www\.)?videojug.com/(film|interview)/.*#i', 'http://www.videojug.com/oembed.{format}', true );
}}}

I have attached the modified default theme.

Thank you
Imad Salhi
 ",Videojug
23622,Support Google Maps / Docs / Spreadsheet embeds,,Embeds,,normal,normal,Awaiting Review,feature request,new,,2013-02-26T06:08:17Z,2013-05-20T18:54:44Z,"Google Maps and Drive (docs, spreadhseets, and presentations) all can do embeds, but don't support oEmbed. Still, I think they're big enough for the core to have support for natively. We already have Google Video support, and it's pretty much dead now.

Initial patch attached. 

- To get a Maps URL, view a Google Map, then select the ""Link"" icon in the left menu bar, top-right corner.
- To get a docs/sheet/presentation URL, open the item, select ""File->Publish To Web. Once it's published and visible to the web, the dialog will give a link for you to copy/paste.

This uses the normal embed handler, meaning that either the [embed] shortcode or just pasting the URL on a line by itself will trigger the embed. Width and height parameters are supported, and Presentations has special parameters to allow full-screen viewing.
",Otto42
23431,[embed] shortcode doesn't work with do_shortcode(),,Embeds,3.5,normal,normal,Awaiting Review,feature request,new,has-patch,2013-02-09T15:05:02Z,2013-02-10T15:35:37Z,"It would be preferable to use the [embed] shortcode through do_shortcode rather than apply_filters( 'the_content',... in order to avoid sharing plugins, related posts plugins etc appending content to something that could simple be post meta, i.e. looking to convert a youtube url to a video.",jtsternberg
20903,Exporter gets stuck in a loop a loop/break in the category hierarchy,westi,Export,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2012-06-11T11:26:07Z,2012-06-12T08:13:02Z,"Ideally it should be impossible for a loop/incorrect parentage in a category hierarchy to exist.

But sometimes they do.

If one does exist then {{{export_wp()}}} gets stuck :(

It gets stuck in this code:

{{{
		// put categories in order with no child going before its parent
		while ( $cat = array_shift( $categories ) ) {
			if ( $cat->parent == 0 || isset( $cats[$cat->parent] ) )
				$cats[$cat->term_id] = $cat;
			else
				$categories[] = $cat;
		}
}}}

Similar to #20635 but different.",westi
14584,HTML entities in category and tag elements,,Export,3.0.1,normal,normal,Awaiting Review,defect (bug),new,,2010-08-11T05:47:13Z,2010-08-11T05:47:13Z,"The script wp-admin/includes/export.php creates CDATA blocks for category and tag data which contain HTML entities. Normally, these characters should appear un-encoded in the CDATA blocks, see #4321.

I suspect this problem may have been considered at some point, but currently the line in question is commented out : http://core.trac.wordpress.org/browser/trunk/wp-admin/includes/export.php?rev=9148#L102

The solution, I think, would be to replace that comment with html_entity_decode($str) ",lavamind
8470,Large exports break frequently,tott,Export,,normal,normal,Future Release,defect (bug),new,reporter-feedback,2008-12-03T13:51:37Z,2009-11-18T21:21:54Z,"For large wordpress exports frequently the download stops at some point.

This effect seems to be due to bad memory utilization on slow downloads where the content cannot be flushed fast enough to the browser.

Attached patch includes various improvements in content flushing, and for cleaning of variables in order to save some memory.",tott
22279,Wordpress Export/Import deletes carriage returns,,Export,3.4.2,normal,major,Awaiting Review,defect (bug),new,,2012-10-25T20:02:42Z,2012-10-25T20:02:42Z,"Wordpress export does not translate or escape bare CR characters in a CR/LF pair.  They show up unfiltered in the WXR export file.  I see this both in post_content and in strings that were serialized into a post_meta field.  The CR characters are in the WXR file, unfiltered.

Then, Wordpress import loses these CR characters.  They are simply erased.  It may be because SimpleXMLParser can't or won't open the XML file in binary mode, so line ending translation can & does happen.  That's just a theory, but if it's true then this behavior might *not* happen on all platforms or with all PHP versions.  (I'm seeing this on OS X 10.6.8, PHP 5.4.4.)

In the worse case -- mine -- the munged string is a small component of a complex datastructure that is serialized in a postmeta record.  In this case, the entire meta_value field is deleted on import, because the data won't unserialize, because its length has changed.

It seems to me that WP Export should escape any character that might be threatened in transit.  I'm no XML lawyer, but some sources claim that unescaped CR characters are invalid XML.

To reproduce: 

* store a carriage return in a post.  
* export it to a WXR file.
* examine the WXR file for the raw carriage return (^M).
* import that file.
* search for the carriage return.",mykle
7813,export function does not preserve encoding,tott,Export,2.7,normal,minor,Future Release,defect (bug),new,,2008-09-30T20:07:25Z,2009-11-24T15:54:10Z,"when exporting strings are always converted to utf-8 while header and encoding is set to encoding used in blog.

this causes trouble when importing later.",tott
19864,Abstract export_wp() for use by CLI scripts,,Export,3.3.1,normal,normal,Awaiting Review,enhancement,reopened,,2012-01-20T18:16:17Z,2012-05-20T04:15:19Z,"Need to be able to execute an export from the PHP CLI for the purpose of running cron / maintenance scripts that write out exports.

This would include writing additional hooks that allow the arguments to be pulled from the cli as well as hooks that allow the output to redirected from the output buffer to a file.

Related ticket: #19863, extra hooks for manipulating content and arguments of an export",scottconnerly
22435,Export API,,Export,,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2012-11-13T16:41:55Z,2013-02-19T07:22:45Z,"From experience and from tickets (#19864, #19307, #17379) it's evident that we need to update the export API.

High level goals:
 * To be usable from different parts of the code. From the web backend, from a CLI script, from an async job.
 * To allow more control of the output format – serve over HTTP, write a single XML file to disk, split it and write many smaller XML files, write a big zip with many XML files, etc.
 * To allow exporting the data without querying all the posts at once, so that we can fit the exports to memory.
 * Keep {{{export_wp()}}} for backwards compatibility without the need to keep all (even any) of its code.

Here's my idea for the part of the API 99% of the developers touching export would use and be happy:

{{{
#!php
<?php
// WP_WXR_Export is an aimmutable representing all the data needed for the export and allows us to have it in multiple formats
$export = new WP_WXR_Export( array( 'start_date' => '2011-10-10', 'post_type' => 'event', … ) );

backup( $export->get_xml() ); // string

$export->export_to_xml_file( 'mom.xml' );
send_to_mom_to_import( 'mom.xml');

$export->serve_xml(); // with all the headers and stuff

$export->export_to_xml_files( '/files/exports-for-my-awesome-website/', 'export-%02d.wxr.xml', 5 * MB_IN_BYTES );
}}}

Before I dive into implementation details (in the comments, not to pollute the ticket), I'd like to hear what use cases for extending this code you have in mind and where should we draw the line. Adding more output writers? Adding custom export data? Adding formats different from WXR?




",nbachiyski
19307,"Need ability to export ""All content"" but limited to date range",,Export,3.1,normal,normal,Future Release,enhancement,new,early,2011-11-20T23:19:43Z,2012-07-11T07:39:18Z,"Need ability to export ""All content"" but limited to date range

==== ENV ====

 WP 3.3-beta3-19254 (trunk r19367)

==== Additional Details ====

For a larger site is a common scenario to need to export all content, but because of resource limitations or time constraints it cannot be done in a single export.

Exporting individual post types is not a work around, further you lose attachments on posts when exporting just ""posts"", and that breaks features including Featured Images.

==== Also Consider ====

Another common scenario for media and enterprise customer is wanting to export a period of time to further analysis that content, or stage it in their development environment for debugging an issue, or developing new designs and features.",lloydbudd
20206,WXR unnecessarily includes all post authors,,Export,3.3,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-03-09T01:06:58Z,2012-03-09T02:26:14Z,"If you're exporting just one post type (from Tools -> Export), the resulting WXR file still includes all authors from the posts table, regardless if they are the author of a post of the post type being exported. This can be particularly noticable for Pages (which are often only authored by a small number of different users on the site) and for custom post types.

This means when you subsequently import the file you'll be asked to map a complete list of all authors from the exported site, even if they have no posts in the WXR file being imported.",johnbillion
14757,users with no posts are not exported,,Export,3.0.1,normal,normal,Awaiting Review,enhancement,reopened,dev-feedback,2010-09-01T18:14:31Z,2011-04-02T19:49:19Z,"I just exported a large standalone site and imported into a multisite setup, and I discovered that a number of users who hadn't yet posted anything didn't get moved to the new site.",sillybean
17379,Filtered exports drop attachments and featured images,,Export,3.0,normal,normal,Awaiting Review,feature request,new,has-patch,2011-05-11T18:37:31Z,2013-01-29T06:46:59Z,"When using Tools>Export, targeting a specific author, the resulting XML file does not contain a reference/link to any Featured Image (thumbnail) associated with these posts.

On the other hand, Tools>Export ""all content"" (including all authors) produces an XML file that does contain reference/link to Featured Image.

Request: Have Tools>Export ""specific author"" generate the same metadata as the ""all content"" export, so that Export ""specific author"" will also include metadata reference to the Featured Image.

Many people (including myself) use ""specific author"" as a way to export some, but not all, posts. Full metadata would really help. Thanks.",billseymour
22014,"$arg was undefined, added it as optional param",,External Libraries,2.5,normal,trivial,Awaiting Review,defect (bug),new,,2012-09-27T09:40:45Z,2012-09-27T09:56:35Z,"The variable $arg was not defined, so I added it as an extra parameter.

wp-admin/includes/class-ftp.php 
function nlist

Patch here :
https://github.com/h4ck3rm1k3/WordPress/commit/1bb897fc0e20de43122a468d1dae85ad2ad33c37",h4ck3rm1k3
22492,Duplicate MIME-Version header,,External Libraries,3.4.2,normal,minor,Awaiting Review,defect (bug),new,,2012-11-18T03:16:33Z,2012-11-18T10:46:26Z,"In certain cases, Wordpress sends emails containing two ""MIME-Version"" headers. This causes email rejections from some Amazon SES SMTP servers in particular.

To reliably reproduce, a default multisite install with BuddyPress can be used. When a user tries to register and create a website, the activation email contains this bug. Unfortunately I don't know how to reproduce this error with Wordpress itself, but I believe this bug is related to the Wordpress core. If any plugin happens to set a custom header of ""MIME-Version"" to an email message, Wordpress core is the culprit for the insertion of the duplicate mail header.

Patch attached to this report, it's a trivial fix. All the fix does is checks to see if ""MIME-Version"" was already included in custom mail headers, and if so, don't insert the duplicate header.",ryderlewis
14888,PHPMailer class uses wrong/no sender for mail envelope,,External Libraries,3.0,normal,normal,Future Release,defect (bug),new,close,2010-09-17T07:50:38Z,2013-02-07T01:53:01Z,"As an result following SMTP envelope and ""Return-Path"" email address can occur:

{{{apache@localhost.localdomain}}}

This will lead some mail servers to reject mails because of the not valid fqdn ""localhost.localdomain"".

Correctly the defined FROM address should be used, usually:

{{{'wordpress@'.$_SERVER['SERVER_NAME']}}}

In PHPMailer::CreateHeader() it is checked for

{{{if($this->Sender == '')}}}

The following will set the ""Return-Path"" in the mail headers, but NOT the envelope email address used in the SMTP handshake:

{{{$result .= $this->HeaderLine('Return-Path', trim($this->From));}}}

I fixed it by adding the following line after the mentioned one, setting the ""Return-Path"" in the mail header:
{{{$this->Sender = $this->From;}}}

So my condition looks like:
{{{
    if($this->Sender == '') {
      $result .= $this->HeaderLine('Return-Path', trim($this->From));
      $this->Sender = $this->From;
    } else {
      $result .= $this->HeaderLine('Return-Path', trim($this->Sender));
    }
}}}",gkusardi
23364,Unstable sorting with jQuery UI 1.9.1 and above,,External Libraries,3.5,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2013-02-02T03:07:18Z,2013-02-02T03:09:35Z,"There seems to be an issue with jQuery UI (sortable) 1.9.1 and above that affects (rather severely) sorting of elements inside sortable source and target containers. I haven't seen this affect core, but since WP has been shipping with one of the affected versions (1.9.2) since 3.5, I'm worried about potential repercussions on WP theemes, plugins or projects relying on this script. For instance, Ultimate Tinymce, by Josh Lobe and myself (recently), has been affected by this.[[BR]]
[http://elblawg.com/jqueryui-test/ Here] is a testing platform I created on my server about the problem. Choosing any version of UI newer than 1.9.0 will result in said behavior.[[BR]]
[http://bugs.jqueryui.com/ticket/9041 Here] is the ticket I submitted to jquery UI Trac and [https://github.com/MarventusWP/jquery-ui/commits/master here] the Commits to their github project.[[BR]]
Finally, as recommended by Andrew Nacin on the wp-forums list, [http://jsfiddle.net/Marventus/THwqS/1/ here] is a JSFiddle that reproduces the problem.[[BR]]
I am not really sure what to do about this, but I thought I should leave it on record just in case.
Thanks!",Marventus
18521,Wp_mail function: email subject with multibyte chars is not encoded properly,,External Libraries,3.2.1,normal,major,Awaiting Review,defect (bug),new,,2011-08-26T08:51:11Z,2011-08-27T00:51:21Z,"'''Problem:'''
When an email with multibyte characters (like Swedish é, å, etc.) in the subject is sent from Wordpress (using wp_mail), the subject of the email at the reciever end looks like this: =?UTF-8?Q?New_site_name_Site:_J=C3=A9t_inqsfzxb_p=C3=A5_?= =?UTF-8?Q?=C3=A9?=

'''Reproduce:'''
Create the new blog with a multibyte char in the blog title and then activate it.
For example: go to /wp-content/wp-signup.php and create a new user. After that you will be asked to create a new blog. Create one and put some é and å characters in the blog title. After that you will recieve the first email (which should be ok), asking to activate the account. Activate it, then you will get the second email with the screwed subject.

'''Reason:'''
The reason is phpmailer class which double-encodes the email subject (only when sending mail using php mail() function though). The problem in these lines (wp-includes/class-phpmailer.php, taken from WP 3.2.1):
(lines 657, 663, 671, 677)
$rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
$rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
$rt = @mail($val, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header, $params);
$rt = @mail($to, $this->EncodeHeader($this->SecureHeader($this->Subject)), $body, $header);
The subject is first encoded with EncodeHeader function, and after that encoded again by mail() function itself.

'''Fix suggestion:'''
Since mail() function does proper encoding of subject, we don't need to encode it ourselves. So those lines should be replaced by:
$rt = @mail($val, $this->Subject, $body, $header, $params);
$rt = @mail($to, $this->Subject, $body, $header, $params);
$rt = @mail($val, $this->Subject, $body, $header, $params);
$rt = @mail($to, $this->Subject, $body, $header);
I've tried this on my server, and it works well.

'''Conclusion:'''
Hope it will be fixed and included in the release soon. Although, i've found the good enough temporarily solution overloading wp_mail() with a plugin, but still would be nice to see the solution in the wordpress core.",jetpackpony
18792,Wrong FROM email when using wp_mail and built in mail() function,westi*,External Libraries,3.2.1,normal,normal,Awaiting Review,defect (bug),accepted,has-patch,2011-09-27T16:35:28Z,2012-05-04T14:43:56Z,"When using wp_mail in combination with mail() function, then From: envelope passed through -f parameter to sendmail is not set correctly.

Here is simple patch, that fixes the problem:

{{{
--- pluggable.php	2011-09-26 20:54:02.219330702 +0200
+++ pluggable.fixed.php	2011-09-27 18:19:21.283454810 +0200
@@ -394,8 +394,7 @@
 	}
 
 	// Plugin authors can override the potentially troublesome default
-	$phpmailer->From     = apply_filters( 'wp_mail_from'     , $from_email );
-	$phpmailer->FromName = apply_filters( 'wp_mail_from_name', $from_name  );
+	$phpmailer->SetFrom(apply_filters('wp_mail_from', $from_email),apply_filters('wp_mail_from_name', $from_name));
 
 	// Set destination addresses
 	if ( !is_array( $to ) )
}}}
",pigster
16963,wp_enqueue_script bug in ie8,,External Libraries,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-03-24T20:30:33Z,2011-03-28T19:41:42Z,"In IE 8, if you enqueue jQuery and scriptaculous, the prototype library will be included before jQuery. Because of this, jQuery will overwrite the $ method, and even though it runs noConflict() the variable is broken for both libraries. WP should be aware of this and sort the libraries for this situation. (jQuery should be first, then prototype)

Tested on WP 3.1 in IE 8 build 8.0.7601.17514",jkmassel
24132,Add jQuery 2.0 to available scripts to enqueue,,External Libraries,trunk,normal,normal,Awaiting Review,enhancement,new,,2013-04-18T23:09:24Z,2013-04-22T07:02:25Z,"jQuery 2.0 was released, and is a major release, more than previous ones. the 2.0 branch removes support for IE8 and down. Personally, I think it'd be best to add it alongside jQuery 1.9.x instead of outright replace. That way people who want to use the 2.0 branch can, but those who need legacy IE support still, can still use 1.9.x.

My thoughts were for a new enqueue handle of 'jquery2'.",tw2113
18909,Bundled jQuery UI should have CSS,,External Libraries,3.3,normal,normal,Future Release,enhancement,assigned,has-patch,2011-10-11T18:53:57Z,2013-05-13T16:14:29Z,"Now that all of jQuery UI is in core, matching CSS should also be included for use in the admin in both color schemes.

Related: #17952",helen
21769,Can we remove un-minified versions of all external libraries?,,External Libraries,3.5,normal,normal,Future Release,enhancement,new,dev-feedback,2012-09-02T09:32:35Z,2012-10-24T20:50:12Z,"With [21646] and [21648] we had removed the un-minified versions of Jcrop and jQuery Color.

A quick search through the plugin repo shows that there is only one plugin which includes the script directly:

Pie Register: http://plugins.trac.wordpress.org/browser/pie-register/trunk/pie-register.php#L1444

Should we be consistent and remove the un-minified versions of other external libraries too? These would be:

* colorpicker.js
* hoverIntent.js
* jquery.imgareaselect.js
* cropper.js (not used in core anymore and no minified version exists)
* json2.js
* tw-sack.js",ocean90
19489,Consider updating jquery.hotkeys plugin,,External Libraries,3.3,normal,normal,Future Release,enhancement,reopened,,2011-12-09T18:50:05Z,2013-01-22T19:40:32Z,"The current version of the jquery.hotkeys plugin in trunk is ""(beta)(0.0.3)"", where as the [https://github.com/tzuryby/jquery.hotkeys/blob/master/jquery.hotkeys.js latest version] (as linked to from the credits screen) is 0.8.

Incidentally, this 0.8 version from tzuryby is credited as being authored by John Resig (and indeed, he appears to have his own [https://github.com/jeresig/jquery.hotkeys repo] for it.",GaryJ
19449,"Fix Farbtastic to make it work with empty input fields, too",,External Libraries,3.3,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2011-12-05T17:38:08Z,2011-12-05T17:38:08Z,"Farbtastic requires that the color input field has either a color value or at least a '#' character. If it's empty it won't work. This seems like an artificial limitation and requires workarounds if the integrated Farbtastic is used for input fields that may be empty, i.e. for theme or plugin options where the color is optional. If the color fields has a default value there's no issue but having empty color fields is a useful and valid use case. 

This could be fixed in /wp-admin/js/farbtastic.js, line 192

Old:
if (this.value && this.value != fb.color) {

New:
if (this.value != fb.color) {


Looks like WP is working around this for the 'custom background' for themes (which is empty by default) by adding a hardcoded '#' and saving the background-color without '#' 

/wp-includes/theme.php, line 1772:
$style = $color ? ""background-color: #$color;"" : '';

/wp-admin/custom-background.php, line 303:
<input type=""text"" name=""background-color"" id=""background-color"" value=""#<?php echo esc_attr(get_background_color()) ?>"" />

",BytesForAll
19719,PHPMailer allows invalid characters in display-name,westi,External Libraries,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-01-03T16:06:27Z,2012-01-03T16:06:27Z,"[http://tools.ietf.org/html/rfc5322 RFC5322] defines the display name portion of an email address as follows:

{{{
display-name => phrase
phrase => word / obs-phrase
obs-phrase => word / whitespace / dot
word => atom / quoted strings
atom => whitespace / atext
atext => 

                       ALPHA / DIGIT /    ; Printable US-ASCII
                       ""!"" / ""#"" /        ;  characters not including
                       ""$"" / ""%"" /        ;  specials.  Used for atoms.
                       ""&"" / ""'"" /
                       ""*"" / ""+"" /
                       ""-"" / ""/"" /
                       ""="" / ""?"" /
                       ""^"" / ""_"" /
                       ""`"" / ""{"" /
                       ""|"" / ""}"" /
                       ""~""
}}}

So, the display-name can contain the list of characters defined as atext plus dots plus whitespace plus quoted stringss.

Notable exclusions include things like >, <, ( and ). At present, PHPMailer does no validation of the display-name field. The attached patch adds validation that does the following:

* Make sure we decode any utf8 characters
* Compare the original value against a value with invalid characters stripped out
* Fail validation if the original and the stripped version do not match (ie, we stripped something invalid, so the string must have been invalid)

The patch does not handle assuring proper pairing of quoted strings (it doesn't validate that quotes nest properly or occur only in pairs).

The following code works for testing the patch:

{{{
<?php

require_once 'class-phpmailer.php';
require_once 'class-smtp.php';

$to_address = 'dllh@mailinator.com';
$to_name = 'DLLH';
$from_address = 'dllh@mailinator.com';
$from_name = 'DLLH test';
$subject = 'PHPMailer display-name validation test';
$body = ""To Address: $to_address\nTo Name: $to_name\nFrom Address: $from_address\nFrom Name: $from_name"";

try {
        $phpmailer = new PHPMailer( true );
        $phpmailer->AddAddress( $to_address, $to_name );
        $phpmailer->SetFrom( $from_address, $from_name );
        $phpmailer->Subject = $subject;
        $phpmailer->Body = $body;
        $phpmailer->Send();
} catch ( phpmailerException $e ) {
        print_r( $e->getMessage() );
}
}}}

To provoke an error, add a disallowed character such as > or ) to one of the _name variables. The code will bail with an invalid_display_name exception.",dllh
19549,Please remove X-Mailer from class-phpmailer,westi,External Libraries,3.3,normal,minor,Future Release,enhancement,assigned,dev-feedback,2011-12-14T20:37:14Z,2012-06-02T13:32:25Z,"It is nobody's business what software I am using to send mail, or what version number it is. Providing version numbers of server-side packages to strangers is an unnecessary security exposure.  With each update to WordPress, I apply this patch.  I would appreciate it if you would either include this patch yourselves, or provide a hook where I can do this myself without modifying the source.


{{{
--- wp-includes/class-phpmailer.php	5 Jul 2011 20:53:19 -0000	1.3
+++ wp-includes/class-phpmailer.php	14 Dec 2011 19:43:32 -0000
@@ -1129,8 +1129,8 @@
     } else {
       $result .= sprintf(""Message-ID: <%s@%s>%s"", $uniq_id, $this->ServerHostname(), $this->LE);
     }
-// jwz: no.    $result .= $this->HeaderLine('X-Priority', $this->Priority);
-// jwz: no.    $result .= $this->HeaderLine('X-Mailer', 'PHPMailer (phpmailer.sourceforge.net) [version ' . $this->Version . ']');
+    $result .= $this->HeaderLine('X-Priority', $this->Priority);
+    $result .= $this->HeaderLine('X-Mailer', 'PHPMailer '.$this->Version.' (phpmailer.sourceforge.net)');
 
     if($this->ConfirmReadingTo != '') {
       $result .= $this->HeaderLine('Disposition-Notification-To', '<' . trim($this->ConfirmReadingTo) . '>');

}}}",jwz
16494,"Remove ""no conflict"" mode from bundled jquery",,External Libraries,3.1,low,minor,Awaiting Review,enhancement,new,close,2011-02-08T18:45:49Z,2012-07-14T11:04:26Z,"Remove ""no conflict"" mode from jquery

Over the last six months more and more of the themes I review for large sites have being using Google's CDN version of jquery (deregistering the bundled), not to get the benefit of CDN, but because most jquery libraries are dependent on $ and the developers don't know or want to deal with getting them to work in ""no conflict"".

I image we originally put in place ""no conflict"" mode for bundled jquery, as part of the transition from Prototype.

I appreciate it is hard to measure the impact of this type of change, but wanted to trac this all the same.

=== Additional Info ===

http://codex.wordpress.org/Function_Reference/wp_enqueue_script#jQuery_noConflict_wrappers

http://docs.jquery.com/Using_jQuery_with_Other_Libraries",lloydbudd
10955,Replace ThickBox,,External Libraries,2.9,normal,normal,Future Release,enhancement,new,dev-feedback,2009-10-14T14:37:42Z,2013-02-01T15:59:30Z,"Have you thought about replacing ThickBox?  It is no longer under development (as their site says) and it doesn't conform to standard jQuery plugin practices.  For example, I'm trying to use it for a plugin of mine and I'm wanting to tie into the ""onClose"" event for ThickBox which isn't too easily done.  I know I could just include one of the other plugins, like colorbox, with my plugin but I think it'd be a great service to other developers if you included a more flexible library.


(I would have assigned this to 3.0+ but the option isn't available.)",aaron_guitar
16668,SWFUpload 2.2.1,,External Libraries,,normal,minor,Awaiting Review,enhancement,new,has-patch,2011-02-25T20:38:07Z,2011-09-19T15:24:55Z,"Update SWFUpload to version ""2.2.1 2009-03-30"" from ""2.2.0 2009-03-25.""

Changes how settings are passed to functions, using function scope instead of object scope. Looks like some other code simplification during those five days.

[http://code.google.com/p/swfupload/source/browse/swfupload/trunk/core/ SWFUpload repo]

Updates the SWF as well. Looks like an ExternalInterface change based on project commits.

Files swfupload-all.js and handlers.js left as is since they are not part of the external repo. If swfupload-all.js is a rollup it should obviously be updated.",niallkennedy
16026,Stop using ereg() and eregi(),NorwayFun,External Libraries,,normal,minor,Future Release,enhancement,new,has-patch,2010-12-29T16:48:39Z,2011-04-23T23:59:46Z,"see attached file. ereg(), eregi() and so on deprecated functions was replaced by mb_ suffix ones. also, checker for set_magic_quotes_runtime
disabler for 5.2 and 5.3 series PHP included",NorwayFun
23944,Update to latest jquery.form,,External Libraries,trunk,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-04-04T21:16:51Z,2013-04-04T21:37:17Z,"Any chance of getting the included jquery.form update to the latest version?  We keep running into various script errors (mostly access) within jquery.form with IE.  Updating to the latest jquery.form corrects these errors.

WP using version 2.73 and the latest is 3.32

Thanks for consideration...",usermrpapa
19419,wp-admin/media.php: allow to add a default src,,External Libraries,3.2.1,normal,normal,Awaiting Review,enhancement,new,,2011-12-02T21:15:34Z,2011-12-22T23:01:36Z,"something like 

in file wp-admin/media.php :

function type_url_form_image($image_url) { 
  
    .
    .
    .
    <input id=""src"" name=""src"" value=""'.$image_url.'"" type=""text"" 
    .
    .
    .

    }

might be helpful because the function can be reused for plugins",mostyk
16747,'feedtype_enclosure' hooks not triggered without custom field,,Feeds,3.1,normal,trivial,Awaiting Review,defect (bug),new,has-patch,2011-03-04T13:42:07Z,2011-03-04T15:48:25Z,"file: '''wp-includes/feed.php''', functions: '''atom_enclosure()''' and '''rss_enclosure()'''

If a ""enclosure"" custom field is not provided, the ''atom_enclosure'' and ''rss_enclosure'' filters are never triggered (because they're inside an if statement).

Wouldn't it make sense to replace this  ...
{{{
function atom_enclosure() {
	if ( post_password_required() )
		return;

	foreach ( (array) get_post_custom() as $key => $val ) {
		if ($key == 'enclosure') {
			foreach ( (array) $val as $enc ) {
				$enclosure = split(""\n"", $enc);
				echo apply_filters('atom_enclosure', '<link href=""' . trim(htmlspecialchars($enclosure[0])) . '"" rel=""enclosure"" length=""' . trim($enclosure[1]) . '"" type=""' . trim($enclosure[2]) . '"" />' . ""\n"");
			}
		}
	}
}
}}}

... with this ...
{{{
function atom_enclosure() {
	if ( post_password_required() )
		return;

	$output = '';
	foreach ( (array) get_post_custom() as $key => $val ) {
		if ($key == 'enclosure') {
			foreach ( (array) $val as $enc ) {
				$enclosure = split(""\n"", $enc);
				$output = '<link href=""' . trim(htmlspecialchars($enclosure[0])) . '"" rel=""enclosure"" length=""' . trim($enclosure[1]) . '"" type=""' . trim($enclosure[2]) . '"" />' . '\n';
			}
		}
	}
	echo apply_filters('atom_enclosure',$output);
}
}}}

... so that those functions can be hooked via plugins, even if the custom field doesn't exist?

''In my particular case, I wanted to use a different--already existing--custom field name to pull the url from, but I couldn't hook '''atom_enclosure()''' because '''apply_filters()''' is only triggered if the ""enclosure"" custom field name exists.''",tcloninger
17767,Anonymous comments can break comments RSS feed,westi*,Feeds,3.2,normal,normal,Future Release,defect (bug),accepted,has-patch,2011-06-11T11:30:34Z,2013-05-20T12:00:48Z,"dc:creator and description elements should not be parsed.

Author field that can break RSS:
{{{
&#1040;&#1079; &#1089;&#1077; &#1082;&#1072;&#1079;&#1074;&#1072;&#1084; &#1042;&#1077;&#1089;&#1077;&#1083;&#1080;&#1085; &#1053;&#1080;&#1082;&#1086;&#1083;&#1086;&#1074;, &#1090;&#1086;&#1074;&#1072; &#1077; &#1077;&#1076;&#1085;&#1086; &#1084;&#1085;&#1086;&#1075;&#1086; &#1076;&#1098;&#1083;&#1075;&#1086; &#1080;&#1084;&#1077;
}}}

Comment text that can break RSS:
{{{
&amp;ndash;
}}} 

(and most of the $allowedentitynames)",dzver
14363,Atom feed is broken when WordPress is served as application/xhtml+xml,,Feeds,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-07-20T14:57:52Z,2011-05-10T18:54:37Z,"Atom feed is broken when WordPress is served as application/xhtml+xml because of the difference in html_type_rss().

The patch attached also deprecates the_excerpt_rss() with a new function called 'the_excerpt_feed'.",peaceablewhale
22028,Comments feed,,Feeds,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-09-28T00:29:04Z,2012-09-28T08:04:24Z,"The problem I have noticed is with the comments feed however I think that this can happen with any of the other feeds.

When there are no comments accessing somedomain.com/comments/feed will cause a 404 error message in some browsers and in others just a blank screen, no errors whatsoever are generated which makes it very hard to figure out what the underlying cause is.

I would suggest providing a message that clearly states the lack of comments instead of a 404 error message or blank page, I think this same problem applies to all other feeds except it is clearly not noticeable as posts are the first things that are created after a clean install but comments can sometimes take longer or may not even happen however the comments feed url is added in the head of the document causing the site to have a broken link.",tlacaelelrl
15610,Comments on attachments don't appear in site-wide comments RSS feed,,Feeds,3.1,normal,minor,Future Release,defect (bug),new,,2010-11-29T21:05:37Z,2010-12-11T14:00:22Z,"Tested against r16950.

Comments that are entered against an attachment do not appear in the site-wide comments RSS feed (e.g., http://sitename.com/comments/feed/).

To test:

 1. Add an attachment of any kind (usually image), then View the attachment.
 2. Post a comment on the attachment page.
 3. Check the site's comments RSS feed - the comment will not appear.",markel
11060,Content-Type of XML feeds is misstated as 'text/html',dd32,Feeds,2.8.6,normal,normal,Future Release,defect (bug),new,has-patch,2009-11-02T01:56:40Z,2010-02-05T13:22:33Z,"I access blog XML feeds via a caching proxy (squid).  The Content-Type in the HTTP response headers is initially reported correctly as 'text/xml', but when a subsequent request is made and the object is stale, wordpress sometimes returns a '304 Not Modified', but also incorrectly re-characterizes the Content-Type as 'text/html'.  Example:

{{{
HTTP/1.0 304 Not Modified
X-Pingback: http://wordpress.org/development/xmlrpc.php
Last-Modified: Sat, 31 Oct 2009 21:28:00 GMT
ETag: ""a4aa82a49dbe294617210eb367fa0997""
Content-type: text/html
Date: Mon, 02 Nov 2009 01:25:17 GMT
Server: LiteSpeed
Connection: close
}}}
I've seen this on 'wordpress.org/development/feed' (LiteSpeed), on a wordpress.com hosted blog (nginx), and on an independent site running wordpress (Apache).
",celejar0
21225,Dashboard Incoming Links - Google blogsearch fails when get_option( 'home') is not a TLD,,Feeds,2.5,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2012-07-12T02:47:09Z,2012-07-12T04:23:56Z,"When WordPress gets installed and the first time a user visits the dashboard the dashboard_widget_options get set for dashboard_incoming_links.  The Google blogsearch link gets set based on your settings for wp_home.  If your developing on a local machine most likely wp_home is not a true TLD.

Google blogsearch incorrectly returns incoming links when the site: url is not a true TLD.  For example I'll use an install where wp_home is set to http://wp.patch.  The link that gets formed is:

http://blogsearch.google.com/blogsearch_feeds?scoring=d&ie=utf-8&num=10&output=rss&partner=wordpress&q=link:http://wp.patch/

If you visit that link you will notice that results are getting returned just using the ""patch"" keyword.

If the sited gets moved to live production you will continue to get the incorrect incoming links unless the dashboard_widget_options get manually changed or deleted.

Also to note is that the Google blogsearch API has been deprecated:  https://developers.google.com/blog-search/

My suggestion is to remove the widget or hide it by default in screen options like we did for some of the stuff in post.php.

Another option is to do a check and return WP_Error if wp_home is not a TLD before setting the dashboard widget options.",c3mdigital
10511,Enclosure Custom Fields are automatically deleted,,Feeds,2.8,high,major,Future Release,defect (bug),reopened,has-patch,2009-07-29T14:20:16Z,2012-02-02T16:36:06Z,"This bug was introduced by Ticket [http://core.trac.wordpress.org/ticket/6840 6840].  I and many other people only wanted specific fields added as an enclosure (like media files for podcasting) and have added those enclosures as custom fields.  Now any time we edit those hundreds of posts, or create a new post, those custom fields are deleted by this ""bug fix"" and there is no way around it without changing code in the functions.php file and then having to redo it anytime an update comes out.

Was there no thought put into the great idea of ""let's delete any enclosure field that doesn't have a link in the body of a post""?  Wasn't the whole idea of custom fields originally for things like enclosures?",animepulse
21753,Feed excerpts are missing important filter formatting,,Feeds,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-31T14:20:56Z,2012-08-31T14:20:56Z,"Excerpts included in feeds are missing important formatting because the relevant filters are not applied (e.g. wpautop).

In file wp-includes/feed.php, function the_excerpt_rss() does not apply the same filters as the_excerpt() whilst results in lost formatting instructions.  By comparison, function the_content_feed() ensures that the same filters declared for the_content() are applied.

A suggested patch is attached. Note that for symmetry between the_excerpt_rss() and the_content_feed() this patch also removes the (unnecessary?) filter ent2ncr() from the_excerpt_rss() and retains the (controversial?) escaping for CDATA blocks (see #3670).

A few related issues are worth mentioning. Firstly, shortcodes are still not applied to excerpts (see #7093). Also, the (obsolete?) RDF feed does not make use of a CDATA block unlike those for RSS, RSS2 and Atom (see #20888). Finally, a similar problem occurs with comment text in feeds (see #16466).",mdgl
19885,Feed wfw Namespace no longer valid,,Feeds,3.3.1,normal,normal,Awaiting Review,defect (bug),new,close,2012-01-24T16:00:06Z,2012-01-31T07:45:00Z,"Related to this post [http://wordpress.org/support/topic/rss-feed-wellformedweborg-offline?replies=2]

A broken link scan of our website revealed that the link in the feeds to http://wellformedweb.org/CommentAPI/ (for the wfw namespace) is invalid. Going to that website reveals that the site has been taken down by the hosting company.

I found 2 references to that namespace in /wp-includes/feed-rss2.php and /wp-admin/includes/export.php and removed them, and the instances to the wfw namespace within the feed content. This fixed my issue.

This begs the larger question: should this be removed/replaced in the core if the site that references the namespace is no longer available?

Verified here: [http://ww2.aaronwagner.net/feed/]",ajwagner777
19998,Feeds can contain characters that are not valid XML,,Feeds,3.3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-02-09T16:28:47Z,2013-02-12T03:11:21Z,"It is possible for any of the feeds to contain control characters which are not valid in XML e.g. http://www.fileformat.info/info/unicode/char/1c/index.htm

When outputting user supplied content in an XML context we should strip these control characters - they are unprintable and just break feed parsers.

http://en.wikipedia.org/wiki/Valid_characters_in_XML has a good list of what is and isn't valid.

I guess we need a {{{strip_for_xml()}}} function or something.",westi
22101,"Gallery shortcode with link=""file"" is not linking the file in the RSS feed",,Feeds,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-10-04T16:14:16Z,2012-10-27T15:58:55Z,"Hi,
In a WordPress site I'm currently developing I want to use the stock gallery shortcode. I use [gallery link=""file""] to link directly the image URL which, should fix Flipboard, Currents et al. showing just a little thumbnail. 

In the page the code is displayed properly and the a tag links the image file, but, on the RSS feed, it links to the attachment page. 

I've tested this in the latest nightly version 3.5-beta1-22104 and on the stable 3.4.2. I attach the output of the page and the feed. ",ifrins
10984,If content uses the nextpage tag then only the first page is shown in feeds,,Feeds,2.8.4,normal,normal,Future Release,defect (bug),new,dev-feedback,2009-10-20T11:03:11Z,2012-08-27T17:40:40Z,"If content uses the nextpage tag then only the first page is shown in feeds if the ""full text"" option is selected in ""Settings > Reading > Show Full Text (in feed)"". 

No links are displayed to read the full content and no indication is given in the feed that it isn't the full content.

I think the behaviour should be to ignore pagination in feeds which are set to ""full text"".

I have attached a patch which alters the behaviour of the_content() so that if it is used in the context of a feed it concatenates the pages to form the full content and returns that.",simonwheatley
13066,Last-Modified headers for individual comment feeds are incorrect,jgci*,Feeds,3.0,low,normal,Future Release,defect (bug),accepted,dev-feedback,2010-04-21T07:32:34Z,2010-11-28T16:18:31Z,"The WP::send_headers function currently uses get_lastcommentmodified() to set the Last-Modified header for all comment feeds. This is a problem when used for individual post comment feeds. The function gets the last modified comment across all blog posts. That means that every time a comment is posted anywhere, the Last-Modified header for ALL comment feeds is refreshed. Issues:

1. This is technically incorrect, since only the global comment feed and one specific post's comment feed have changed with the last comment (not all possible comment feeds); and 

2. It means that If-Modified-Since requests for other post comment feeds will not receive a 304 response when they should do (since their content hasn't changed). On blogs with many posts and many comment feeds, this will have a large impact on bandwidth because lots of requests will receive 200 responses where 304's would have done, just because a comment was posted on some other post.

If I've understood the flow correctly, $wp_query hasn't been fully set up at the time this function is called, so changing this behaviour would require some change in the flow of things (e.g., the handling of last modified headers for feeds moves into the do_feed() function). But doing so would mean that Last-Modified headers are correct/meaningful and that many more 304 responses can be served.

Any thoughts?",solarissmoke
19017,No way to add XSL to Feeds,,Feeds,3.2.1,normal,minor,Awaiting Review,defect (bug),new,has-patch,2011-10-20T16:50:31Z,2011-10-26T06:17:45Z,"To add XSL to a feed, for nicer display of feeds in browser, a line needs to be inserted before the root RSS tag.
For a plugin to add the correct code, there should be an action between `<?xml?> and `<rss>`
Perhaps something like `<?php do_action('rss2_xsl'); ?>` on line 12 of `feed-rss2.php`?",pathawks
10713,Output encoding not set in fetch_feed,,Feeds,2.8.4,low,normal,Future Release,defect (bug),new,dev-feedback,2009-09-01T15:56:15Z,2012-12-13T20:30:56Z,"If using WP Super Cache (or a similar plugin) on a blog with a non-UTF-8 charset that has an RSS widget then the charset is incorrectly changed to UTF-8 by SimplePie.

The fix is to explictly set the encoding in fetch_feed before SimplePie sends any headers (which it only does if WP Super Cache is being used, since it checks if any headers have already been sent).

{{{
*** live/wp-includes/feed.php      2009-05-25 11:13:48.000000000 +0200
--- dev/wp-includes/feed.php       2009-09-01 17:40:19.000000000 +0200
***************
*** 552,557 ****
--- 552,558 ----
        $feed->set_file_class('WP_SimplePie_File');
        $feed->set_cache_duration(apply_filters('wp_feed_cache_transient_lifetime', 43200));
        $feed->init();
+       $feed->set_output_encoding(get_option('blog_charset'));
        $feed->handle_content_type();
  
        if ( $feed->error() )
}}}

I've put this as low priority since I guess most blogs use UTF-8 and don't use WP Super Cache.",iansealy
17853,"Posts_per_page=-1 overwritten in query.php if is feed, (An ics feed needs all)",,Feeds,3.2,normal,normal,Awaiting Review,defect (bug),new,close,2011-06-20T03:58:29Z,2012-10-04T02:15:27Z,"Similar to [http://core.trac.wordpress.org/changeset/15852 15852], the posts_per_page argument to wp_query, is being overwritten in lines 1991 of query.php


{{{
if ( $this->is_feed ) {
    $q['posts_per_page'] = get_option('posts_per_rss');
}}}

In the case of an ics feed - ALL requested posts must be returned for a complete feed, so need to be able to pass posts_per_page=-1 as with other queries in the front end.

This is in wp 3.2 RC1 and earlier.

As far as I can make out, the only way around for now is to add a post_limits filter and remove the LIMIT in the query when it is a ics feed. (ie return empty string)

While the workaround works, it would make more sense of the post_per_page argument worked as in front end queries.

Possible workaround (use in custom feed function only)

{{{
...
	add_filter('post_limits', 'amr_remove_limits');
...
function amr_remove_limits () {
    return ('');   
// return an empty string so that NO limits are imposed in the query
}
}}}


",anmari
20888,RDF Feed validation problems.,,Feeds,3.3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-06-08T11:05:19Z,2012-06-08T11:05:19Z,"The RDF feed produced by feed-rdf.php produced validation errors due to description either not encoded correctly or not wrapped in CDATA tags.

To reproduce view a RDF feed: http://en.blog.wordpress.com/feed/rdf/

To see the validation errors: http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fen.blog.wordpress.com%2Ffeed%2Frdf%2F


Attached is a patch to fix this issue.

",hootbah
16544,RSS2 feeds are published as text/xml rather than application/rss+xml,,Feeds,3.0.5,normal,trivial,Awaiting Review,defect (bug),new,close,2011-02-12T21:25:45Z,2011-02-13T06:00:04Z,"It seems to me that there is a bug in feed-rss.php, feed-rss2.php and feed-rss2-comments.php

All files have the following header

header('Content-Type: ' . feed_content_type('rss-http') . '; charset=' . get_option('blog_charset'), true);

Which seems to publish the feed as text/xml rather than application/rss+xml which I believe it should be.",Orakel78
9993,Rss and atom feeds are dropping some characters,,Feeds,2.7.1,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2009-05-31T23:54:40Z,2012-10-17T19:40:12Z,"Blog post with title:

{{{
& > test <
}}}

has the less than ( < ) is stripped from the atom and rss feed.

",pm24601
22362,Titles of RSS feeds lacks spacing - words are run together,,Feeds,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-11-05T15:30:23Z,2012-11-05T16:40:58Z,"Line 24 of wp-includes/feed-rss2.php has:

<title><?php bloginfo_rss('name'); wp_title_rss(); ?></title>

There's no space between those two parts. In my (development) site, for the feed for a category ""News"" (which is the main one I'm offering up), that results in:

<title>SitenameNews</title>",DavidAnderson
19368,UTF-8 characters truncated mid-byte sequence in excerpt in RSS2 feed,,Feeds,,normal,normal,Awaiting Review,defect (bug),new,,2011-11-27T05:54:33Z,2011-11-27T15:08:14Z,"I received [https://code.google.com/p/feedparser/issues/detail?id=306 a bug report at a project I maintain] and discovered what appears to be a bug in Wordpress 3.2.1.

The trouble is that the `description` element is being truncated in the middle of a UTF-8 multibyte character, which is producing garbage binary data. An example can be found at:

http://www.arnaudmontebourg.fr/?feed=rss2

I downloaded [http://themocracy.com/2009/07/alibi3col-free-wordpress-theme/ the site's theme] but found nothing that would affect `post_excerpt` or `the_excerpt_rss`. I then downloaded Wordpress trunk and attempted to figure out where the problem might be, but I'm unfamiliar with the Wordpress source and couldn't find anything after tracing through multiple files using grep.

I did discover that `trackback_url_list()` in `wp-includes/post.php` appears to be using a simple `substr()` call that might cause problems with multibyte characters. However, I'm more concerned with the potential for malformed feeds.

I've included a copy of the feed XML in question for longevity.",kurtmckee
15110,Useless MIME type served for rss feeds,,Feeds,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-10-13T14:16:54Z,2012-06-05T08:37:39Z,"Both /feed/, /feed/rss2/, and /feed/rss/ are served using the very undescriptive and generally useless ""text/xml"" MIME type.  ATOM and RDF feeds are served with their proper MIME types.  It looks like the MIME types for RSS are in feed.php, but for some reason there is a special ""rss-http"" type that returns the useless type?  Changing the first line in feed-rss.php and feed-rss2.php to use the rss and rss2 type instead of rss-http fixed it on my site.",singpolyma
13049,Wordpress should not generate feeds for 404 pages,,Feeds,3.0,low,normal,Future Release,defect (bug),reopened,dev-feedback,2010-04-19T11:32:20Z,2010-12-05T22:04:49Z,"Say I try to visit: `http://my.blog.tld/non-existent-slug/`, (where non-existent-slug is not a valid slug) I get a the normal 404 template.

However, if I try to visit `http://my.blog.tld/non-existent-slug/feed/`, then the response is a bit weird. A 404 response header is sent but the content is nonetheless sent through the feed template. And so you get something like this:

{{{
<?xml version=""1.0"" encoding=""UTF-8""?><rss version=""0.92"">
<channel>
  <title>A Sandbox &#187; Page not found</title>
  <link>http://my.blog.tld</link>
  <description>Just another WordPress weblog</description>
  <lastBuildDate>Mon, 19 Apr 2010 11:17:05 +0000</lastBuildDate>
  <docs>http://backend.userland.com/rss092</docs>
  <language>en</language>
  <!-- generator=""WordPress/3.0-beta1"" -->
</channel>
</rss>
}}}

Assuming this isn't intentional (I can't think why it would be), this should be changed so that the content is the normal 404 template.",solarissmoke
3260,"XML output (rss, atom, rdf ...) should always use UTF-8 or CDATA for user input",,Feeds,2.8.2,normal,normal,Future Release,defect (bug),new,has-patch,2006-10-18T02:33:58Z,2009-11-20T15:32:29Z,"If none UTF-8 is used, user generated text like titles or categories may contain unallowed entities. The elements <title>, <tagline>, <dc:subject>, <category> (there may be more) are not protected width <![[CDATA ]]>.

The conversion can be done width the PHP MulitByte function. If MB is not available, the <![[CDATA should be used instead.

Please contact me for development help.",deremder
9134,cannot remove the link to comments in feeds,,Feeds,2.7,lowest,trivial,Future Release,defect (bug),new,has-patch,2009-02-15T03:24:36Z,2011-03-20T18:49:34Z,"In feed-rss2.php, '''etc.''' there is no easy to turn off the comments link, for blogs that
have no, and don't allow, comments. So the link
{{{
<comments><?php comments_link(); ?></comments>
}}}
is just a waste. Same with
{{{
<wfw:commentRss><?php echo get_post_comments_feed_link(); ?></wfw:commentRss>
}}}
Yes. I can turn off comments, and remove all comments, but I cannot
remove ''the link'' to comments (without hacking the core.)
",jidanni
20379,"dashboard_incoming_links fails to update when 'home' changes, so google rss is wrong",,Feeds,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-04-06T16:04:00Z,2013-02-12T22:50:59Z,"When the user changes 'home', the wp_option 'dashboard_widget_options' is updated. But WP fails to update it completely, so the default Google RSS syndication URL is broken.

The borked value is:

dashboard_widget_options: dashboard_incoming_links: url

which is of the form

http://blogsearch.google.com/blogsearch_feeds?scoring=d&ie=utf-8&num=10&output=rss&partner=wordpress&q=link:http://example.com/

The string at the end, example.com, is supposed to change but it does not.

Here is the problem.
(Trunk has the same code as the current ver. 3.3.1.)

http://core.trac.wordpress.org/browser/trunk/wp-admin/includes/dashboard.php#L59
constructs 'url' as follows, expanded for readability:

{{{
'url' => isset($widget_options['dashboard_incoming_links']['url'])
	? apply_filters(
		'dashboard_incoming_links_feed',
		$widget_options['dashboard_incoming_links']['url']
	)
	: apply_filters(
		'dashboard_incoming_links_feed',
		'http://blogsearch.google.com/blogsearch_feeds?scoring=d&ie=utf-8&num=' . $num_items . '&output=rss&partner=wordpress&q=link:' . trailingslashit( get_option('home') )
	),
}}}

Since 'url' is already set, it never changes! The value of get_option('home') is not used.

This code block is only reached when 'home' has changed, or on initial setup, so it does not make much sense to ignore 'home'.

I'm not sure if there is any reason to keep the tertiary. Solution 1 below is the simple fix.
Solution 2 is a heuristic fix to handle the case where a plugin or theme has updated the database, instead of using the filter. It mimics the current (possibly wrong) behavior in that case.

Solution 1:
{{{
$widget_options['dashboard_incoming_links'] = array(
	...
	'url' => apply_filters( 'dashboard_incoming_links_feed', 'http://blogsearch.google.com/blogsearch_feeds?scoring=d&ie=utf-8&num=' . $num_items . '&output=rss&partner=wordpress&q=link:' . trailingslashit( get_option('home') ) ),
}}}

Solution 2:
{{{
$url_prefix = 'http://blogsearch.google.com/blogsearch_feeds?scoring=d&ie=utf-8&num=' . $num_items . '&output=rss&partner=wordpress&q=link:';
$url = $url_prefix . trailingslashit( get_option( 'home' ) );
if ( isset ( $widget_options['dashboard_incoming_links']['url'] ) ) {
	if ( 0 !== strpos( $widget_options['dashboard_incoming_links']['url'], $url_prefix ) ) {
		$url = $widget_options['dashboard_incoming_links']['url'];
	}
}
$widget_options['dashboard_incoming_links'] = array(
	...
	'url' => apply_filters( 'dashboard_incoming_links_feed', $url ),
}}}

The importance of this bug is twofold:
1. No clear workaround for the user, even with basic PHPMyAdmin skills. The incorrect value is in a serialized array in the table 'wp_options'.
2. Users may not realize the feed is borked, since there is no Dashboard UI. I think there used to be. The WP forums have several 5-year old threads about it.

By the way, $num_items never changes by default. It could only be updated by plugins or themes, and Solution 2 assumes they know what they are doing there too.
",kitchin
18056,dc:creator needs to be escaped in RSS feed,,Feeds,3.2,normal,major,Awaiting Review,defect (bug),new,has-patch,2011-07-10T03:46:15Z,2011-07-10T03:46:15Z,"If the author name contains any special characters, they might end up in the RSS feed unescaped, causing failed feed validation and thus causing problems for many readers.

The code now is:

<dc:creator><?php the_author() ?></dc:creator>

Shouldn't this be:

<dc:creator><![CDATA[<?php the_author() ?>]]></dc:creator>

Or: 

<dc:creator><?php htmlspecialchars(the_author()) ?></dc:creator>

This might be a result of a custom author plugin not escaping these characters on the way into the database, but Wordpress should handle this more robustly to prevent plugin authors from messing things up like this.",Nettsentrisk
18505,http 404 sent for the RSS feed when there are no posts - should be 200,,Feeds,3.2.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-08-24T03:33:52Z,2011-08-25T00:13:02Z,"for sites with no posts, the HTTP status code returned for the RSS feed is 404, but since the address was a valid address and it just happens that the content is empty, a 200 status should be sent.

(It annoys link checkers which then report that there are broken link at the site because by default for most themes there is a link to the RSS feed in the header) ",mark-k
2875,https enclosures fail on post.,,Feeds,2.0.2,normal,major,Awaiting Review,defect (bug),reopened,has-patch,2006-06-29T10:35:51Z,2012-05-17T19:20:25Z,"I was noticeing a problem in that when you post on a standard HTML site, enclosures get added into postmeta on publishing a post. When running off an HTTPS site, this no longer happens.

The reason is the regex only looks for HTTP. Line 1032 of wp-includes/functions.php

{{{
  preg_match_all(""{\b http : [$any] +? (?= [$punc] * [^$any] | $)}x"", $content, $post_links_temp2);
}}}

Add the following under this line and it works.
{{{
  preg_match_all(""{\b https : [$any] +? (?= [$punc] * [^$any] | $)}x"", $content, $post_links_temp2);
  foreach($post_links_temp2[0] as $link) {
    $post_links_temp[0][] = $link;
  }
}}}
There may be a nicer way to regex that up, but I couldn't add it.

I have raised it as high/major because it is a bit of a hole that I cannot override the functionality of, and I use the RSS feed for podcasting - which WordPress does not support from an HTTPS site.",nigelkane
17150,Atom category terms and labels,,Feeds,,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-04-16T22:46:37Z,2011-04-16T22:46:37Z,"An [http://tools.ietf.org/html/rfc4287#section-4.2.2 Atom category] supports both machine-facing and human-facing text through its 'term' and 'label' attributes respectively. WordPress Atom template currently outputs category or tag name as the 'term' attribute. I would like to output the category or tag's slug as 'term' and its name as 'label'

Before:
<category scheme=""!http://wordpress.org/"" term=""Open Source"" />

After:
<category scheme=""!http://wordpress.org/"" term=""open-source"" label=""Open Source"" />

Attached is a patch for get_the_category_rss() inside wp-includes/feed.php. I constructed an associative array with slug as the key and name as the value. The slug column is a unique key on the terms table and can also be used to enforce uniqueness in the array.

A possible downside: it's possible two entry categories or tags might have the same name, which would produce two identical outputted lines in RSS 2.0 and RDF feeds while correcting the previous lossy behavior in the Atom feed.",niallkennedy
4253,Category feeds don't indicate they are category feeds,,Feeds,,normal,normal,Future Release,enhancement,new,,2007-05-13T04:35:10Z,2009-06-14T13:43:40Z,"Okay guys, here is a patch for WordPress that properly titles and describes category RSS/Atom feeds.  I didn't know how to set the URL for the feed to the URL of the category, so what I'm doing is just leaving the bloginfo URL as it is, but I hope you can whip that out from your fabulous hacking heads.

This patch makes sense because of several reasons.  My personal reason is that I'm running a magazine with different sections (using categories as the section) at rudd-o.com, and I'm encouraging subscriptions to the section feeds instead of the whole magazine, but the feeds themselves don't say which category they're from.  Now with this patch they do.

Another thing that I'm not sure about, and I'd like a response in the form of a comment here (I'm tracking this bug via RSS): do I have to htmlspecialchars() before doing the print's ""..."" in this patch?  The question, more properly phrased, is: if I print a get_category_name(), should I print it htmlspecialchar()red, or should I just print it out, and trust that the WordPress category administrator won't let people type random HTML?  Another way of posing the question would be: if I type an ampersand (&amp;) in the category name, what should the theme display, ""&amp;"" or ""&""?  This is keeping me up at night, need some sleep, please help =).

",RuddO
11053,Conditional Tags should work in feeds as well,,Feeds,2.8.5,normal,normal,Future Release,enhancement,new,,2009-10-31T14:56:17Z,2010-01-17T14:20:19Z,"I try to get the following to work:

{{{
function xxx_filter_cat()
{
	if (is_author()) query_posts(""cat=4"");
	if (is_front_page()) query_posts(""cat=2,3"");
}

add_action('rss2_head', 'xxx_filter_cat');
}}}

It should alter the rss2 feed, depending if it should get generated for the general homepage, or for a single author.

But: It doesn't work at all - is_author and all the other is_* functions I tried always trigger false. is_feed works, but well, doesn't help me very much.

It would be easy to manipulate the generated feeds if wp would support the already built-in conditional tags in the feeds as well.",pampfelimetten
19890,Filter auto enclosure links before processing,,Feeds,,normal,minor,Awaiting Review,enhancement,new,has-patch,2012-01-24T21:37:48Z,2012-01-24T21:44:05Z,"[http://core.trac.wordpress.org/browser/tags/3.3.1/wp-includes/functions.php#L1182 The do_enclose() function] looks through post content for enclosure-worthy URLs, requests the URLs it finds, and stores in post meta.

I use sample code and dummy URLs in my posts: e.g. !http://example.com/song.mp3. Right now `do_enclose()` finds the mention of the MP3, adds it to post meta, which later outputs in `rss_enclosure()` or `atom_enclosure()`. If I want to remove the enclosure from final markup I can attach to the `added_postmeta` action to remove a value after it was requested and inserted or act on the markup generated by `rss_enclosure()` or `atom_enclosure()` by emptying the string.

I would like to filter out the auto-discovered enclosure link before it is processed by !WordPress, looked up in the database, and HEAD requested. If a filter existed on the parsed enclosure links I could remove links from dummy domains such as ""example.com.""",niallkennedy
9611,Make comment feeds fail with an error code when comments are closed,,Feeds,2.8,normal,minor,Future Release,enhancement,new,dev-feedback,2009-04-21T14:12:42Z,2011-01-12T12:40:06Z,"This is mostly a suggestion as an enhancement.

When you close a post's comments and pings, it should no longer output an rss feed. Instead, it should return a not found (404) or gone (410) error and die.

Likewise, if all posts and pages on a site disallow comments and pings, the comments feeds should not be broadcast, and should return the same error code.

Thoughts?",Denis-de-Bernardy
9510,Multiple feed fixes and enhancements,,Feeds,2.7.1,high,major,Future Release,enhancement,new,has-patch,2009-04-11T09:36:47Z,2009-11-17T20:28:06Z,"Currently, the feed always returns the same subtitle, self link, alternate link and replies link no matter what the page type is. I think they should be different for each page type.",peaceablewhale
13867,New filter for comment RSS feed's title,,Feeds,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-06-12T21:53:07Z,2010-10-28T12:18:31Z,"I'd like to be able to customize comments titles in RSS feed.

Currently it's hardcoded and has no way to be changed, so I added 2 new filters so that plugins can edit them.

I've tested and patch is working for me.",shidouhikari
16983,Pass $sep to 'wp_title_rss' filter,,Feeds,,normal,normal,Future Release,enhancement,new,commit,2011-03-27T21:11:14Z,2011-03-27T21:11:14Z,Same for 'get_wp_title_rss'.,scribu
7092,Should support separate setting for limiting comments feed,,Feeds,2.9,normal,normal,Future Release,enhancement,reopened,has-patch,2008-06-04T15:48:34Z,2010-05-14T13:07:07Z,"Right now the comments feeds are throttled by the same limiting number the user chooses for ""posts feeds"" (posts_per_rss).

It makes sense that a blog owner would want to set a higher threshold for comments than for posts, for these reasons:

- Readers who subscribe to comment feeds are fewer in number and less likely to burden the system in aggregate.

- Comments are typically shorter per entry than posts are.

- Comments are liable to expand much more quickly than posts, making it difficult for readers to ""keep up"" without wrapping past the limit.

For instance in my blog I limit post feeds to 10 entries, but I'd like to offer a much larger limit for comments subscribers.

Establishing a ""comments_per_feed"" variable that is used in place of the ""posts_per_rss"" would accomplish this.

",redsweater
8828,Tags and Categories are undifferentiable in Atom and RSS feeds,,Feeds,2.7,normal,normal,Future Release,enhancement,new,needs-review,2009-01-09T11:48:18Z,2009-11-23T19:48:49Z,"In RSS feeds this can be achieved using the 'domain' attributes of the category element. This is already done in Wordpress export through the wxr_post_taxonomy function, so we just have to do the same in RSS feeds. 

In Atom feeds this can be achieved using the 'scheme' attributes of the category element. The Atom standard is not explicit about what to put in this scheme attributes. There is [http://edward.oconnor.cx/2007/02/representing-tags-in-atom an interesting topic on Edward O’Connor blog]. In my proposed patch, i decided to use the 1st representation and i also considered seriously the 2nd.

In the patch, i'm also adding the 'label' attribute to the atom category element and changed the 'term' attribute to be the tag slug. Seems this are currently the best practices in the Atom community.",znarfor
21017,Using force_feed() for simplepie in core,nacin,Feeds,3.4,normal,minor,Awaiting Review,enhancement,reviewing,dev-feedback,2012-06-18T22:21:48Z,2012-06-27T14:32:13Z,"Receiving the following error in the ""Incoming Links"" widget in the admin dashboard:
[[BR]]

{{{
RSS Error: A feed could not be found at http://www.google.com/search?
ie=utf-8&partner=wordpress&q=link:http://mysite.com/
&tbm=blg&tbs=sbd:1&output=rss. A feed with an invalid mime type may fall
victim to this error, or SimplePie was unable to auto-discover it.. Use
force_feed() if you are certain this URL is a real feed.
}}}

[[BR]]
The support forum thread which can provide more specific information can be found here:
[http://wordpress.org/support/topic/incoming-links-error-message-1?replies=41]
[[BR]][[BR]]

It has been suggested adding '''force_feed()''' to the core might alleviate this issue in future dev.
",josh401
14493,"do_enclose() can ping the same URL many times, can't filter URLs to ping",nacin*,Feeds,3.0.1,normal,normal,Future Release,enhancement,accepted,has-patch,2010-07-31T18:52:01Z,2012-11-07T09:14:47Z,"If the same URL is included in a post several times, do_enclose() can check that URL for inclusion as a possible enclosure several times.

Additionally, there's no way to filter what URLs do_enclose() should ping for possible inclusion as enclosures.

Attached adds an array_unique() call to do_enclose().

Attached adds a {{{do_action_ref_array( 'pre_enclose', array( &$post_links, &$pung ) )}}} hook to allow filtration of URLs to ping.  (Matches the pre_ping hook.)

do_enclose() has several more problems this patch addresses.

 1. Correct non-functional DELETE FROM postmeta query (bad use of wpdb::prepare()).
 2. Use like_escape() in several LIKE queries.
 3. Add an {{{apply_filters( 'enclosure_mime_types', array( 'video', 'audio' ) )}}} hook.
 4. Currently do_enclose() doesn't allow root URLs as enclosures (e.g. http://example.com/), only URLs with a non-trivial path or query.  Move that functionality to the new pre_enclose filter.
 5. Efficiency improvements in conditional logic.
 6. Clean up code by reducing control structure nesting depth.",mdawaffe
23692,feed_links should have a parameter to choose which feed to display,,Feeds,,normal,minor,Awaiting Review,enhancement,new,dev-feedback,2013-03-05T14:02:12Z,2013-04-05T08:52:19Z,"Hello,

'''feed_links''' is a function located in wp_includes/general_template.php. It displays 2 feeds in the header : the main feed and the comment feed. The function is activated along with feed_links_extra when automatic-feed-links support is activated.

Currently, developers can't choose if they want both feeds to be displayed, or just one of them. I think this function should be improved.

Here is the current function :
{{{
function feed_links( $args = array() ) {
	if ( !current_theme_supports('automatic-feed-links') )
		return;

	$defaults = array(
		/* translators: Separator between blog name and feed type in feed links */
		'separator'	=> _x('&raquo;', 'feed link'),
		/* translators: 1: blog title, 2: separator (raquo) */
		'feedtitle'	=> __('%1$s %2$s Feed'),
		/* translators: %s: blog title, 2: separator (raquo) */
		'comstitle'	=> __('%1$s %2$s Comments Feed'),
	);

	$args = wp_parse_args( $args, $defaults );

	echo '<link rel=""alternate"" type=""' . feed_content_type() . '"" title=""' . esc_attr(sprintf( $args['feedtitle'], get_bloginfo('name'), $args['separator'] )) . '"" href=""' . get_feed_link() . ""\"" />\n"";
	echo '<link rel=""alternate"" type=""' . feed_content_type() . '"" title=""' . esc_attr(sprintf( $args['comstitle'], get_bloginfo('name'), $args['separator'] )) . '"" href=""' . get_feed_link( 'comments_' . get_default_feed() ) . ""\"" />\n"";
}
}}}

Currently, the only way to display only one feed (the main post feed or the main comment feed) so is to deactivate feed_links with :
{{{
remove_action('wp_head', 'feed_links', 2);
}}}
and then to create our own function to only display one feed.

Do you think this should be improved ?

Regards,",Confridin
8994,Incorporate MediaRSS Plugin into core,technosailor,Feeds,,normal,normal,Future Release,feature request,new,,2009-01-29T18:00:20Z,2013-01-05T09:05:59Z,"Per conversation on the hackers list, this ticket is a working area for incorporation of the MediaRSS plugin (http://wordpress.org/extend/plugins/mrss) into core for WP 2.8.",technosailor
19643,Allow array for $extra_fields in request_filesystem_credentials,,Filesystem,3.0,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2011-12-22T07:47:38Z,2012-09-10T22:54:04Z,The current implementation for passing extra fields through request_filesystem_credentials() does not allow for an array of data to be passed. I came across this issue when trying to process a bulk installation of plugins with my plugin installation class. My patch fixes this from what I can tell and doesn't break anything that I can see from my testing.,griffinjt
10831,Autoupgrade: Synchronous FTP client fails while plugin upgrade/installation (on some systems),dd32,Filesystem,2.8.4,normal,normal,Future Release,defect (bug),reviewing,has-patch,2009-09-23T15:52:29Z,2011-03-22T00:46:45Z,"Decription here
http://wordpress.org/support/topic/288093

Apache/2.2.13 (Unix) DAV/2 mod_ssl/2.2.13 OpenSSL/0.9.8k configured

PHP 5.2.10 with Suhosin-Patch 0.9.7 (cli) (built: Jul 14 2009 11:56:54)

pure-ftpd-1.0.22-1

I solved by changing some lines of code in class-ftp-sockets.php 
(_exec and _readmsg)

Below the patch:
http://darkman.it/x/class-ftp-sockets.patch
",darkman82
23589,FS_CHMOD_FILE doesn't work for ssh,,Filesystem,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-02-22T21:34:44Z,2013-02-23T00:19:11Z,"Steps to reproduce:
1. set up ssh access for !WordPress (FTP_* constants).
2. `define('FS_CHMOD_FILE', 0664)`.
3. install some theme.

Expected result: files have 0664 permissions.

Actual result: files have default permissions (0644).

I believe this happens because filename is ltrimmed before sending over SSH, but not restored before changing permissions. See [http://core.trac.wordpress.org/browser/tags/3.5.1/wp-admin/includes/class-wp-filesystem-ssh2.php#L164 this].",x-yuri
23845,Install new theme via FTP failed,,Filesystem,3.5.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-03-22T12:19:03Z,2013-04-10T21:12:23Z,"New theme installation via FTP has failed when we specified custom FTP_BASE folder.  If we try this theme installation , wordpress shows error message: ""Unable to locate WordPress theme directory"". This was because search_for_folder method do not respect FTP_BASE setting and allows to walking on parent directories.  All solutions I found in google is ugly hacks who only mask the problem but does not resolved it
I attached patch  example who resolve this problem. I hope is useful and  will help to repair this bug.",Przemyslaw Plewa
16925,Move the WP_Filesystem_SSH2 class to a plugin,dd32*,Filesystem,,normal,normal,Future Release,defect (bug),accepted,,2011-03-22T00:16:08Z,2011-07-06T03:57:26Z,"I'd like to consider moving the WP_Filesystem_SSH2 class out of WordPress core and into a plugin.

The reasoning for this is simply due to the fact that the majority of users will not use it, It already requires the PHP extension to basically be custom-compiled (thanks to limited installations coming with the extension). 

In my opinion, This would be better served in a plugin, potentially with a PHP-based version as well: #10348",dd32
24107,Plugin/Theme installer asks for connection info when wp-content is writable but wp-admin is not,,Filesystem,,normal,normal,Awaiting Review,defect (bug),new,,2013-04-16T21:39:34Z,2013-04-17T01:08:42Z,"For background, please see [http://www.chrisabernethy.com/why-wordpress-asks-connection-info/]

When installing a new plugin or theme, WP first checks to see if it can directly write to the filesystem.  If so, it proceeds.  If not, it asks the user for FTP connection info.

The directory to which it NEEDS access is /wp-content

However, the directory it CHECKS is /wp-admin

get_filesystem_method() should be changed (or parameterized) to check only /wp-content in cases where /wp-admin access is not needed.  This will allow installations to have a higher filesystem-security setting for /wp-admin than for /wp-content, while still utilizing direct filesystem access.",peckjon
14049,Upgrade takes an hour to complete due to repeated 30-second FTP timeout,dd32*,Filesystem,3.1,normal,normal,Future Release,defect (bug),accepted,,2010-06-22T17:56:22Z,2011-05-02T06:54:32Z,"On my FreeBSD server (hosted by ISP pair.com), the built-in upgrade feature of WordPress takes at least an hour to complete.  I debugged the problem, and it turns out to be due to a mismatch between the FTP responses WordPress is expecting vs. the FTP responses FreeBSD is actually sending.

(Attached is a dump of phpinfo() from the machine on which I am seeing this problem.)

Steps to reproduce:
1. Clean WordPress installation on FreeBSD
2. Go to the Dashboard, then click Updates
3. Click ""Re-install Automatically""
4. Enter hostname, user name, and password; leave Connection Type as FTP; click Proceed

Actual result:
The update eventually completes successfully, but it takes an extraordinarily long time -- at least an hour.

Expected result:
Should finish much more quickly than that.

I debugged this, and here is what is happening:

- My PHP installation ends up using the ""ftpsockets"" filesystem to do the update.  (If necessary, you can force the use of that filesystem for testing purposes by adding ""define('FS_METHOD', 'ftpsockets')"" to your wp-config.php.)

- Every time anyone calls WP_Filesystem_ftpsockets->exists() to see if a file exists, that function calls ftp->is_exists(), which calls ftp->file_exists() in wp-admin/includes/class-ftp.php.

- That function tests for the existence of a file by sending the FTP command ""RNFR"" (rename from) across the FTP connection.  If the RNFR command succeeds, then the assumption is that the remote file exists; if it fails with an error message, then the assumption is that the remote file does not exist.

- Immediately after sending the RNFR command, if the RNFR succeeded, then is_exists() calls abort(), to send an ABOR -- I'm guessing this is intended to abort the rename.

- However, this is where things go bad.  FreeBSD replies to the ABOR command with ""426 Nothing to abort"".  WordPress's abort() function then attempts to read one more line, but there is nothing to read, so that read attempt times out after 30 seconds.

Here is the way the whole ""exists()"" conversation looks when it works correctly on my Mac:

{{{
PUT > RNFR /Users/mike/Sites/wordpress/ 
GET < 350 File exists, ready for destination name 
PUT > ABOR
GET < 225 ABOR command successful. 
Remote file /Users/mike/Sites/wordpress/ exists
}}}

And here is the way the conversation looks when it times out on my FreeBSD machine:

{{{
PUT > RNFR /usr/www/users/morearty/blog2/ 
GET < 350 You may attempt to rename /usr/www/users/morearty/blog2. 
PUT > ABOR 
GET < 426 Nothing to abort.
[... 30-second delay here, as abort() attempts to read one more line ... and then:]
abort: Read failed
}}}
",mmorearty
21452,When uploading media wp_unique_filename() treats capitalisation as being different.,,Filesystem,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-02T13:24:11Z,2012-08-02T13:24:11Z,"On most web servers ""Photo.jpg"" and ""photo.jpg"" can be treated as different files.

The problem is when backing up a local copy (to my Mac) it will not let both these files exist at the same time - it wants to replace one with the other as it treats lowercase and uppercase as the same.

I suggest that we should do the same with uploads so that if ""Photo.jpg"" exisits and you upload ""photo.jpg"" is is renamed to a unique name.

I guess this would require a fix in the wp_unique_filename() function.",husobj
10424,change get_filesystem_method()'s code for direct to reflect actual purpose,dd32,Filesystem,2.9,normal,normal,Future Release,defect (bug),new,has-patch,2009-07-16T11:38:41Z,2010-11-13T01:37:42Z,"due to tickets such as #10205 and #10423 I propose we add some documentation, or change the code a bit to reflect to others the intended purpose of the code.

Eg, something such as this could potentially work:
{{{
if ( file_owner($temp_file) !== false && file_owner(__FILE__) === file_owner($temp_file) ) {
//use direct
}
}}}

Too many people assume its a typo, and just a complex is_writable() call..",dd32
23196,mkdir not recursive (in wp-includes/functions.php),,Filesystem,,normal,normal,Awaiting Review,defect (bug),new,,2013-01-14T08:35:51Z,2013-01-14T10:25:01Z,"This January, Wordpress tried to create a directory and a subdirectory in ""uploads"": ""2013"" and inside it ""01"".

`mkdir($target)` was used to create these two directories, but since the $recursive option (3rd argument) was not set, this operation failed.

I have just checked this path and it does exist, hence I suspect this procedure is being done somewhere else (and succeeding).

Still, this is a problem since:
1. It is showing up in our error logging system.
2. It is very easy to fix.
3. It potentially fixes more problems than it seems.

The solution is to change this line:

    1306:        if ( @mkdir( $target ) ) {

To the following:

    1306:        if ( @mkdir( $target, 0777, true ) ) {


On a sidenote, PHP's default directory creation mode is 0777 (so the above code is best for compatibility), but as you may know, it is not good in terms of security, so you may want to look for a more secure fix (eg, lowering the mode if it doesn't cause problems).",uuf6429
21453,Appending hyphen before numbers when creating a create unique filename in wp_unique_filename(),,Filesystem,3.4.1,normal,normal,Awaiting Review,enhancement,new,,2012-08-02T13:32:00Z,2012-08-02T13:32:00Z,"When WordPress appends a number to a file to create a unique filename, it just adds a number to the file.
ie If ""photo.jpg"" exists then ""photo1.jpg"" is created

I suggest that it should include a hyphen so the file would be called ""photo-1.jpg""

The main reason is that if you upload files ending in numbers then then the new filename is less easy to read.
ie If ""photo234.jpg"" exists then ""photo2341.jpg"" is created

Would be nicer if it produced ""photo234-1.jpg""

It's only cosmetic but it does make it easier to search for images in the uploads folder if you need to for any reason, especially if you have uploaded a load of images from a camera DSC123.jpg, DSC124.jpg etc",husobj
20716,Control how and when request_filesystem_credentials outputs creds form,,Filesystem,3.4,normal,normal,Awaiting Review,enhancement,new,reporter-feedback,2012-05-21T02:02:08Z,2012-05-21T02:05:10Z,"When using WP_Filesystem in a plugin or other external app, you can initialize it this way:

{{{
if ( false == ( $creds = request_filesystem_credentials( $url, $method, false, false, $form_fields ) ) ) {
    return true;
}
}}}

Makes sense. If the method isn't direct or we don't have the credentials we need, `request_filesystem_credentials` outputs a form and returns false. Then we check again to make sure the credentials can be verified, and it not, we continue to output the form until the credentials are good.

{{{
if ( ! WP_Filesystem( $creds ) ) {
    request_filesystem_credentials( $url, $method, true, false, $form_fields );
    return true;
}
}}}

`request_filesystem_credentials` arbitrarily outputs the form whether you want it to or not, unless you explicitly filter the `request_filesystem_credentials` function itself. Using this in conjunction with Ajax, you have to use output buffering to catch the output and return it to the Ajax script for processing or else you get errors. This definitely isn't ideal.

I'd suggest storing the form in a variable and possibly pass a parameter that determines whether or not we want to actually output the form or not. Or, if there is another (better) way, that's cool too. Just some way to help `request_filesystem_credentials` determine how we want to interact with credentials should we need them.

",griffinjt
18476,Duplicate code in filesystem classes,kurtpayne,Filesystem,3.2.1,normal,minor,Awaiting Review,enhancement,new,dev-feedback,2011-08-18T17:54:33Z,2012-07-06T14:09:04Z,"Each filesystem class extends a base class and most, but not all, include an implementation of chown.  I propose a slight refactoring to include a default implementation of chown in the base class and let each subclass override chown when necessary.",kurtpayne
22772,Introduce HOMEPATH,,Filesystem,3.5,normal,normal,Awaiting Review,enhancement,new,,2012-12-06T03:05:42Z,2013-03-03T20:23:48Z,"I was poking around with get_home_path() and wondering if there's any reason to not set a constant HOMEPATH (like ABSPATH) in the root index.php

I'd seem to be more reliable then get_home_path() and that function could simply return the new constant.

get_home_path has it's origins 8 years ago when the code was very different: [1567]",WraithKenny
21403,"Introduce wp_scandir, remove opendir / closedir code",,Filesystem,3.0,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-07-28T08:57:20Z,2012-07-29T18:29:23Z,"There is {{{@opendir}}} code all over the place that is not standardized. On top of that, there is plenty of code that is duplicated and could be condensed into one handy function. Plus, in all of the places we are using {{{opendir()}}}, we really want to be using {{{scandir()}}}. 

I have created a master function in {{{load.php}}} called {{{wp_scandir()}}} that does the basics:
* scans a directory for files / subdirectories
* filters list by extension(s)
* optionally returns ONLY files

This cleans up code in many places.",wonderboymusic
22267,Make trailingslashit() and untrailingslashit() work with backslashes,,Filesystem,2.2,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-10-24T04:09:58Z,2013-02-24T22:19:38Z,"#20778 demonstrates that untrailinhslashit(), hence trailingslashit(), are unable to remove a trailing backslash from file paths on Windows.

As Windows accepts a slash as directory separator, DIRECTORY_SEPARATOR is not needed to make portable code, except when parsing or exploding a path that comes from the system [http://alanhogan.com/tips/php/directory-separator-not-necessary]. We neeed to tell trailingslashit() and untrailingslashit() that we want to remove the trailing slash a file path from system, not a generated one and not a URL path.

My idea is:
{{{
function untrailingslashit( $string, $is_path = false ) {
    if ( $is_path )
        return rtrim( $string, DIRECTORY_SEPARATOR . '/' );
    else
        return rtrim( $string, '/');
}

function trailingslashit( $string, $is_path = false ) {
    if ( $is_path )
        return untrailingslashit( $string, $is_path ) . DIRECTORY_SEPARATOR;
    else
        return untrailingslashit( $string ) . '/';
}
}}}

Expected results that is true:

{{{
  trailingslashit( '/mypath'  ) == '/mypath/'
  trailingslashit( '/mypath/' ) == '/mypath/'
  trailingslashit( '/mypath//') == '/mypath/'
untrailingslashit( '/mypath/' ) == '/mypath'
untrailingslashit( '/mypath//') == '/mypath'
  trailingslashit( '/usr/tmp/', true ) == '/usr/tmp/' // On non-Windows
  trailingslashit( '/usr/tmp',  true ) == '/usr/tmp/' // On non-Windows
  trailingslashit( '/usr/tmp//',true ) == '/usr/tmp/' // On non-Windows
  trailingslashit( 'C:\TEMP',   true ) == 'C:\TEMP\'  // On Windows
  trailingslashit( 'C://TEMP//',true ) == 'C://TEMP\' // On Windows
  trailingslashit( 'C:/TEMP/',  true ) == 'C:/TEMP\'  // On Windows
untrailingslashit( 'C:\TEMP\',  true ) == 'C:\TEMP'   // On Windows
}}}

On Windows, for making a path to $subdir one may use either

{{{
$path = trailingslashit( $path, true ) . $subdir;
$path = untrailingslashit( $path, true ) . '/' . $subdir;
}}}
according to preference in the situation, knowing that '/' is a valid separator in any case.

The added DIRECTORY_SEPARATOR in trailingslashit() code suggestion above could be '/', but it might produce an unexpected result, some someone when deliberately wants to make a true native path for the system.

The second parameter to rtrim() in untrailingslashit() should instruct rtrim() to remove both characters, as we cannot assume a Windows file path is always delimited or trailed with ""\"".

I will make the patch, and will test the all the expected results on Windows and Linux. That is, if I am not convinced this is no way to go (adding optional parameters and ""messing"" with an old formatting function).

== Alternatives ==

We could make untrailingslashpath() and trailingslashpath() which assumes a path string, and no extra argument. This would require, at least softly, a replace all over the code, where a path is to be (un)trailingslashed.

We could make untrailingbackslashit() and trailingbackslashit() instead, but this would force us to check either DIRECTORY_SEPARATOR or $is_win before selecting which function to use, bloating code all over the place. A good helper function should be a real help, especially in edge cases.
",knutsp
10205,getmyuid() called instead of posix_getuid() in get_filesystem_method() (wp-admin/includes/file.php),dd32,Filesystem,2.8,normal,normal,Future Release,enhancement,reopened,dev-feedback,2009-06-18T09:53:55Z,2013-04-25T23:19:21Z,"In wp-admin/includes/file.php, the function get_filesystem_method() attempts to figure out whether it is able to write files correctly, and therefore whether it can update or install files directly, or needs to use some other method.

As part of the function, in a particular case it writes a temporary file and compares it to the return value of getmyuid(). I think this is a mistake - the return value of getmyuid() is the owner of the current _file_ that's being run, not the current process - so if the file is owned by a user other than that of the web server's UID, it thinks it can't install directly (even if it actually can, because the directories are group writable).

This can be worked around by simply changing the owner of the file to another user, although this isn't always going to be possible for the person running Wordpress.

To fix this, change the function call to check the return value of posix_getuid() instead of getmyuid(). (NB: this function isn't available on Windows.)",pgl
24368,Renaming feature for wp-includes,,Filesystem,3.5.1,normal,normal,Awaiting Review,feature request,new,dev-feedback,2013-05-19T18:24:16Z,2013-05-20T06:37:10Z,"Currently it is possible to rename wp-content to anything you want. WordPress has a definition built in for wp-includes, that is WPINC, however, this definition isn't used in about 15 - 16 core files preventing it from being changed (For example, some CSS doesn't load for the admin bar). I have added the files that I have changed to allow this to work, to work add a definition for WPINC to wp-config with the name of your wp-includes folder without and slashes. Without the definition it just uses the standard wp-includes.",JoeIzzard
21610,ssh2/sftp doesn't work with chrooted/openssh sftp-internal user accounts (no shell),albert@…,Filesystem,3.4.1,normal,normal,Awaiting Review,feature request,new,,2012-08-16T16:06:35Z,2012-09-10T18:20:52Z,"The current wordpress 3.4.1 wp-admin/includes/class-wp-filesystem-ssh2.php  code will crash php or spin in an endless loop when someone supplies ssh/sftp credentials (username/password) to an (open)ssh server where users don't have a shell and are chrooted to their home directory e.g. by using openssh's sftp-internal server and ChrootDirectory functionality.
There is no neat fix for the code in the WP_Filesystem_SSH2 class. I've implemented a new WP_Filesystem_SFTP class making use of the portable phpseclib library.

At this moment it is necessary to change a line in wp-admin/includes/file.php to be able to use WP_Filesystem_SFTP.
Attached is the code for this new class up for review or for anyone with the same problem.",albert@…
4539,Abbreviated year followed by punctuation or markup doesn't texturize,jmstacey,Formatting,2.5,low,normal,Future Release,defect (bug),reopened,has-patch,2007-06-26T03:36:36Z,2012-12-17T14:49:10Z,"An abbreviated year followed by punctuation or markup doesn't texturize properly.

e.g. (Bruce Sterling, '97) is texturized as (Bruce Sterling, &#8216;97) when the apostrophe should be texturized as &#8217;

e.g. <li>Casino Royale '06</li> is texturized as <li>Casino Royale, &#8216;06</li> when the apostrophe should be texturized as &#8217;",pah2
10823,Bad handling of ampersand in post titles,,Formatting,2.8.4,normal,minor,Future Release,defect (bug),new,has-patch,2009-09-21T10:59:50Z,2013-01-23T22:12:06Z,"Titles with ampersand (&amp;) are not correctly handled:[[BR]]

1/ the_title_attribute() doesn't transform & to &amp; causing XHTML validation errors[[BR]]

2/ titles with & followed by ; generate truncated post name (slug)
e.g. ""Test this & believe ; what ?"" => ""test-this-what""",Commeuneimage
19543,Broken formatting when using HTML5 <section> element,,Formatting,3.3,normal,normal,Awaiting Review,defect (bug),new,needs-unit-tests,2011-12-14T10:32:07Z,2012-10-12T18:25:51Z,"When using <section> HTML5 element, the resulting markup is invalid because some paragraphs isn't closed properly. 

Reproduced with WP 3.3, TwentyEleven theme and no plugins. 

Example markup attached to this ticket. Paste into html view of the WYSIWYG editor and publish. Resulting markup also attached. ",exz
22946,Default filter erroneously turns FTP hostnames into HTTP links,,Formatting,2.0.4,normal,normal,Awaiting Review,defect (bug),new,,2012-12-14T20:01:51Z,2012-12-22T19:40:55Z,"The function _make_web_ftp_clickable_cb in wp-includes/formatting.php is invoked upon any hostname matching ""www."" or ""ftp."" at the beginning. It pre-pends 'http://' and makes the link clickable (i.e. wraps it in <a href="""">).

As a default that makes sense for things beginning www. - but not for everything beginning ftp.

In my case, I was using the plugin WP Better Emails, and sent out an email with this line (approx):

`Here is the FTP server: ftp.example.com`

WP, by default, ""helpfully"" totally mangles this into:
`Here is the FTP server: <a href=""http://ftp.example.com"">http://ftp.example.com</a>`

The recipient of my email now believes that I was sending him an HTTP link, and is confused that it does not work. But in fact I never sent such a link - that was WordPress mangling what I did send.

Sure, some FTP servers will also have HTTP listening. But by default WordPress assumes that they all do, which is crazy.

Proposed solution: on line 1471 of wp-includes/formatting.php (as found in 3.4.2), change:
{{{
$ret = preg_replace_callback( '#([\s>])((www|ftp)\.[\w\\x80-\\xff\#$%&~/.\-;:=,?@\[\]+]+)#is', '_make_web_ftp_clickable_cb', $ret );
}}}
by removing the ""ftp"" case, hence:
{{{
$ret = preg_replace_callback( '#([\s>])((www)\.[\w\\x80-\\xff\#$%&~/.\-;:=,?@\[\]+]+)#is', '_make_web_ftp_clickable_cb', $ret );
}}}
The function _make_web_ftp_clickable_cb should then be renamed by removing ftp_, since the case of turning FTP hostnames into clickable HTTP links would have been removed.",DavidAnderson
22971,Don't work quotes auto closing in that case,,Formatting,3.5,normal,minor,Awaiting Review,defect (bug),reopened,,2012-12-17T12:06:43Z,2012-12-18T13:33:41Z,"Hello, use latest wordpress version - 3.5.

If I enter


{{{
""My Simple Text""
}}}
to wordpress text editor - all right quotes close automatically and it will have view:
«My Simple Text»

But if I'll write 
{{{
""My Simple Text 2013""
}}}

It will have view:
«My Simple Text 2013""

conclusion: quotes auto closing don't work if string ends by numbers
",Stafox
3833,Extra </p> inside blockquote,Archibald Leaurees,Formatting,2.7,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2007-02-21T19:01:26Z,2012-09-10T22:08:20Z,"When using blockquote </p> is inserted directly in front of </blockquote>, making the code invalid XHTML.

Example:
{{{
<blockquote>This is a blockquote</blockquote>
}}}

Gives the following result:
{{{
<blockquote>This is a blockquote</p></blockquote>
}}}

Seems like [http://wordpress.org/support/topic/106474 this forum thread] adresses the same issue in the support forum.",audwan
18664,Formatting/Cleanup for wp-admin/includes/class-wp-posts-list-table.php,westi,Formatting,,lowest,trivial,Future Release,defect (bug),reviewing,has-patch,2011-09-14T20:57:51Z,2011-10-12T17:13:19Z,"wp-admin/includes/class-wp-posts-list-table.php is extremely hard to read.

Created this ticket to move conversation/patches for cleanup out of #17958",DH-Shredder
14674,HR destroys HTML,,Formatting,3.0.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-08-23T15:03:15Z,2012-09-14T22:57:46Z,"if you add <hr /> to the post (via HTML editor, or via enhanced TinyMCE editor) followed by normal text id do not add the <p> for that paragraph, but add the finishing </p>

so it than looks like

<p>some text</p>
<hr>some other text</p>

it can be solved by adding extra line break after <hr> but after reediting the post, the linebreak disapears and must be added again. ",thomask
17105,HTML 5.0 support,azaozz,Formatting,3.2,normal,normal,Future Release,defect (bug),new,,2011-04-10T19:11:46Z,2012-05-30T22:58:25Z,"All HTML 5.0 block tags have been added in both versions of wpautop(), even tags that aren't fully supported in any browser yet and as of [17625] TinyMCE recognizes all HTML 5.0 tags too.

This ticket is for correcting issues with the HTML 5.0 support in WordPress' general workflow (writing, editing, formatting) and writing testcases for it.",azaozz
23185,Hyphens surrounded by non-breaking spaces are not texturized,,Formatting,2.8,normal,normal,Awaiting Review,defect (bug),new,has-patch,2013-01-11T20:13:11Z,2013-01-14T01:45:52Z,"Thanks to Ticket #8161, a single hyphen or double hyphen surounded by space is converted to an en-dash or em-dash, respectively.

The problem is this conversion doesn't take place as expected when the space immediately before or after the affected hypehns is a non-breaking space.

Example paste the following into a post as HTML and view it in a browser after texturization:
{{{
Line 1&nbsp;-&nbsp;Non-breaking spaces around the hyphen.<br>
Line 2 - Regular spaces around the hyphen.<br>
Line 3&nbsp;- Non-breaking space before the hyphen.<br>
Line 4 --&nbsp;Non-breaking space after the double-hyphen.<br>
Line 5 -- Regular spaces around the double-hyphen.
}}}
Only the lines where ""Regular spaces"" are around the hyphens get converted as expected.Lines 1, 3, and 4 are not converted to match their regular-space counterparts.

It's reasonable to use non-breaking spaces in web content and I think that for situations where a non-breaking space is used it should imply the same kind of texturization for the hyphens as a regular space does.

The attached patch removes the static replacement rules for hyphens and adds dynamic rules to meet this expectation. I had to add a dynamic rule '--' to prevent it being prematurely converted in the static phase, when it was surrounded by appropriate spacing. Since I havd to move that one from static to dynamic, it made sense to me to just have all the hyphen-conversion behavior in one place in dynamic.
",redsweater
15006,Invalid Content Markup,,Formatting,3.0,normal,minor,Future Release,defect (bug),new,,2010-10-01T13:48:12Z,2011-01-13T06:29:30Z,"I have a page post that starts like this:

{{{
<p style=""text-align: right;"">Text Here</p>
<p style=""text-align: right;""></p>
More Text Here
}}}

The HTML source saves correctly, but the page output omits the closing tag for the second P element, causing the rest of the page to be invalid.

If you have any trouble reproducing this I will be happy to debug it on my server.",miqrogroove
16495,Make iso8601_to_datetime a bit more compliant,,Formatting,3.0.5,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-02-08T19:37:09Z,2011-03-16T07:21:44Z,"With a valid ISO 8601 date string with dashes in the date or decimal fractions for seconds, this function will fail to parse it correctly. The attached patch updates the regex to optionally accept dashes and decimal fractions for seconds (which are ignored). It also uses a variable for the regex since it was duplicated.",chrisscott
4857,More issues with wpautop(),mdawaffe*,Formatting,2.3,low,normal,Future Release,defect (bug),accepted,needs-unit-tests,2007-08-29T06:47:01Z,2009-11-28T06:33:01Z,"''Not sure if this should slide into 2.3 or if it can wait for 2.4. Change as need be.''

`wpautop()` has issues with closing `</p>`'s when it comes to HTML.

For example:

{{{
Foo<div>Bar</div>
}}}

Results in:

{{{
<p>Foo
<div>Bar</div>
}}}",Viper007Bond
8775,Numbers in quotation marks get wrong smart quotes,,Formatting,2.8,normal,normal,Future Release,defect (bug),reopened,needs-unit-tests,2009-01-01T18:05:14Z,2013-05-01T15:41:31Z,"Have a number in quotation marks, such as {{{""12345""}}} or {{{'12345'}}} and {{{wptexturize}}} converts the right quotation mark to double-prime and prime marks, respectively.

Patch fixes.",filosofo
20342,Opening Double Quote after 3 hyphens converted to double closing quote,,Formatting,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-04-01T20:16:05Z,2012-04-01T20:16:05Z,"The string:

{{{
<p>I also remember the line in ""Casey at the Bat"" when he struck out---""There is no Joy in Mudville!!!""</p>
}}}

is converted to this in WordPress 3.3.1:

{{{
<p>I also remember the line in &#8220;Casey at the Bat&#8221; when he struck out&#8212;&#8221;There is no Joy in Mudville!!!&#8221;</p>
}}}


Seems to be what should be an opening quote that follows an Em dash is always converted into a closing quote.",PetesGuide
20943,Paragraphs get removed in table cells when Visual editor is refreshed,,Formatting,3.2,normal,normal,Awaiting Review,defect (bug),new,needs-unit-tests,2012-06-13T19:06:04Z,2013-04-18T16:14:03Z,"As far as I know, this issue has been around since 3.1.  It's not a bug in 3.0.4.  I even stopped upgrading at 3.0.4 for any sites where I knew the client would need to edit tabular data.  For security reasons, it's time to upgrade these and I'd REALLY like this issue to be fixed.

The problem happens when using paragraphs in a table cell.  When I hit enter to create a new paragraph within a table cell, it looks fine.  If I then hit Update/Publish, when the page refreshes, WordPress converts that paragraph break into a single line break.  If I then click Update again, WordPress removes that linebreak entirely and the paragraphs are essentially merged.

I can also reproduce this behaviour without even clicking Update.  If you just switch to HTML mode and then back to Visual mode, the same issue occurs.",JboyJW
14491,Quotation mark broken after ciphers,,Formatting,3.0.1,normal,normal,Future Release,defect (bug),new,,2010-07-31T09:26:39Z,2010-11-28T03:26:14Z,"As a default bug in Wordpress, quotation marks like the following ones don't work if they are positioned after ciphers/digits:
{{{
&#8242;
}}}
{{{
&#8217;
}}}
The problem is that after the digits the HTML special chars are actually '''not''' like the ones posted above. After ciphers/digits, the following source code shows us:


{{{
&#8220;2010&#8242;
}}}

{{{
&#8217;2011&#8242;
}}}

'''''Here's the solution like it should be in the source code:'''''

{{{
&#8220;2010&#8221;
}}}

{{{
&#8217;2011&#8217;
}}}",Dannny
20124,Smilies Fail Combinations,,Formatting,3.3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-02-25T22:34:25Z,2012-02-26T12:37:54Z,"I have found that certain combinations of smilies break the monster of a regular expression that parses them.

{{{
8-O :-(]
8-) 8-O
8-) 8O[
8-) :-(
8-) :twisted:
8O :twisted: :( 8-( :(
}}}


...are some examples where the regular expression appears to be failing to match. Any smilie after a smilie with an 8 in it appears to be skipped. Will try to pinpoint the flaw in the regexp soon.",soulseekah
12690,Square brackets breaking links that contain square brackets,,Formatting,,normal,normal,Future Release,defect (bug),reviewing,dev-feedback,2010-03-24T19:16:50Z,2012-09-19T22:40:34Z,"In the editor, wrapping square brackets around an anchor with a URL that contains square brackets, like so

{{{
[photos by <a href=""http://www.etsy.com/view_listing.php?listing_id=42936748&amp;ref=sr_gallery_7&amp;&amp;ga_search_query=keep+calm+and+carry+on&amp;ga_search_type=handmade&amp;ga_page=13&amp;includes[]=tags&amp;includes[]=title"">KeepCalmPosters</a> ]
}}}

converts the last double prime in the href attribute to the character code for the right double quotation mark, like so

{{{
[photos by <a href=""http://www.etsy.com/view_listing.php?listing_id=42936748&amp;ref=sr_gallery_7&amp;&amp;ga_search_query=keep+calm+and+carry+on&amp;ga_search_type=handmade&amp;ga_page=13&amp;includes[]=tags&amp;includes[]=title&#8221;>KeepCalmPosters</a> ]
}}}",iandstewart
20304,Strikethrough does not work for multiple paragraphs in the post editor,,Formatting,3.4,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2012-03-25T20:13:00Z,2012-05-24T07:32:15Z,"'''Overview'''

If you have multiple paragraphs of text in the text editor and select all of them and push the strikethrough button, the text appears to be striked through; however, upon publishing/updating, only the first paragraph of text retains the strikethrough.

'''Steps to Reproduce'''

1) In a new post write screen add two paragraphs of text.

2) Select all of the text

3) Click the strikethrough button

4) Viewing the HTML of the rich text editor through web inspector (note that I am not toggling the visual/html tabs) shows:


{{{
<del>
	<p>text</p>
	<p>text</p>
</del>
}}}


5) Save post 

6) The text in the textarea only has strikeout for the first paragraph.

7) When viewing the source of the content on the front end, you get the following HTML:


{{{
<p>
	<del>text
</p>
<p>text</p>
<p>
	</del>
</p>
}}}


'''Other Information'''

I have tried these same steps on a clean install of 3.3.1. The strikethrough works as expected, and produces in all scenarios:


{{{
<p>
	<del>text</del>
</p>
<p>
	<del>text</del>
</p>
}}}

		
I first had this issue crop up for a .com client approximately 3-4 weeks ago, so this issue may have been introduced with a more recent patch.",tollmanz
22823,Texturize should handle apostrophes before primes,,Formatting,3.4.2,normal,minor,Future Release,defect (bug),new,has-patch,2012-12-08T04:48:06Z,2013-02-26T07:14:59Z,"Not sure if anyone else noticed this, but my recent post on make/core exhibited an odd bug in wptexturize() —

{{{
The new target for WordPress 3.5′s release is Monday
}}}

Note how that's a prime — `&#8242;` — rather than an apostrophe, `&#8217;`.

Switching the rules seems to work without breaking any unit tests.",nacin
21689,Unbalanced <p> tags are generated when shortcodes are followed by HTML tags and wpautop is enabled,,Formatting,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-26T06:58:21Z,2013-03-07T03:42:49Z,"This bug was encountered in separate plugins, but it seems that its source is in the core:

http://wordpress.stackexchange.com/questions/21414/wordpress-wpautop-shortcode-generating-invalid-markup

https://github.com/pods-framework/pods/issues/271",dandv
6297,Unbalanced tags across more and nextpage tags,,Formatting,2.5,normal,normal,Awaiting Review,defect (bug),reopened,has-patch,2008-03-19T09:55:50Z,2013-04-26T11:39:08Z,"It's easy to produce broken front page markup by including a --nextpage-- tag that breaks an enclosing bold or italic tag.  There's some code in get_the_content that fixes this for --more-- tags, but it doesn't handle --nextpage--, and it'd be more efficient to do it at post save time.

The enclosed patch fixes this by splitting the content into slices at those boundaries and separately balancing each slice.  Balancing happens in the content_save_pre action.  No filtering is needed on the output side for posts saved after this filter.

It was a bit of a struggle figuring out where to fit this but I think the solution is fairly clean.  It includes a new split_nextpage() function that can be used instead of ad-hoc regexps for splitting a post into pages.

",tellyworth
22230,WP adds <br /> before <select even where there is no line break in source code,,Formatting,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-10-19T21:49:26Z,2013-01-31T11:24:25Z,"My source code in the WP HTML editor:

{{{
<label for=""sellby"">How soon do you need to sell?</label><select id=""sellby"" name=""sellby"" required=""1"">
}}}

Note how there is *no line break* between </label> and <select

HTML generated by WP, however:

{{{
<label for=""sellby"">How soon do you need to sell?</label><br />
<select id=""sellby"" name=""sellby"" required=""1"">
}}}

Um, how (and why?) did that extra <br /> get in there?

This also happened when I was using the Visual editor; switched to the HTML editor to see if it was an error on my part but nope - there is no line break whatsoever in my HTML source code, so I have no idea why WP insists on adding one.

It's particularly vexing because I would like my text label to be next to (on the same line as) my select boxes, but WP is forcing it to be on the next line, which is making my form look awful.

AFAIK it's only happening with select boxes, but it's pretty consistent for me.

Since it's happening with the HTML editor as well as the Visual editor I left the Component as General so better minds than mine can categorize it appropriately.",chirael
18136,WordPress Adding Spurious </p>,,Formatting,,normal,normal,Awaiting Review,defect (bug),reopened,,2011-07-15T22:03:38Z,2012-11-14T02:06:32Z,If you look at this page: https://singpolyma.net/2011/06/dystoparx-part-12/ WordPress seems to be adding extra </p> tags before the </div>s  This causes major well-formedness problems on the page.,singpolyma
15367,WordPress strips multiple line breaks inside of <pre> tags,garyc40,Formatting,3.1,normal,normal,Future Release,defect (bug),assigned,has-patch,2010-11-10T01:39:33Z,2012-09-12T19:49:52Z,"Write a post:

{{{
<pre>
This


is




a
test.
</pre>
}}}

You end up with this:

{{{
<pre>
This

is

a
test.
</pre>
}}}

Probably related to `wpautop()` I imagine.",Viper007Bond
10645,auto_p and forms,,Formatting,,low,normal,Future Release,defect (bug),new,,2009-08-18T16:53:40Z,2010-11-13T01:38:14Z,"auto_p will errantly injects paragraph and linebreak tags in certain circumstances within forms:

`<div>
<label for=""select_element"">This is a select box placed <select name=""select_element""><option value=""1"">inline</option</select> with the label.</label>
</div>`

becomes:

`<div>
<label for=""select_element"">This is a select box that is pla­ced<br />
<select name=""select_element""><option value=""1"">inline</option><option value=""2"">inside</option><option value=""3"">within</option></select>

<p>inline with the label.</label>
</div>`

linebreak and paragraph tags should never be inserted inside a label. In this case they are not even properly paired.  It would be nice if the surrounding div was identified and no tags were inserted, although if a paragraph tag wrapped the whole thing, it would not be the end of the world.
",kingjeffrey
11202,automatic line breaks in comments,,Formatting,2.8.5,low,normal,Future Release,defect (bug),new,,2009-11-20T18:47:50Z,2010-04-02T07:34:29Z,"WordPress 2.8.6 has got a Problem with the automatic line break. [[BR]]
Example:[[BR]]
Type the following comment in a WordPress Blog. 
{{{
Thank you for your comment!<blockquote>this is a small quote</blockquote> Next Text 
}}}
Then you have to save the comment. If you validate the your publish, you will see, that the sentence ""Thank you for your comment!"" will be put into the following absurd tags: [[BR]]

{{{
p>Thank you for your comment!<br />
}}}

If you write a comment with the following code (hit return after the word ''comment! ''),[[BR]]

{{{
Thank you for your comment! 
<blockquote>this is a small quote</blockquote> Next Text 
}}}
you will get the right codeform when you validate your comment:
{{{
<p>Thank you for your comment!</p> 
}}}

The same Problem exists when you type [[BR]]

{{{
test 2 <p> break </p> next text
}}}
After the word ''test 2'' you will miss the </p>. [[BR]]

WordPress has got this bug with every single elements like these one: 

{{{
<p>, <ul>, <ol>, <li>, <h1> bis <h6>, <div>, <blockquote> etc.
}}}

When you make manuell a new line in front of these elements, you won't find any problem, so WordPress must put an automatic line break in front of these elements and it doesen't do it. Please fix this nerved bug!!

regards, Dunkelangst from http://www.dunkelangst.org/ ",Dunkelangst
17571,bad double quote replacement  in wp_texturize,,Formatting,,normal,minor,Future Release,defect (bug),new,dev-feedback,2011-05-26T09:18:08Z,2012-04-30T12:49:51Z,"Bug seen in  Wordpress 3.1.2. with buddypress 1.2.8

Some database fields that contain a string like this 'a string with \""escaped double quotes\""' are displayed this way : 'a string with >>escaped double quotes>> ' instead of 'a string with <<escaped double quotes>>'

The bug come from wp_texturize function in wp-includes/formatting.php .

I join a patch to resolve this issue.


",csanquer
23757,"convert_smilies should not convert in pre,code tags",,Formatting,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-03-13T14:26:07Z,2013-03-14T11:22:31Z,"This related to this ticket [[BR]]
#23756

The purpose to this ticket is to make writing codes in posts more easier !!
",alex-ye
16859,esc_url eats square brackets.,westi*,Formatting,3.1,normal,minor,Awaiting Review,defect (bug),accepted,dev-feedback,2011-03-15T17:28:32Z,2013-02-19T12:30:30Z,"When adding a link to the blogroll (using wp-admin/link-add.php), square brackets in the link are removed, breaking the link.

Example:

{{{
http://lokale-wochenzeitungen.de/index.php?id=485&tx_ttnews[pointer]=6&tx_ttnews[tt_news]=132583&tx_ttnews[backPid]=741&cHash=ee9c87874b
}}}

becomes

{{{
http://lokale-wochenzeitungen.de/index.php?id=485&tx_ttnewspointer=6&tx_ttnewstt_news=132583&tx_ttnewsbackPid=741&cHash=ee9c87874b
}}}

Workaround: Use URL-encoded links (%5B and %5D instead of [ and ]).

This also affects urls which are made clickable by {{{make_clickable}}",f00f
23605,esc_url() strips spaces instead of encoding them,,Formatting,,normal,normal,Awaiting Review,defect (bug),new,,2013-02-25T17:41:21Z,2013-02-27T23:56:38Z,"If I pass a URL into `esc_url()` that contains a space, the space is stripped instead of encoded.

To reproduce:

{{{
$url = 'http://example.com/foo bar/';

echo '<pre>';
var_dump( $url );
var_dump( esc_url( $url ) );
echo '</pre>';
}}}

The resulting URL ends up as `http://example.com/foobar/` instead of the expected `http://example.com/foo%20bar/`",johnbillion
23975,force_balance_tags in get_the_content breaks non-HTML formats,,Formatting,2.8,normal,normal,Awaiting Review,defect (bug),new,,2013-04-07T10:05:44Z,2013-04-07T10:58:50Z,"The change in r11398 (to fix #9765) breaks Markdown formatted articles that use angle bracket links: `<http://example.com/>` turning it into `<http: //example.com></http:>`.

If we call force_balance_tags after adding the more link, we need to establish filter hooks for formatters. This should have happened before r11398 already, but because balancing tags wasn't forced, this issue has not affected sites that disable balancing tags in their preferences.

Typically formatters attach to the `the_content` filter (among others). This should probably change into a `get_the_content` filter (similar to `get_the_excerpt`) that is called early on the full content of the post.

I haven't yet decided where the best place for the new filter would, or if it would be better to undo the force_balance_tags call.

Thoughts? I could work on the change, but would rather prefer some input first.",ruckus
10041,like_escape() should escape backslashes too,,Formatting,2.8,high,normal,Future Release,defect (bug),reopened,has-patch,2009-06-05T11:18:16Z,2013-04-16T17:04:06Z,"The like_escape() function doesn't escape backslashes.

source:trunk/wp-includes/formatting.php@11518#L2260
{{{
	return str_replace(array(""%"", ""_""), array(""\\%"", ""\\_""), $text);
}}}
should be ...
{{{
	return str_replace(array(""\\"", ""%"", ""_""), array(""\\\\"", ""\\%"", ""\\_""), $text);
}}}
or simply ...
{{{
	return addcslashes($text, '%_');
}}}

Considering multi-byte characters ...
{{{
	if (function_exists('mb_ereg_replace')) {
		$text = mb_ereg_replace('\\\\', '\\\\', $text);
		$text = mb_ereg_replace('%', '\\%', $text);
		$text = mb_ereg_replace('_', '\\_', $text);
		return $text;
	} else {
		return addcslashes($text, '%_');
	}
}}}",miau_jp
17433,localhost is not accepted as email domain,,Formatting,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-05-14T16:55:52Z,2013-02-28T11:52:59Z,"Hi. Tried to install WordPress on a Debian machine not connected to Internet, only for testing purposes, so when the setup procedure asked me for an email address, I used mylogin@localhost. The setup procedure, however, rejected this as ""invalid"".

I think the bug is exactly in wp-includes/formatting.php, where it says:

        // Assume the domain will have at least two subs
        if ( 2 > count( $subs ) ) {
                return apply_filters( 'is_email', false, $email, 'domain_no_periods' );
        }

So: Could you please special-case ""localhost"" in is_email() so that it's allowed as email domain?

I guess the probability of someone using @localhost for email ""by mistake"" is extremely low, so this change will unlikely harm the average user.

Thanks.",sanvila
19028,make_clickable fails when <a ...> contains \r characters,,Formatting,3.2.1,normal,minor,Awaiting Review,defect (bug),reopened,needs-unit-tests,2011-10-22T07:00:35Z,2011-11-02T00:34:43Z,"Hi.

I'm using the make_clickable php function in my project SaltOS to add the links feature to the email client and feeds reader.

I detect that when try to make clickable the urls that has the link tag and this tag contains \r characters it fails.

I fixed the problem removing all \r of the <a ...> tag but understand that can be a possible bug.

Thanks in advance.",josepsanzcamp
23050,make_clickable incorrectly formats anchors with URL's and spaces in them in comments,,Formatting,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-23T00:32:30Z,2012-12-23T16:27:36Z,"When posting a comment, if an anchor tag contains both a URL and some words, make_clickable formats the output incorrectly.

To duplicate, post the following content in a comment:

{{{
Hey! <a href=""http://wordpress.org"">http://wordpress.org is awesome</a> in case you didn't know!
}}}

When viewing the comment, you'll get:

{{{
Hey!
<a href=""#"" rel=""nofollow""></a>
<a href=""http://wordpress.org"" rel=""nofollow"">http://wordpress.org</a> is awesome in case you didn't know.
}}}",johnjamesjacoby
23308,"make_clickable problem with multiple ""Punctuation URL character""",,Formatting,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-01-28T15:09:59Z,2013-01-28T15:09:59Z,"make_clickable problem with multiple ""Punctuation URL character""

E.g.
{{{
http://www.wordpress.org/some-(parentheses).html
}}}
Results in this html code:
{{{
<a href=""http://www.wordpress.org/some-(parentheses)"" rel=""nofollow"">http://www.wordpress.org/some-(parentheses)</a>.html
}}}
But obvious should be:
{{{
<a href=""http://www.wordpress.org/some-(parentheses)"" rel=""nofollow"">http://www.wordpress.org/some-(parentheses).html</a>
}}}

I suggest to replace:
wp-includes/formatting.php:1603
{{{
[\'.,;:!?)]  # Punctuation URL character
}}}
with
{{{
[\'.,;:!?)]{1,}  # Punctuation URL character
}}}",DrPepper75
23756,"make_clickable should not convert the URLs in pre,code tags",,Formatting,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-03-13T14:17:36Z,2013-03-14T10:44:29Z,"Hi , Maybe it's a duplicate ticket but I tried to search in history.

Anyway , The purpose of this ticket is to have a clean snippet code posts .. for now it's hard to do it by plug-in .. and many people remove make_clickable filter at all !

So let's make it possible in 3.6 :)",alex-ye
23922,make_clickable() breaks when colon in hash,,Formatting,,lowest,minor,Awaiting Review,defect (bug),new,needs-unit-tests,2013-04-03T00:41:39Z,2013-04-03T19:31:00Z,"`make_clickable()` doesn't like this string:

{{{
<a href=""http://en.wikipedia.org/wiki/URI_scheme#tel:"">http://en.wikipedia.org/wiki/URI_scheme#tel:</a>
}}}

It results in this HTML:

{{{
<a href=""http://en.wikipedia.org/wiki/URI_scheme#tel:""><a href=""http://en.wikipedia.org/wiki/URI_scheme#tel"" rel=""nofollow"">http://en.wikipedia.org/wiki/URI_scheme#tel</a>:</a>
}}}

Specifically it's the colon that is causing the issue. It can be a part of the URL too, it doesn't have to be a part of an anchor.",Viper007Bond
15046,places where the_title is used instead of the_title_attribute,,Formatting,2.3,normal,minor,Awaiting Review,defect (bug),new,has-patch,2010-10-06T08:34:31Z,2011-03-19T15:09:52Z,"[context]
Semantic-web/metadata related plugins popups more and more.
There is no way to filter according to specific tasks (semantic, style, content, ...)
So monolithic the_title and the_author filters are increasingly used.

the_title_attribute [6132] and the_author_meta [11138] partly address the issue
[/context]

Here are the places where the 'content'-oriented function should be used instead of the 'display'
or 'semantic'-oriented versions (often in the 'title' attribute of <a>) :

default-widgets.php, author-template.php and twentyten/functions.php (patches attached)
",drzraf
24157,safecss_filter_attr doesn't allow rgb() in inline styles,,Formatting,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-04-22T16:30:45Z,2013-04-22T16:30:45Z,"I thought there should be a ticket somewhere, but I couldn't find it!

So, `safecss_filter_attr` (which is used in `wp_kses` etc, does not allow inline styles that include rgba() etc, like his:

{{{<span style=""background: rgb(0,0,0)""></span>}}}

I am not sure if this is intended, though not sure why it would be, there is a comment in `safecss_filter_attr`

{{{if ( preg_match( '%[\\(&=}]|/\*%', $css ) ) // remove any inline css containing \ ( & } = or comments}}}
",joehoyle
14050,shortcode_unautop() should also remove the <br /> added after shortcodes,,Formatting,3.0,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-06-22T18:15:27Z,2013-01-19T08:38:00Z,"Currently `wpautop()` wraps a shortcode in `<p>` tags as well as adding a `<br />` tag after the shortcode. We then use `shortcode_unautop()` to remove the `<p>` tags, but the `<br />` stays.

To replicate, just drop a few caption shortcodes into a post and set them all to align left or right. You'll see that even though they all float (assuming that's how your theme handles them) they stair step down because of the extra `<br />`

I'm not a regex expert so someone should probably double check my patch, but it seems to work for me.",aaroncampbell
17039,the_excerpt() - <!--more--> handling,,Formatting,3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-04-03T22:15:48Z,2011-12-23T17:13:50Z,"If a post has a manually inserted <!--more--> ''before'' the default break at the excerpt length, then the_excerpt() fails to generate any [...] or call the ""excerpt_more"" filter. Thus, there is no indication that there is more content to the post.",wpweaver
17847,wp_kses_hair is too stringent,,Formatting,1.5,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-19T21:29:46Z,2011-11-17T20:38:47Z,"attributes from custom xml name spaces may use colons, but the regex used inside wp_kses_hair doesn't allow them through.  ",jorbin
19877,wp_kses_stripslashes() should account for single quotes too,,Formatting,3.3.1,normal,normal,Awaiting Review,defect (bug),new,close,2012-01-23T14:17:48Z,2012-10-12T20:36:43Z,"Right now, wp_kses_stripslashes() only removes slashes before double quotes, but should do the same for single quotes. 

For example, if wp_kses() is applied to the following string (assuming <script> tags are permitted), the <script> tag's attributes are removed:

<script type='text/javascript' src='foo.js'></script>


If the single quotes are switched to double quotes, the attributes are properly sanitized against the list of allowed tags passed to wp_kses(). Updating wp_kses_stripslashes() to account for both types of quotes eliminates the need to strip slashes before applying wp_kses().",ethitter
15657,wp_strip_all_tags causes paragraphs to run together,,Formatting,2.9,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2010-12-03T06:05:40Z,2011-12-27T20:49:30Z,"If a post contains HTML like ""foo<p>bar"", the RSS feed ends up with the text ""foobar"" instead of the more appropriate ""foo bar"" or even ""foo\n\nbar"".

Here is a simple patch to wp-includes/formatting.php that fixes this: basically, convert <p>, <br> and certain similar tags to newlines before calling the PHP-builtin strip_tags() function.
",jwz
18549,wp_texturize incorrectly curls closing quotes after inline HTML end tags,,Formatting,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-08-30T21:54:26Z,2013-03-22T13:39:47Z,"The following source HTML:
{{{
The word is ""<a href=""http://example.com/"">quoted</a>"".
The word is '<a href=""http://example.com/"">quoted</a>'
The word is '<a href=""http://example.com/"">quoted.</a>'
The word is '<a href=""http://example.com/"">quoted</a>'.
The word is '<a href=""http://example.com/"">quot</a>'d
}}}

Gets incorrectly transformed by wp_texturize() as:
{{{
The word is &#8220;<a href=""http://example.com/"">quoted</a>&#8220;.
The word is &#8216;<a href=""http://example.com/"">quoted</a>&#8216;
The word is &#8216;<a href=""http://example.com/"">quoted.</a>&#8216;
The word is &#8216;<a href=""http://example.com/"">quoted</a>&#8216;.
The word is &#8216;<a href=""http://example.com/"">quot</a>&#8216;d
}}}
'''Note:''' all the double/single quotes in the above examples that should be closing are instead opening)

This renders in the browser like this:
{{{
The word is “quoted“.
The word is ‘quoted‘
The word is ‘quoted.‘
The word is ‘quoted‘.
The word is ‘quot‘d
}}}

The problem here is that wp_texturize splits the text on all start/end tags, which makes sense for block-level tags, but not inline-tags like {{{<em>}}} and {{{<a href="""">}}}.

formatting.php line 67:
{{{
$textarr = preg_split('/(<.*>|\[.*\])/Us', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
}}}

However if you change it to only split the content on block-level tags, you'll need something more sophisticated/complex than a regular expression to avoid curling quotes within html.",justincwatt
4116,wp_texturize to defect certain links in comments and on page,Nazgul,Formatting,2.2.1,normal,normal,Future Release,defect (bug),reopened,needs-unit-tests,2007-04-09T13:29:33Z,2010-11-23T04:53:07Z,"the wp_texturize() function in formatting.php (includes) of wordpress breaks links of the domain format (number)x(number). 

For example, a comment left by a domain such as www.h4x3d.com, which includes the (4)x(3) in the domain name, renders to www.xn--h43d-rma.com. This breaks the link.

It does occur on the page, but also with in the page comments. 
It does also occur when the text with the special combination is not a link, but plain text.",h4x3d
20444,wpautop acts on a single line of text,,Formatting,,normal,normal,Awaiting Review,defect (bug),new,,2012-04-15T03:02:06Z,2012-10-10T14:11:40Z,"HTML markup on a single line wrapped in a block element is interpreted and changed by wpautop. The wpautop function is described as replacing ""double line-breaks with paragraph elements"" which led me to expect the single line would not become many lines.

{{{
echo wpautop( '<div><p>Hello world</p><span>WordPress</span></div>' );
}}}

{{{
<div>
<p>Hello world</p>
<p><span>WordPress</span></div>
}}}

Extra <p> before the <span>.

I expected wpautop would find no newlines and return the original string.

The same string placed inside a HTML5 or XHTML 1 Strict document <body> is parsed as valid by W3C Validator.

Plugins acting on the_content with a priority less than 10 may have their single-line markup reinterpreted by wpautop.",niallkennedy
2833,wpautop breaks style and script tags,,Formatting,2.0.3,low,normal,Future Release,defect (bug),reopened,needs-unit-tests,2006-06-17T20:36:00Z,2012-09-09T21:01:21Z,"When I create a post in which I want to include Javascript or some styles, WordPress 'breaks'when showing those posts, because all newlines in the SCRIPT and STYLE tag are converted into BR tags.

Example:
{{{
<style type=""text/css>
.matt { color: #FFFFFF; }
</style>
}}}
Becomes:
{{{
<style type=""text/css><br />
.matt { color: #FFFFFF; }<br />
</style><br />
}}}

And:
{{{
<script type=""text/javascript""><!--
google_ad_client = ""xxxxxxxx"";
google_ad_width = 120;
google_ad_height = 60;
google_ad_format = ""120x60_as_rimg"";
google_cpa_choice = ""CAAQ2eOZzgEaCD4zuVkdzt_CKI-293M"";
//--></script>
}}}
Becomes
{{{
<script type=""text/javascript""><!--<br />
google_ad_client = ""xxxxxxxx"";<br />
google_ad_width = 120;<br />
google_ad_height = 60;<br />
google_ad_format = ""120x60_as_rimg"";<br />
google_cpa_choice = ""CAAQ2eOZzgEaCD4zuVkdzt_CKI-293M"";<br />
//--></script><br />
}}}

This happens because wpautop adds those BR tags to the post. (As it should, just not within STYLE or SCRIPT tags.)

I've made a (temporary?) workaround for this by creating a pre and post event for wpautop, which substitute the necessary newlines by a temporary value in the pre event and placing them back in the post event. Although I think this should be incorporated in wpautop itself.

See also: http://wordpress.org/support/topic/76433 and http://wordpress.org/support/topic/76297

While searching trac I also found ticket #2346, which is about the same problem, but which was for 2.0 and self-closed by the submitter?

P.S. I have TinyMCE turned of.",Nazgul
4298,wpautop bugs,markjaquith*,Formatting,2.7,low,minor,Future Release,defect (bug),accepted,dev-feedback,2007-05-19T22:14:10Z,2010-04-04T06:42:21Z,"wpautop should at least ignore multiline html tags, and possibly ignore any area enclosed within html.

{{{
<table
 style=""width: 120px; height: 92px; text-align: left; margin-left: auto; margin-right: auto;""
 border=""1"" cellpadding=""7"" cellspacing=""2"">
  <tbody>
    <tr>
      <td><small><small style=""font-family: Arial;"">Once
I saw it here, I instantly knew what I wanted. I love my new woven wood
shades.</small></small><br>
      <small><small>- Ginny Good</small></small></td>
    </tr>
  </tbody>
</table>
}}}

gets formatted as:

{{{
<table<br />
 style=""width: 120px; height: 92px; text-align: left; margin-left: auto; margin-right: auto;""<br />
 border=""1"" cellpadding=""7"" cellspacing=""2""><br />
<tbody>
<tr>
<td><small><small style=""font-family: Arial;"">Once<br />
I saw it here, I instantly knew what I wanted. I love my new woven wood<br />
shades.</small></small><br /><br />
      <small><small>- Ginny Good</small></small></td>

</tr>
</tbody>
</table>
}}}

",Denis-de-Bernardy
15918,wpautop() breaks inline tags on the same line as block tags,dunno,Formatting,3.0.3,normal,major,Future Release,defect (bug),new,early,2010-12-20T16:01:31Z,2012-04-11T15:22:31Z,"Hi guys! I've got latest WP installation (3.0.3) and found strange bug in posts parser.

Create article with following HTML:

{{{
<div class=""wassup""><a href=""#"">WP IZ ASSUM</a></div>
}}}

Browser will get: 

{{{
<div class=""wassup""><a href=""#"">WP IZ ASSUM</a></div>
}}}

All seems to be fine! Now get rid of unnecessary div.

Create article with following HTML:

{{{
<a href=""#"">WP IZ ASSUM</a>
}}}

Browser will get: 

{{{
<p><a href=""#"">WP IZ ASSUM</a></p>
}}}

Dunno why there is extra <p> but who cares. All seems to be OK.

Create article with following HTML:

{{{
<figure><a href=""#"">WP IZ ASSUM</a>
</figure>
}}}

Browser will get:

{{{
<figure><a href=""#"">WP IZ ASSUM</a><br />
</figure>
}}}

Now isn't that cool? But check what is even cooler!

Create article with following HTML:

{{{
<figure><a href=""#"">WP IZ ASSUM</a>
<figcaption>NO IT'S BUGGY AS HELL</figcaption>
</figure>
}}}

Browser will get:
{{{
<figure><a href=""#"">WP IZ ASSUM</a></p>
<figcaption>NO IT’S BUGGY AS HELL</figcaption>
</figure>
}}}

Wow! Say hello to invalid markup and rendering problems! Auto-closing of tags turned off. No matter of the settings I still get this nice messed up html. WYSIWYG turned off also.",retrib
6984,wpautop() formats the the contents of shortcodes,,Formatting,2.6,low,trivial,Future Release,defect (bug),new,,2008-05-17T10:34:02Z,2009-11-28T07:20:24Z,"`wpautop()`, the bane of my existence as a plugin developer, is at it again.

Here's an example of some PHP wrapped in a valid shortcode in a post of mine:

{{{
[code lang=""php""]$text = str_replace( array('<p><p>', '</p></p>'), array('<p>', '</p>'), $text);[/code]
}}}

The content that gets passed to my shortcode function is this:

{{{
$text = str_replace( array('
<p>', '</p>

</p>
<p>'), array('
<p>', '</p>
<p>'), $text);
}}}

Expected result: it shouldn't touch the insides of valid shortcodes (like adding line breaks or anything as it is doing now).",Viper007Bond
5250,wpautop() issue with lists,,Formatting,2.3,normal,normal,Future Release,defect (bug),new,,2007-10-24T00:32:38Z,2011-07-30T15:34:50Z,"First of all, my sincere apologies if this is a duplicate.


The problem, in short: WordPress inserted a number of unclosed `<p>` tags into my post. It should either insert correctly closed tags, or none at all. I honestly would prefer the former.


In detail: I had HTML code very similar to this:

<ul>
  <li>text<ul>
    <li>subtext</li>
  </ul>more text</li>
</ul>


This was automatically converted to:

<ul>
  <li>text<ul>
    <li>subtext</li>
  </ul><p>more text</li>
</ul>

Note the extra `<p>` tag in the above, which is unclosed (making the W3C validator choke on my website).

Also note, I was not using the WYSIWYG editor (turning it off was the first thing I did), so it's unlikely to be due to that.


As a workaround, manually inserting properly closed `<p>` tags works just fine:

<ul>
  <li>text<ul>
    <li>subtext</li>
  </ul><p>more text</p></li>
</ul>

Since this workaround exists, the bug is not very prioritary, but it should also (hopefully) be easy to fix.",Narc0tiq
10033,wptexturize and wpautop problems with html comments and object tags,,Formatting,2.8,normal,minor,Future Release,defect (bug),new,,2009-06-04T12:06:35Z,2010-11-23T05:43:55Z,"Bumped into this one when upgrading my mediacaster plugin to use swfobject 2.1 (which is not 1.5 compatible), as documented here:

http://code.google.com/p/swfobject/wiki/documentation

I take it I'm not the only one who is going to need to upgrade a plugin. It's minor, since I'll just move the filter further down in the queue, but it's still worth reporting:

{{{
<object id=""m544cf9700db147f751dc34ea1241d8bd"" classid=""clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"" width=""320"" height=""260"">
<param name=""movie"" value=""http://www.youtube.com/v/_nkZ3eHeXlc"" />
<!--[if !IE]>-->

<object type=""application/x-shockwave-flash"" data=""http://www.youtube.com/v/_nkZ3eHeXlc"" width=""320"" height=""260"">
<!--<![endif]-->
<p><a href=""http://www.macromedia.com/go/getflashplayer"">Get Flash 9.0</a> to see this player.</p>
<!--[if !IE]>-->
</object>
<!--<![endif]-->
</object>
<script type=""text/javascript"">
//swfobject.registerObject(""m544cf9700db147f751dc34ea1241d8bd"", ""9.0.0"");
</script>

}}}

Gets turned into the following mess:

{{{
<object id=""m544cf9700db147f751dc34ea1241d8bd"" classid=""clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"" width=""320"" height=""260""><param name=""movie"" value=""http://www.youtube.com/v/_nkZ3eHeXlc"" /><!--[if !IE]>&#8211;><br />
<object type=""application/x-shockwave-flash"" data=""http://www.youtube.com/v/_nkZ3eHeXlc"" width=""320"" height=""260""><br />
<!--<![endif]--></p>
<p><a href=""http://www.macromedia.com/go/getflashplayer"">Get Flash 9.0</a> to see this player.</p>
<p><!--[if !IE]>&#8211;><br />
</object><br />

<!--<![endif]--><br />
</object><br />
<script type=""text/javascript"">
//swfobject.registerObject(""m544cf9700db147f751dc34ea1241d8bd"", ""9.0.0"");
</script>
}}}

So, two/three issues:

 - wpautop should also ignore double object tags, and html comments
 - wptexturize should ignore html comments",Denis-de-Bernardy
8912,wptexturize malforms HTML comments that contain HTML tags,,Formatting,2.7,normal,normal,Future Release,defect (bug),reopened,needs-unit-tests,2009-01-21T20:16:08Z,2013-03-18T15:01:17Z,"Because it's replacing -- with #8211, a comment like <!-- whatever --> put into the HTML part of a post gets broken.

This makes it difficult for people writing special HTML in posts (like people putting in object tags, or javascript, or whatever) to do that sort of thing.

What is needed is to recognize --> as different from -- and not replace it with the en dash in that case.
",Otto42
18575,wptexturize modifies code inside tag attributes,,Formatting,3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-09-02T22:36:25Z,2011-11-16T00:10:37Z,"In certain circumstances, wptexturize() will try to smart quote things inside attributes, screwing up the markup. For example:

{{{
[hello <a href=""foo[bar]('baz')"">world</a>
}}}

The tokenizer that generates $textarr will split the text like this:

{{{
0: [hello <a href=""foo[bar]
1:('baz')"">world
2:</a>
}}}

and so element 1 gets treated like non-tag text even though it's from an attribute. the easy fix is to not allow starting braces inside a brace set:

old:
{{{
$textarr = preg_split('/(<.*>|\[.*\])/Us', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
}}}

new:
{{{
$textarr = preg_split('/(<[^<]*>|\[[^\[]*\])/Us', $text, -1, PREG_SPLIT_DELIM_CAPTURE);
}}}

this happens on trunk. code is in wp-includes/formatting.php. after the patch, the tokenizer works as intended:


{{{
0: [hello
1: <a href=""foo[bar]('baz')"">
2: world
3: </a>
}}}
",iamcal
16957,wpuntexturize - problem with numbers and non-breaking spaces,,Formatting,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-03-24T10:21:33Z,2013-01-14T01:37:56Z,"1) Insert following code into HTML editor and publish.

{{{
New <strong>Year ""2011"" will be</strong> fantastic.
}}}

Then look at website:

{{{
<p>New <strong>Year &#8221;2011&#8243; will be</strong> fantastic.</p>
}}}

You can see wrong html quotes.

2) I also worked with TinyMCE editor (only writing simple text, paragraphs, strong, moving some parts of text by CTRL+C and CTRL+V). But after publishing, there were hidden non-breaking spaces in text. There were on different places, for example before ""("" and after characters ""."", ""í"", ""é"", etc. But they were random. I am not sure how it can be caused? Non-breaking strings were not visible and also not transformed into &nbsp; HTML entity on website. I noticed them only in HEX editor, when examining HTML source code (C2 A0).

Of course, when these non-breaking spaces were before (or after) quotes, then quotes were not recognized regurarly by wpuntexturize, example:

{{{
Nemám žádné ""úžasné"" schopnosti.
}}}

Is transformed by wpuntexturize into:


{{{
<p>Nemám žádné &#8221;úžasné&#8221 schopnosti</p>.
}}}

You can see wrong open quote:

{{{
instead of &#8220 there is &#8221;
}}}

But only when hidden non-breaking space (C2 A0) is between žádné a ""úžasné"".",pavelevap
10269,wysiwyg bug with shortcodes,,Formatting,2.8,low,minor,Future Release,defect (bug),reopened,close,2009-06-25T11:29:42Z,2012-10-01T17:40:41Z,"When inserting two consecutive shortcodes on separate lines, the wysiwyg editor will change the post's contents on save.

{{{
[caption /]

[caption /]
}}}

gets turned into:

{{{
[caption /] [caption /]
}}}

the odd thing is that only genuine shortcodes get changed, too. the following is left alone:

{{{
[notashortcode /]

[notashortcode /]
}}}

",Denis-de-Bernardy
12134,Add image dimensions to smiley img element,nacin,Formatting,3.0,normal,normal,Future Release,enhancement,reviewing,dev-feedback,2010-02-05T02:55:19Z,2011-02-09T06:10:45Z,All smileys are 15x15. Add dimensions to the img element to avoid a double paint by web browsers during page load.,niallkennedy
14102,Additional CSS class in wp_list_pages when a page has children,,Formatting,3.0,normal,normal,Future Release,enhancement,new,has-patch,2010-06-26T13:28:23Z,2010-12-06T20:35:17Z,"A great addition to the wp_list_pages function would be to add an extra CSS class of 'page_has_children' (or similar) to a list item for when it has child pages.

This would enable theme authors to style the list items with CSS to differentiate between those pages that have child pages, and those that don't at whatever depth you are viewing in really simple CSS.

Here is how it could be implemented in the WP3.0 codebase. I have simply amended the 'start_el' function as shown below.

'''FILE: wp-includes/classes.php - from line 1173'''

{{{

/**
 * @see Walker::start_el()
 * @since 2.1.0
 *
 * @param string $output Passed by reference. Used to append additional content.
 * @param object $page Page data object.
 * @param int $depth Depth of page. Used for padding.
 * @param int $current_page Page ID.
 * @param array $args
 */
function start_el(&$output, $page, $depth, $args, $current_page) {
	if ( $depth )
		$indent = str_repeat(""\t"", $depth);
	else
		$indent = '';

	extract($args, EXTR_SKIP);
	$css_class = array('page_item', 'page-item-'.$page->ID);
	
	//JA ADDITION START 1 of 2 - DETECT IF PAGE HAS CHILDREN START
	$has_children = wp_list_pages('&child_of='.$page->ID.'&echo=0');
	//JA ADDITION END 1 of 2 - DETECT IF PAGE HAS CHILDREN
	
	if ( !empty($current_page) ) {
		$_current_page = get_page( $current_page );
		if ( isset($_current_page->ancestors) && in_array($page->ID, (array) $_current_page->ancestors) )
			$css_class[] = 'current_page_ancestor';
		if ( $page->ID == $current_page )
			$css_class[] = 'current_page_item';

		//JA ADDITION START 2 of 2 - DETECT IF PAGE HAS CHILDREN START
		if ( !empty($has_children) )
			$css_class[] = 'page_has_children';
		//JA ADDITION START 2 of 2 - DETECT IF PAGE HAS CHILDREN END

		elseif ( $_current_page && $page->ID == $_current_page->post_parent )
			$css_class[] = 'current_page_parent';
	} elseif ( $page->ID == get_option('page_for_posts') ) {
		$css_class[] = 'current_page_parent';
	}

	$css_class = implode(' ', apply_filters('page_css_class', $css_class, $page));

	$output .= $indent . '<li class=""' . $css_class . '""><a href=""' . get_page_link($page->ID) . '"" title=""' . esc_attr( wp_strip_all_tags( apply_filters( 'the_title', $page->post_title, $page->ID ) ) ) . '"">' . $link_before . apply_filters( 'the_title', $page->post_title, $page->ID ) . $link_after . '</a>';

	if ( !empty($show_date) ) {
		if ( 'modified' == $show_date )
			$time = $page->post_modified;
		else
			$time = $page->post_date;

		$output .= "" "" . mysql2date($date_format, $time);
	}
}

}}}
",Jonnyauk
9306,Additional smart quote suggestion,,Formatting,,low,trivial,Future Release,enhancement,new,close,2009-03-09T05:09:36Z,2011-02-05T11:04:09Z,"If a user writes a post that contains a quotation inside parentheses, the open quote mark is not used. I suggest that when a quotation mark (double or single) is used after an open parenthesis, it should be a left-quote “ instead of a right quote ”. In order to be as complete as possible, it would probably be best to ensure that this is only done in the event that white space is used prior to the open parenthesis so as to prevent it printing the wrong one if, say, a sad-face smiley is used inside a quotation, like so:

'''''She told me, ""Aw, you make me a sad panda now. :(""'''''

If it's done so that it will only open the quote correctly after white space \s or a carriage return, I think that will cover the vast majority, if not all, of the situations where it would need to be used.",cloak42
19308,"C-style hexadecimal is incorrectly ""fixed"" to change the 'x' into a mathematical '×'",,Formatting,2.1,normal,normal,Awaiting Review,enhancement,new,needs-unit-tests,2011-11-21T00:39:00Z,2011-11-30T16:49:55Z,"Pretty much what the title says. I'm running trunk. ""0x07"" gets converted to ""0×07"".

I've attached a patch which fixes this issue by not performing the conversion if the first number starts with a zero -- this is not perfect, and I might have a go at something better when it's not 0030, if you guys decide this should be changed.

My $0.02 - since it's a bit odd to multiply zero by something, I don't think that very many people will expect/want this conversion to happen -- and the lack of conversion is unlikely to confuse those that do. 

On the other hand, this conversion is confusing for any blog post using this hex notation, and does make those posts actually wrong.

",harrym
6969,Don't apply wptexturize() to the insides of shortcode tags,tellyworth,Formatting,2.5.1,normal,normal,Future Release,enhancement,new,needs-unit-tests,2008-05-14T11:47:58Z,2011-05-31T08:45:13Z,"I have this for my post contents:

{{{
[code lang=""php""]$foo = 'bar';[/code]
}}}

The problem is my shortcode function gets this passed to it for the content string:

{{{
$foo = &#8216;bar&#8217;;
}}}

`wptexturize()` should be smart enough to not format the contents of registered shortcodes. If plugins want their contents formatted, they can pass the contents to the `wptexturize()` function itself.",Viper007Bond
23135,Filter for Block Elements in wpautop(),,Formatting,3.5,normal,normal,Awaiting Review,enhancement,new,dev-feedback,2013-01-07T16:21:44Z,2013-01-08T12:55:40Z,"This addresses the need to exclude certain block elements (iframe, img) from wpautop.  Using the newly defined filter '''wpautop_block_elements''' every plugin dev, theme dev etc. can redefine, modify and enhance the list of block elements. 

Exsample for functions.php
{{{
#!php
function add_block_elements($block_elements){	
	$block_elements[] = ""iframe"";	
	$block_elements[] = ""img"";	
	
	return $block_elements;
}
add_filter(""wpautop_block_elements"", add_block_elements);
}}}

Thanks for reviewing! :)

Regards,
Hendrik",luehrsen
20166,Function url_shorten() enhancement,,Formatting,,normal,normal,Awaiting Review,enhancement,new,has-patch,2012-03-03T23:03:47Z,2012-03-04T03:37:59Z,"The function url_open is included in the wp_admin/includes/misc.php and is not usable unless loaded. This is not loaded by default so not available site wide. Also, the function is very static as of right now in its use with no defined options. Options to set length of the shortened url and the ability to turn on off the cutting of the leading ""http://www"" and the trailing slashes are included in this patch.",mulvane
16790,Functional spec for wpautop,,Formatting,,normal,minor,Awaiting Review,enhancement,reviewing,,2011-03-07T22:06:30Z,2012-09-17T05:55:42Z,"I've put together an algorithm-based [http://www.mrclay.org/wpautop-functional-specification/ functional spec] that I hope could be useful in maintaining wpautop. Also might be handy is this combination of [http://code.google.com/p/mrclay/source/browse/trunk/tests/php/MrClay/AutoP/wpautop-fails.in.html wpautop failure cases].

The algorithm is based on work I've started on a DOMDocument-based implementation (a project I contribute to needs an MIT-licensed version), and although it's incomplete and slow, it does a bang-up job so far.

DOMDocument may just be too slow or strict in its parsing to allow the variety of markup that wpautop needs to accept, but it's ace at the level of surgical precision needed to do this right.",mrclay
16496,Make $sample_permalink_html human-readable on Edit Post screen,,Formatting,,normal,normal,Future Release,enhancement,new,has-patch,2011-02-08T19:40:23Z,2011-11-06T12:00:31Z,"If the permalink contains words with non-latin characters (for example the permalink structure is /%category%/%postname%/ and the assigned category is non-English) the $sample_permalink_html, which is echoed by [http://core.trac.wordpress.org/browser/branches/3.1/wp-admin/edit-form-advanced.php#L260 edit-form-advanced.php], is not human readable on Edit Post screen (below the title). The editable part of the permalink (the one that comes from the title of the post) ''is'' readable.

$sample_permalink_html should be urldecoded at some stage before echoed.

Screenshot attached.",linuxologos
18604,New hook for paginate_links() result,lightningspirit,Formatting,3.3,normal,major,Awaiting Review,enhancement,new,dev-feedback,2011-09-06T17:40:06Z,2012-04-27T23:28:53Z,"I'd like to propose two new hooks to paginate_links() in http://core.trac.wordpress.org/browser/trunk/wp-includes/general-template.php#L1950


This two hooks ''paginate_links_array'' and ''paginate_links_html'' will allow plugins to add, remove or alter html and links in admin pagination output, including the media uploader.


'''Background:''' sites with more than a thousand media objects have 140+ pages in media uploader interface. I had to be able to create a input box to enter page number manually.
",lightningspirit
19550,Please provide option to disable wptexturize entirely,,Formatting,3.3,normal,minor,Awaiting Review,enhancement,reopened,has-patch,2011-12-14T20:42:52Z,2012-01-04T16:53:05Z,"I assume this is controversial, but I want wptexturize to *always* be a no-op.  I know I'm not alone on this.  There exists a 3rd-party ""wpuntexturize"" plugin, but it is insufficient; even using that plugin, I keep running in to places where texturization is happening anyway.

Rather than making us play whack-a-mole with all the places it gets turned back on, can't we please just have a checkbox to disable it globally?

Alternately, if you would make wptexturize be a pluggable function, I could just re-define it.

As it is, with each new release, I am forced to modify the source to add ""return $text"" as the first line of the function.",jwz
10303,Provide better user feedback when content is changed by filters.,tott*,Formatting,,normal,normal,Future Release,enhancement,accepted,has-patch,2009-06-30T10:37:01Z,2013-01-22T01:03:33Z,"When filtering content via kses, adjusting bad nested xhtml or similar no feedback is given to the user. The content is just stripped and the user is not informed about the changes made and why they happened.

Presenting a diff in the admin message should increase the UX. ",tott
24106,Simplify wp_slash(),,Formatting,trunk,normal,normal,Awaiting Review,enhancement,new,has-patch,2013-04-16T19:37:12Z,2013-04-17T03:12:26Z,"[23416] added the function {{{wp_slash()}}} for the slashing sanitization in #21767.

[https://irclogs.wordpress.org/chanlog.php?channel=wordpress-dev&day=2013-04-16&sort=asc#m595515 According to ryan], it has been modelled after {{{$wpdb->prepare()}}}, and therefore uses a custom {{{foreach}}} loop with an {{{if}}}-check in it.
I suggest to instead model it after {{{stripslashes_deep()}}} and {{{urlencode_deep()}}} to simplify the function and make it better readable.

The attached patch also makes it clearer that this function works in a recursive manner.",TobiasBg
16448,Smilies should not be placed inside of pre or code tags,,Formatting,3.1,normal,normal,Awaiting Review,enhancement,new,has-patch,2011-02-03T04:00:52Z,2011-07-13T09:46:36Z,Smilies should ignore content inside of `<pre>` and `<code>` tags. The author likely is posting code and doesn't need smilies messing it up.,Viper007Bond
20120,Space before slash to close BR,,Formatting,3.4,normal,trivial,Awaiting Review,enhancement,new,,2012-02-25T04:08:58Z,2012-02-28T14:57:50Z,"Kind of a petty, I admit, but I noticed http://codex.wordpress.org/WordPress_Coding_Standards shows this as the standard, and I figured I'd help out by checking if any such occurrences exist (using the following):

`find -name '*.php' -type f | xargs egrep -n ""<br\/>""`

Diff attached (my first)...but I won't have my feelings hurt if the ticket is closed and I am banned from trac :)",bananastalktome
22402,Stripping non-alphanumeric multi-byte characters from slugs,,Formatting,,normal,normal,Awaiting Review,enhancement,new,,2012-11-10T05:07:10Z,2012-11-22T03:13:41Z,"`sanitize_title_with_dashes()` strips non-alphanumeric characters from a title to create a slug. Unfortunately it only strips ASCII non-alphanumeric characters. Apart from a few exceptions, all multi-byte characters are preserved. This means all non-Western (and plenty of Western) non-alphanumeric characters end up in the slug as they're treated just like any other multi-byte character.

As an example, here are some common non-alphanumeric Chinese characters which would ideally be stripped from slugs, but are not:

 * 。 (U+3002, Ideographic Full Stop, %E3%80%82)
 * ， (U+FF0C, Fullwidth Comma, %EF%BC%8C)
 * ！ (U+FF01, Fullwidth Exclamation Mark, %EF%BC%81)
 * ： (U+FF1A, Fullwidth Colon, %EF%BC%9A)
 * 《 (U+300A, Left Double Angle Bracket, %E3%80%8A)
 * 》 (U+300B, Right Double Angle Bracket, %E3%80%8B)

Obviously it would be impractical to make a list of ''all'' the non-ASCII characters we want to strip from slugs. The list would be gigantic.

So the question is, would it be possible to use Unicode ranges to blacklist (or whitelist) whole ranges of characters to be stripped from (or preserved in) slugs? Is this practical or even desirable?

Or would it make more sense to continue using a list of just the most common multi-byte characters to be stripped?

The latter makes a whole lot more sense, but the former is a more complete solution.

Thoughts?",johnbillion
11616,Text copied form visual editor don't store font color,,Formatting,2.9,normal,minor,Future Release,enhancement,new,close,2009-12-25T09:14:51Z,2011-03-26T18:56:14Z,"if i copy something out of the post editing tool, and if i paste it into another, the color is not copied too.
Just the ""bold / underline ect...""

i have to ajust the color every time myself :(
",warsheep
15409,Top-Level Domain (TLD) validation function and email validation/sanitization,stephdau*,Formatting,3.1,normal,normal,Future Release,enhancement,accepted,has-patch,2010-11-12T20:40:33Z,2010-11-22T16:57:56Z,"The following patch proposes a new global function, does_value_end_in_valid_tld, to allow for a string value to be tested for as ending in a valid TLD.

TLD list as per http://data.iana.org/TLD/tlds-alpha-by-domain.txt

Regex inspired by http://gitorious.org/statusnet/mainline/blobs/master/lib/util.php#line724

The patch also implements using does_value_end_in_valid_tld() in is_email() and sanitize_email(), to start with.",stephdau
8213,WP text formatting functions handle block-level INS tag incorrectly,markjaquith*,Formatting,2.7,low,minor,Future Release,enhancement,accepted,,2008-11-14T14:51:09Z,2009-06-11T14:26:44Z,"From W3C documentation:

""INS and DEL are used to markup sections of the document that have been inserted or deleted with respect to a different version of a document (e.g., in draft legislation where lawmakers need to view the changes).

These two elements are unusual for HTML in that they may serve as either BLOCK-LEVEL or INLINE elements (but not both). They may contain one or more words within a paragraph or contain one or more block-level elements such as paragraphs, lists and tables.""


----


When I want to use INS tag as BLOCK-LEVEL element (to wrap to paragraphs for example) wrong HTML is produced:


{{{
<p><ins datetime=""2008-11-14T14:45:27+00:00"">First paragraph.</p>
<p>Second paragraph.</ins></p>
}}}

Correct HTML should look like this:

{{{
<ins datetime=""2008-11-14T14:45:27+00:00""><p>First paragraph.</p>
<p>Second paragraph.</p></ins>
}}}

I think the same sitiuation occurs for DEL tag.

",misieg772
12084,allow preserving HTML in the_excerpt (specify allowed tags for strip_tags in wp_trim_excerpt),,Formatting,3.0,normal,minor,Future Release,enhancement,new,has-patch,2010-01-29T22:36:40Z,2012-08-13T12:48:48Z,"Right now, `wp_trim_excerpt` is destructive. You can filter it, but once tags are stripped, you can't get them back without recreating the excerpt from the raw input. It would be nice if theme developers had an option to preserve at least some of the HTML formatting when using excerpts as post teasers (see #9260). ",sillybean
10792,ampersands and slashes stripped out of slugs,,Formatting,,low,trivial,Future Release,enhancement,new,has-patch,2009-09-15T22:56:00Z,2012-01-05T06:42:43Z,"In slugs for taxonomies or post permalinks, slashes (/\) and ampersands (&) are stripped out. More useful URLs would be created by turning slashes into hyphens, and ampersands into the word ""and"".

e.g.:

""songs by Lennon/McCartney""[[BR]]
expected slug: ""songs-by-lennon-mccartney""[[BR]]
actual slug: ""songs-by-lennonmccartney""

""Us & Them""[[BR]]
expected slug: ""us-and-them""[[BR]]
actual slug: ""us-them""",alxndr
5161,balance_tags option should not be in the user interface,,Formatting,2.3,normal,normal,Future Release,enhancement,new,dev-feedback,2007-10-08T08:02:49Z,2013-01-22T01:19:58Z,"In the WP Admin → Options → Writing ({{{options-writing.php}}}), there is an option ""!WordPress should correct invalidly nested XHTML automatically"" which controls whether {{{balance_tags()}}} is run on post content or not.

I'm fully supportive of this feature — I think it's important to ensure the HTML that is output to browsers is valid. There have been a few situations where users needed to turn this off, e.g. bugs in the function, or a plugin misbehaves with it on (if I remember correctly, runPHP).

However, this is a KDE-style option where it is put there for a niche case. In 99% of cases, you will want it on.

A few people on the mailing lists have stated a number of times that we should take a GNOME-like approach to these sort of features, and let them be controlled only by plugins. This option is left over from the dark ages of !WordPress, and I don't think the cases for turning it off are big enough to warrant its inclusion in the user interface.

If a plugin has a problem with balancing tags (e.g. runPHP), the offending plugin can simply remove the filter.

{{{
remove_filter('content_save_pre', 'balance_tags);
}}}

(...or whatever the code would be.)

The new canonical redirect feature has far more many problems, and far more justification for it to be turned off, yet I don't see a checkbox ""Redirect links to their canonical URL"" anywhere in the user interface. If anything should have a checkbox, it's the canonical redirect feature — but, it doesn't have any such thing. So, we should remove this checkbox as well.",JeremyVisser
20771,esc_url() instead of esc_html() in wp_nonce_url(),SergeyBiryukov,Formatting,3.4,normal,normal,Future Release,enhancement,reopened,dev-feedback,2012-05-29T06:21:37Z,2013-03-18T19:44:48Z,"The `wp_nonce_url()` function currently uses `esc_html()` in its output, which doesn't really seem to be the appropriate escaping function since it's generating a URL.

Attached patch changes the output to use `esc_url()`",jkudish
5689,smilies should not wrap on line-break,,Formatting,,low,minor,Future Release,enhancement,new,has-patch,2008-01-19T10:49:42Z,2010-07-15T01:44:30Z,When smilies are not converted to images they still should not wrap on line-break.,gpoul
20522,the sanitize_file_name_chars filter and ch(0),,Formatting,,normal,minor,Awaiting Review,enhancement,new,needs-unit-tests,2012-04-23T08:26:28Z,2012-04-24T00:41:12Z,"the sanitize_file_name_chars filter is tricky to use due to the chr(0) ending the array :

both 
{{{
special_chars[] = $my_char; 
}}}
and 
{{{
array_push($special_chars, $mychar);
}}}
have no effect.

so the only way to add some char to the array is to use array_unshift :
{{{
array_unshift($special_chars, $mychar);
}}}

adding 

this is mostly a php issue, but it could be useful to add some notice to the WordPress documentation.

",olivM
13340,wpautop breaks inline MathMl,,Formatting,2.9.2,normal,normal,Future Release,enhancement,new,needs-unit-tests,2010-05-11T14:04:58Z,2012-04-07T01:41:16Z,"wpautop treats inline &lt;math&gt; tags as block; they in fact may be placed block or inline, with their flow model dependent on the mode or CSS display property.

Trivial to fix; just needs someone to commit the change. Remove ""|math"" from $allblocks in file wp-includes/formatting.php. math tags on their own will be wrapped in a paragraph, which is fine.

As a very convenient enhancement, please replace on line 210:

{{{
     if ($br) {
-        $pee = preg_replace_callback('/<(script|style). ....
+        $pee = preg_replace_callback('/<(script|style|math) ...
}}}

to prevent MathML being polluted with breaks (current required workaround people are using is to have the whole block on one line, which is very messy to edit).",nicholaswilson
23236,Add functions to format attributes,,Formatting,,normal,normal,Awaiting Review,feature request,new,,2013-01-19T06:32:57Z,2013-05-16T04:15:04Z,"I'd like to see WP add functions for attributes. These would be extremely useful and resuable for theme devs and internally. I've developed very solid generic functions for this in [http://phat.airve.com phat] and would be happy to make WP versions to the effect of:

{{{
wp_attrs( $array ) // converts array to attributes string
wp_attrs( $name, $value ) // formats attribute string
wp_attrs( $string ) // reformats attribute string
wp_parse_attrs( $string ) parses attributes into assoc array
}}}",ryanve
9437,Allow the use of inline SVG in posts,,Formatting,2.5,normal,normal,Future Release,feature request,reopened,,2009-04-01T13:39:25Z,2011-03-31T07:18:17Z,"My WordPress 2.5 install serves the application/xhtml+xml MIME type (true XHTML) for the purposes of inlining SVG which I've done on my 'blog chrome'.  However, if I try to inline SVG in the contents of a post as follows:

<svg xmlns=""http://www.w3.org/2000/svg"">
  <circle cx=""50"" cy=""50"" r=""30"" fill=""blue"">
    <animateTransform attributeName=""transform"" type=""scale"" to=""1.5"" dur=""2s"" fill=""freeze""/>
  </circle>
</svg>

WordPress mangles it into:

<svg xmlns=""http://www.w3.org/2000/svg""><br />
  <circle cx=""50"" cy=""50"" r=""30"" fill=""blue""><br />
    <animatetransform attributeName=""transform"" type=""scale"" to=""1.5"" dur=""2s"" fill=""freeze""/><br />
  </circle><br />
</svg>

There are two problems with this:

1) WordPress converts the <animateTransform> element into a <animatetransform> element.  WordPress should at least preserve the case of the element (whether this is on a whitelist of SVG elements or all elements I don't care).  List of SVG elements are here: http://www.w3.org/TR/SVG11/eltindex.html

2) The extra <br /> elements.  These are forgivable since the elements are simply ignored by the browser's SVG parser.

Can someone confirm the behavior in WordPress 2.7.x?",codedread
17993,the_content vs get_the_content,,Formatting,3.2,normal,normal,Awaiting Review,feature request,new,close,2011-07-05T14:00:01Z,2012-09-14T17:28:19Z,"Wordpress lacks of a main function: obtain full formatted ""content"" without echo! Maybe good to add a param to the_content() like echo(bool)?

I wrote it:

{{{
function the_content_noecho($more_link_text = null, $stripteaser = 0) {
       $content = get_the_content($more_link_text, $stripteaser);
       $content = apply_filters('the_content', $content);
       $content = str_replace(']]>', ']]&gt;', $content);
       return $content;
   }
}}}
",merlinox
11023,Gallery Category Doesn't change with article,,Gallery,,normal,normal,Future Release,defect (bug),new,,2009-10-24T01:49:09Z,2009-12-08T00:56:23Z,"Lets say I have a default category setup called Drafts that all articles go into at first by default. Then on completing the article before posting it live, I movie it to another category called News (no longer having the draft category ticked also). If I've added an image with that article that I click to view a bigger picture of in the gallery page (image.php). It still shows it as being listed under the Drafts category, while the article itself is listed under just News category.",mrgtb
23873,Gallery shortcode orderby does not support multiple column sorting,,Gallery,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-03-27T21:13:53Z,2013-04-05T12:42:03Z,"In wp-includes/media.php, function gallery_shortcode, lines 689-694 are:

{{{
// We're trusting author input, so let's at least make sure it looks like a valid orderby statement
if ( isset( $attr['orderby'] ) ) {
	$attr['orderby'] = sanitize_sql_orderby( $attr['orderby'] );
	if ( !$attr['orderby'] )
		unset( $attr['orderby'] );
}
}}}

The sanitize_sql_orderby function requires commas between multiple column names. If you enter, for example orderby=""menu_order ID"", the lack of a comma causes the parameter to be deleted from the query.

Just after this test, on line 698, a multi-column sort without the comma delimiter is used as the default value.

If you enter commas to get past the sanitize_sql_orderby test, logic in wp-includes/query.php, function get_posts will not accept the commas (lines 2358 - 2361) and all but the last of the columns are ignored.

This issue should be considered along with those raised in #17065 and #16584. Thank you.",dglingren
14819,Gallery shortcode output does not validate.,,Gallery,3.0.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-09-09T14:17:28Z,2012-09-17T05:30:04Z,"I was validating a sites markup when I realized that the gallery shortcode output does not validate where know ""caption"" exists due to the lack of an associated value. Basically a <dt> must be followed by at least one <dd>.

Not sure if dl is the best tag to use for outputting galleries since I imagine lot's of people exclude captions from their galleries. Not sure what the best solution is at the moment.

Thoughts?

This is my first submission so be gentle.",jameslaws
21082,"The Gallery shortcode relies on #gallery-instance to hook the CSS, but the id sometimes isn't specific enough",,Gallery,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-06-26T18:43:28Z,2013-01-24T09:14:02Z,"The Gallery CSS selector uses the id attribute, which is of the form #gallery-{instance}. On some scenarios (like infinite scroll) a follow up gallery on a another post can have the same #gallery-x selector, thus over-writing the previous gallery style.

Proposed solution: make the #id more unique by including the postid number. (Attached patch.)

(It could potentially impact some themes that used #gallery-1 to style galleries, but theme's shouldn't be using that in the first place, I believe.)

Furthermore, it may be good to change the whole style block to use classes instead of the id so that it's easier for themes to deal with CSS specificity—and helps them not fall back to the #id.",matveb
13429,Updating Link URL on image within Admin with Gallery,,Gallery,2.9.2,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-05-18T01:43:42Z,2013-01-02T13:11:27Z,"Image insertion no longer allows url to off site resource within Gallery.

When inserting a gallery you are unable to specify the Link URL. It keep reverting back to the default.",vshoward
22773,"""Gallery Settings"" should be extensible",,Gallery,3.5,normal,minor,Awaiting Review,enhancement,new,,2012-12-06T03:17:19Z,2013-01-06T02:29:57Z,"This isn't necessarily new to 3.5, but now that we have a great gallery management system, I think we need to allow developers to customize the Gallery Settings fields (other than Link To / Columns / Random).

My specific use - which I think is common - is a completely custom gallery shortcode for a client. First and foremost, the client would like to be able to ""title"" the gallery itself, so a hook allowing the addition of custom field(s) would be needed. Ideally, the default fields would also be filterable so they can be removed as well (though I suppose we can do that with CSS now): for instance, most custom gallery implementations don't use the ""columns"" option.",jakemgold
18143,Add size for Gallery Settings,nacin*,Gallery,3.2.1,normal,normal,Future Release,enhancement,accepted,has-patch,2011-07-17T00:02:49Z,2012-05-02T20:25:00Z,Add a size option for gallery settings so it's easy to insert a single column gallery with large or full size images.,designsimply
11101,Gallery column width calculation needs more granularity,,Gallery,,normal,minor,Future Release,enhancement,new,has-patch,2009-11-08T07:36:13Z,2011-02-23T10:12:06Z,"In line 712 of wp-includes/media.php where the column width is calculated for the gallery css snippet:


{{{
$columns = intval($columns);
        $itemwidth = $columns > 0 ? floor(100/$columns) : 100;

        $selector = ""gallery-{$instance}"";

        $output = apply_filters('gallery_style', ""
                <style type='text/css'>
                        #{$selector} {
                                margin: auto;
                        }
                        #{$selector} .gallery-item {
                                float: left;
                                margin-top: 10px;
                                text-align: center;
                                width: {$itemwidth}%;                   }
}}}


itemwidth should be calculated as 

{{{
$itemwidth = $columns > 0 ? round(100/$columns,1) : 100;
}}}

This gives the width better precision. I've read that IE ignores the decimal, but it works on at least Firefox, so there is no reason not to let it have a decimal value. You could even increase the number of decimal points.",akozak
6820,Post image / attachment reparenting,matt,Gallery,,low,minor,Future Release,enhancement,new,has-patch,2008-04-23T01:24:09Z,2012-12-02T00:00:17Z,You should be able to change the parent of an attachment to attach it to a different post.,matt
10489,UI Improvements for the gallery tab (edit post),,Gallery,2.8.1,normal,normal,Future Release,enhancement,new,,2009-07-26T11:52:10Z,2010-10-28T08:48:06Z,"It would be nice to ever display the ""Gallery Settings"" Section on the gallery tab, even if only one image exists. That would help if you talk via phone and explain someone something. Often from-sections are helpfull to validate wether or not the other is on the same page as you are while explaining something.
",hakre
11725,Add start and count attributes to gallery shortcode,,Gallery,2.9.1,normal,normal,Future Release,feature request,new,has-patch,2010-01-05T15:00:27Z,2012-08-05T22:58:23Z,"Add shotcodes COUNT for views full gallery after click on MORE. Home

Modify files ./wp-includes/media.php
Lines 699 (add COUNT => '-1')
Lines 767-798 (add ForEach ... )

Use in WP:

[gallery] ... show standard gallery

OR

[gallery count=3] ... show images 1-3
- more -
[gallery count=3+] ... show images 4-n",frymi
12799,Allow gallery shortcode to accept a maximum number of items,,Gallery,2.9.2,normal,normal,Future Release,feature request,new,has-patch,2010-04-01T17:55:55Z,2012-08-27T21:59:51Z,"A ""would be nice"" feature of the gallery would be to allow for a maximum number of items to be displayed.

The main use of this feature would be to allow a page to show a ""preview"" of some of the images contained within one or more subpages, eg:

* Some event
[gallery link=""file"" columns=""4"" orderby=""rand"" maximum=""4"" id=""164""]
* Some other event
[gallery link=""file"" columns=""4"" orderby=""rand"" maximum=""4"" id=""200""]

",dtorbert
17142,Prettier gallery display and navigation through core,,Gallery,3.3,normal,normal,Awaiting Review,feature request,reopened,,2011-04-15T16:14:13Z,2012-07-13T22:44:10Z,"WordPress gallery display and navigation typically feels rather crude from the user point of view. With digital cameras dumping images as IMG_XXXX or long numeric strings, the default image titles are usually prominent and ugly in most of the themes I've tested (see attachments for examples). Some themes use thumbnail navigation instead, but those implementations also feel dated in many (most?) cases.

I realize that the theory is display/navigation is determined by the themes, and that display/navigation can be greatly altered via various plugins...  but the reality of how this plays out results in a default user experience that simply feels outdated. 

Many (most?) themes seem pretty unimaginative in their gallery output and IMHO a more elegant out-of-the-box display and navigation experience seems like it would really be useful for all WordPress users. I would think most users expect something like a Lightbox experience at minimum, but I am not ideologically tied to any particular solution. 

Is there something we could do on the core side to strongly encourage (or even gently enforce) a prettier default construct? 
",hew
20461,View All Gallerys,Jesse Techno,Gallery,3.4,normal,normal,Awaiting Review,feature request,new,close,2012-04-16T22:55:56Z,2012-12-17T15:39:20Z,If you could it would be SO nice to have it so you can see every gallery you have ever posted on your site and then add one gallery to to more then one page/post.,jessetechno
16906,Bogus call to wp_kses_no_null(),,General,3.1,normal,normal,Awaiting Review,defect,new,has-patch,2011-03-20T21:44:21Z,2011-03-20T21:45:23Z,Nullchars and \ have been already replaced in string in question one line above. See [http://core.trac.wordpress.org/browser/tags/3.1/wp-includes/kses.php#L943 wp_kses_no_null()].,hakre
16942,Dead code in add_query_arg(),,General,3.1,normal,trivial,Awaiting Review,defect,new,commit,2011-03-23T02:15:56Z,2011-03-29T09:31:33Z,"As it just has been checked that $uri contains at least one ?, then exploding $uri on ? with a limit of 2 must return two elements, right?

{{{
	if ( strpos( $uri, '?' ) !== false ) {
		$parts = explode( '?', $uri, 2 );
		if ( 1 == count( $parts ) ) {
}}}

So the if clause can never be true, the code is dead.",hakre
16907,Redirecting w/o using wp_redirect();,,General,3.1,normal,normal,Awaiting Review,defect,new,has-patch,2011-03-20T22:00:28Z,2011-03-23T20:38:20Z,Some places in worpdress core do not make use of the wp_redirect() function.,hakre
16909,some Location headers are using relative url's (2),,General,3.1,normal,normal,Awaiting Review,defect,new,,2011-03-21T00:25:26Z,2011-04-02T13:24:37Z,"I started this in #14062 and already did some fixes for 3.1.

Just collecting some more and providing patches.",hakre
16164,"""You are not allowed to delete this post."" - While Deleting a Media Library Item",,General,3.1,normal,normal,Future Release,defect (bug),new,dev-feedback,2011-01-09T13:39:10Z,2012-06-30T20:14:21Z,"While deleteing 999 media library items, the request timed out. Resending the same request triggered an error message:

> You are not allowed to delete this post.

For me as a programmer, I know that those library items are technically a post, but for communicating with the user, the error message is misleading.",hakre
18701,"""hierarchical"" argument for get_pages() does nothing",,General,3.0,normal,normal,Awaiting Review,defect (bug),new,,2011-09-19T06:48:32Z,2011-11-16T00:17:33Z,"The `hierarchical` argument for `get_pages()` is never actually used. It is in an `if` statement, but one that requires `child_of` to also be set:

{{{
if ( $child_of || $hierarchical )
	$pages = & get_page_children($child_of, $pages);
}}}

Props Vynce Montgomery for pointing this out to me.",Viper007Bond
18703,'pre_get_posts'-filter without effect when modifying 'tax_query'. Wrong parameters passed to 'parse_tax_query() ??; WP 3.2.1.,info@…,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2011-09-19T13:10:12Z,2012-05-31T16:27:52Z,"When modifying the 'tax_query' array directly with 'pre_get_posts' filter (e.g. setting 'include_children' to false), then it will firstly  be modified in 'wp-includes/query.php' -> get_posts() after running the filter in line 1911.

But after line 2195 and running 'parse_tax_query' the 'tax_query' 'include_children'-parameter is unwanted reset/changed to the default value.

I think the bug is the following:
 
parse_tax_query() uses and needs values from the 'tax_query'-array but gets passed over only the 'query_vars'-array. so it resets the 'tax_query'-array-parameters in query.php line 1678 and hereby also the previously and individually set 'tax_query' values.

as far as i understand the core, i assume that any changes to the 'tax_query'-array with 'pre_get_posts'-filter will get lost and only changes to the 'query_vars'-array will take effect.",xitromedia
24023,3.5/wp-includes/functions.php : missing break statement,,General,3.5.1,normal,normal,Awaiting Review,defect (bug),reopened,,2013-04-10T02:44:54Z,2013-04-10T18:59:20Z,"Line 263:

{{{
switch ( $token ) {
case 's' :
if ( '""' !== $data[$length-2] )
return false;
case 'a' :
}}}

Need ""break"" after ""return false"", because return happens only if condition met. Otherwise - falls to case 'a'
",tivnet
2877,A Slash too much @ get_pagenum_link(),,General,2.0.3,normal,normal,Future Release,defect (bug),reopened,has-patch,2006-06-29T17:47:30Z,2011-11-05T17:38:23Z," * File: template-functions-links.php
 * Function: get_pagenum_link()

The following code is at the end of the function:

{{{
	// showing /page/1/ or ?paged=1 is redundant
	if ( 1 === $pagenum ) {
		$qstr = str_replace('page/1/', '', $qstr); // for mod_rewrite style
		$qstr = remove_query_arg('paged', $qstr); // for query style
	}
}}}

If you work with the mod_rewrite style, you will get this URL for the first page:

http://www.example.com/wordpress/index.php/
This wont work (/ at the end).

Correx:
{{{
	// showing /page/1/ or ?paged=1 is redundant
	if ( 1 === $pagenum ) {
		$qstr = str_replace('/page/1/', '', $qstr); // for mod_rewrite style
		$qstr = remove_query_arg('paged', $qstr); // for query style
	}
}}}

Notes:

 * sry for my bad english...
 * i've downloaded a german translation of wordpress 2.0.3, so maybe its just in this version... ?!
",dave@…
24030,Add an action for when nonce verification fails,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2013-04-10T10:21:37Z,2013-04-10T10:21:37Z,"Currently when a plugin (or core) calls `check_admin_referer()` there is no way for auditing (or debugging) plugins to hook in and record an event that the nonce check failed.

Previously it was possible to use the `explain_nonce_$nonce` filter to do this, but that was removed in [21133].

If a plugin wants to record an event for a failing nonce, it'll need to call wp_verify_nonce() manually itself, and die afterwards, or call `check_admin_referer()` after verifying the nonce itself for logging purposes.

I'd suggest either resurrecting the previous filter as an action (for back compat) or adding a new nonce failure hook.",dd32
21581,Add orderby meta_value to WP_User_Query,,General,,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-08-14T21:24:05Z,2012-08-14T21:40:10Z,"For some reason, we cannot easily order the WP_User_Query() by last_name without directly editing the SQL statements. However, there is an easy way to add this that would work parallel to WP_Query().

{{{
// prepare arguments
$args  = array(
	'orderby' => 'meta_value',
	'meta_key' => 'last_name',
);
$user_query = new WP_User_Query( $args );
}}}",wpsmith
23905,Add_post_meta strips slashes,,General,2.5,normal,normal,Awaiting Review,defect (bug),new,,2013-03-30T00:20:29Z,2013-03-30T05:32:01Z,"Let's assume that JS generated an object that I want to store in custom field. Everything goes smooth when I convert it back and forth from JS to PHP and from PHP to JS (using json_encode() and json_decode()) and it even works when I do update_post_meta() manually in my file but this stops working as soon as WordPress Importer tries to load it from XML file (in XML it's still valid object) using add_post_meta().

This is the code from importer from the bottom of process_posts() function:

{{{
if ( $key ) {
	// export gets meta straight from the DB so could have a serialized string
	if ( ! $value )
		$value = maybe_unserialize( $meta['value'] );
		$value = '{""0"":{""type"":""text"",""text"":""""},""1"":{""type"":""html"",""html"":""<div class=\""cssclass\"" style=\""margin-top: 3em;\""><p>here goes html</p></div>"",""css_class"":""""}}'; // I added this for test purposes

	add_post_meta( $post_id, $key, $value );
	do_action( 'import_post_meta', $post_id, $key, $value );
}}}


This is an object:

{{{
{""0"":{""type"":""text"",""text"":""""},""1"":{""type"":""html"",""html"":""<div class=\""cssclass\"" style=\""margin-top: 3em;\""><p>here goes html</p></div>"",""css_class"":""""}}
}}}


It strips slashes from HTML tags (before each double quote sign) from objects that are stored as strings. I bet it shouldn't happen. Why would add_post_meta strip slashes or anything if XML explicitly says:


{{{
<wp:meta_value><![CDATA[{""0"":{""type"":""text"",""text"":""""},""1"":{""type"":""html"",""html"":""<div class=\""cssclass\"" style=\""margin-top: 3em;\""><p>here goes html</p></div>"",""css_class"":""""}}]]></wp:meta_value>
}}}

which in XML language is considered ""use as is. Do not modify"". I think that it might be a bug.",Looimaster
13926,Adding 'page-attributes' to a custom post type slows down edit screen in the admin,,General,3.0,normal,normal,Future Release,defect (bug),new,,2010-06-16T20:01:17Z,2010-10-28T01:52:55Z,"When I add 'page-attributes' to a custom post type it takes roughly 1.5 to 2 min for the edit screen to load...  When I remove 'page-attributes' edit screen load is extremely fast.

Under the post type i created I have 5000+ entries.",granulr
16672,Admin Bar and param href = FALSE,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-02-26T00:21:52Z,2011-02-27T11:21:37Z,"Current i dont find an solution to add an element in the admin bar with a a-tag inside the li-tag. But the function add_menu has an param href and is also possible to add the value false, but the a-tag ist always visible


maybe a fix on wp-includes/class-wp-admin-bar.php

{{{
	/* Helpers */
	function recursive_render( $id, &$menu_item ) { ?>
		<?php
		$is_parent =  ! empty( $menu_item['children'] );

		$menuclass = $is_parent ? 'menupop' : '';
		if ( ! empty( $menu_item['meta']['class'] ) )
			$menuclass .= ' ' . $menu_item['meta']['class'];
		?>

		<li id=""<?php echo esc_attr( ""wp-admin-bar-$id"" ); ?>"" class=""<?php echo esc_attr( $menuclass ); ?>""><?php
			if ( ! empty( $menu_item['href'] ) ) : ?>
				<a href=""<?php echo esc_url( $menu_item['href'] ) ?>""<?php
					if ( ! empty( $menu_item['meta']['onclick'] ) ) :
						?> onclick=""<?php echo esc_js( $menu_item['meta']['onclick'] ); ?>""<?php
					endif;
				
				if ( ! empty( $menu_item['meta']['target'] ) ) :
					?> target=""<?php echo esc_attr( $menu_item['meta']['target'] ); ?>""<?php
				endif;
				if ( ! empty( $menu_item['meta']['title'] ) ) :
					?> title=""<?php echo esc_attr( $menu_item['meta']['title'] ); ?>""<?php
				endif;
				
				?>><?php
			endif;
			
			if ( $is_parent ) :
				?><span><?php
			endif;

			echo $menu_item['title'];

			if ( $is_parent ) :
				?></span><?php
			endif;

			if ( ! empty( $menu_item['href'] ) ) : ?></a><?php endif; ?>

			<?php if ( $is_parent ) : ?>
			<ul>
				<?php foreach ( $menu_item['children'] as $child_id => $child_menu_item ) : ?>
					<?php $this->recursive_render( $child_id, $child_menu_item ); ?>
				<?php endforeach; ?>
			</ul>
			<?php endif; ?>

			<?php if ( ! empty( $menu_item['meta']['html'] ) ) : ?>
				<?php echo $menu_item['meta']['html']; ?>
			<?php endif; ?>
		</li><?php
	}
}}}
",Bueltge
20927,Ampersand inside HTML comment causes wp_insert_post to loop infinitely,,General,3.3.2,normal,normal,Awaiting Review,defect (bug),new,,2012-06-12T19:54:46Z,2012-06-14T13:09:40Z,"I'm encountering an issue with wp_insert_post where, when the post_content contains an HTML comment containing an ampersand (ie, ""<!-- & -->""), wp_insert_post seems to be getting stuck in an infinite loop. As far as I can tell, it is endless escaping the & into &amp; over and over.

I've attached a small script that reproduces this error; you need to replace the HTTP_HOST and the path to wp-load.php to reflect your own machine for it to run. I've reproduced this issue on two different machines, both running Ubuntu 12.04, one on Wordpress 3.3.1 and the other on Wordpress 3.3.2.

The most bizarre thing about this issue, to me, is if you move the contents of the includeFiles() function out of the function and into the main body of the script, the issue no longer occurs. Somehow, including wp-load.php from a function is causing the infinite loop.",jpayette
17170,Attachment slugs are not unique,,General,2.8,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-04-18T21:02:52Z,2011-04-18T21:02:52Z,"From wp_unique_post_slug() and #9726:

{{{
Attachment slugs must be unique across all types.
}}}

It's true that attachment slugs are checked for uniqueness against all other object types, however, when inserting an object of another type any uniqueness checks do not include attachments. This means that #9539 isn't actually fixed if you attempt the steps in the order described (insert attachment first followed by conflicting page).

Fix would be to add 'attachment' to the `post_type IN` clause for hierarchical types. See attachments-hierarchically-unique.diff.

Still puzzling out why/if attachments need to be unique against non-hierarchical types since there shouldn't be collisions as attachment URLs are subpage style. However, if attachment slugs do need to be globally unique then see attachments-globally-unique.diff (not tested so much).

Related: #9726, #9539, #6437, [11467]",duck_
21729,Better logic for comments email notification,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-08-29T15:26:37Z,2012-11-22T03:49:45Z,"Please see attached patch.

- If comment_author_email is known, it can be used in ""From"" email header.

- Also in ""Reply-To"" header we can use comment_author.

I am not sure if there is any reason for current logic, but my friend noticed it and he thought that this way it would be better...",pavelevap
16487,Bug wp_new_user_notification() when using it in multisite mode,,General,3.0.5,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-02-08T09:04:08Z,2011-02-08T12:07:48Z,"In the file ""wp-includes/pluggable.php""
into the function named ""wp_new_user_notification""

$blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);

This is correct but, in mutisite mode,

that one return the site name where you are logged into, not the blogname you are going to create.
$message .= wp_login_url() . ""\r\n"";

for example, i try to create test1.mynamesite.com
i'm logged on primarysite.mynamesite.com with my super admin account.

Into the mail i recieved, with ""Your Username and password""
the url is ""http://primarysite.mynamesite.com/wp_login.php""

it had to be ""http://test1.mynamesite.com/wp_login.php"".

In the other mail recieved with the complete message, acces code and url, all is perfect, just in the mail when adding the user to the new site.",wp_user59
17442,CSS selector #wpadminbar * overwrites accessibility generic selectors like screen-reader-text,,General,3.2,normal,normal,Awaiting Review,defect (bug),new,,2011-05-15T10:42:59Z,2011-05-15T12:52:23Z,"I just was looking to update one of my plugins for 3.1/3.2 making use of the new admin bar.

My plugin makes use of the `.screen-reader-text` CSS class but it is overwritten in the admin-bar by `#wpadminbar *`",hakre
17157,Cannot preview changes to published multi-page posts,,General,3.0.4,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-04-17T17:41:50Z,2012-05-09T17:10:23Z,"Use Case: After publishing a post, an editor needs to make changes/update the post.  Editor would like to preview changes before publishing.  (Permalinks are turned on in this case)

To Reproduce:
1. Write a post. Make it paged by putting <!--nextpage--> somewhere in the post.
2. Publish the post 
3. Make changes to the post, somewhere on page 2
4. Click ""Preview Changes"" button

Browser will open a new page for the post: http://[domain]/yyyy/mm/dd/[post title]/?preview=true&preview_id=126507&preview_nonce=f0a2ecd9ae

5. Next page link will point to http://[domain]/yyyy/mm/dd/[post title]/   (Note: that preview, preview_id and preview_nonce are missing from the url)

Suggested fix is attached.
",akoyfman
16230,Category slugs not cut at 200 characters as it should under some conditions,,General,3.1,normal,normal,Future Release,defect (bug),new,,2011-01-14T14:10:23Z,2011-07-17T02:21:27Z,"When a category name is longer than 200 characters, it is cut to 200 and so is the slug automatically created upon category creation.

Now, if you edit the category name or slug afterwards, again trying to set a name longer than 200 characters it is cut again.

But, if you edit the name or slug and use a very long string like this one:

%d1%85%d1%80%d0%b0%d0%bd%d0%b0/%d1%80%d0%b5%d1%86%d0%b5%d0%bf%d1%82%d0%b8/%d0%b4%d0%b5%d1%81%d0%b5%d1%80%d1%82%d0%b8-%d1%80%d0%b5%d1%86%d0%b5%d0%bf%d1%82%d0%b8-%d1%85%d1%80%d0%b0%d0%bd%d0%b0/%d1%81%d0%bb%d0%b0%d0%b4%d0%ba%d0%b8%d1%88%d0%b8-%d0%b4%d0%b5%d1%81%d0%b5%d1%80%d1%82%d0%b8-%d1%80%d0%b5%d1%86%d0%b5%d0%bf%d1%82%d0%b8-%d1%85%d1%80%d0%b0%d0%bd%d0%b0-%d1%80%d0%b5%d1%86%d0%b5%d0%bf%d1%/

Then the slug ends up being longer than the 200 chars limit.

Now if on the Categories list dashboard page you have more categories than visible on one page, and the category you edited above is not on page 1, the page it is on will appear empty (while successive pages will be all right if they contain regular categories)

This has been reproduced on 3.1-RC2-17283",paolal
13821,Changing visibility to password-protected without entering a password does not warn user,kapeels*,General,,normal,normal,Future Release,defect (bug),accepted,has-patch,2010-06-10T13:48:48Z,2012-10-01T17:42:25Z,"Tested on r15182.

If the status of a post is set to Password Protected, and a password is not specified before the user clicks the OK button in visibility and then either publishes, saves, or updates the post, no warning is given to the user that not setting a password forces the post or page to remain Public.

In fact, if updating a post, and this is the only change made, the success message (1) for updating the post appears instead, even though no change was made to the post.

If the post was previously published as Private, and switched to Password Protected without entering a password, then saved, the post switches to Public on save instead of remaining Private.

Either a failure message upon updating or a warning to the user before saving should be displayed to the user to remind them that they didn't properly set a password.

To reproduce the last case above:

1. Create a post. Publish it as Private.
2. Edit the post. Change the visibility to Password Protected, but do not enter a password. Click OK.
3. Update the post.
4. The post visibility will be changed to Public.",markel
23862,Clean up old WP->public_query_vars and WP->private_query_vars,,General,,normal,trivial,Future Release,defect (bug),new,has-patch,2013-03-25T19:20:07Z,2013-05-20T12:03:20Z,"There are some old non-working public_query_vars still in the WP class that should be cleaned up.

* posts - broken 10 years ago http://core.trac.wordpress.org/changeset/182/trunk/blog.header.php
* search - hasn’t done anything since wp_query was created
* calendar - don’t see support since ‘b2’
* pb - don’t see support since ‘b2’
* static - only used in determining if is_page, though it no longer works correctly, added http://core.trac.wordpress.org/changeset/1527/trunk, but functionality was partially changed the next commit

Also, since 'post_type' is now a public_query_var, it can be removed from the private_query_vars.
",prettyboymp
16934,Commented code in /wp-includes/canonical.php,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-03-22T14:00:26Z,2011-06-25T18:57:57Z,"Timestamp: 10/16/08 19:17:04 (2 years) - Safe to remove this by now?

[9203]",hakre
14268,Comments editor HTML tag,,General,3.0,normal,normal,Future Release,defect (bug),new,,2010-07-10T19:16:16Z,2010-11-22T18:22:42Z,"With a vanilla (2.8.4 -> 3.0) installation, if you go and edit the comment from Mr Wordpress, you will see that in the editor you can find the HTML code of the apostrophe for ""post's"".

{{{
Hi, this is a comment.<br />To delete a comment, just log in and view the post&#039;s comments. There you will have the option to edit or delete them.
}}}

The problem comes with a production env with European languages where comments are full of accented letters that make the reading almost impossible.",pkirk
12945,Constrain wp_page_menu(),technosailor*,General,,normal,normal,Future Release,defect (bug),accepted,,2010-04-09T19:39:51Z,2010-05-02T18:49:39Z,"The wp_page_menu() function is the default callback for wp_nav_menu(). IOW, when a user is not using the new menu system, it defaults to this function. While that is good, any number of pages over, say 10, will make a theme puke in many cases.

As a workaround, I suggest we make a default of wp_page_menu() to exclude all pages() except home. It's a stupid idea, I think, but something needs to be done to make this manageable so I'm looking for feedback.

The Pro of taking this approach is that it encourages customization of menus via the WP menu system. It also does not lock theme devs into a particular approach because this stuff can be overidden via arguments and filters.

The con is that the default callback becomes pretty benign and useless. Almost pointless.

Ideas?",technosailor
20456,Creation of new blogs and search for blogs missing,CaputoJen,General,3.3.1,normal,major,Awaiting Review,defect (bug),reviewing,,2012-04-16T14:50:53Z,2012-04-16T14:51:32Z,"Hello:

I recently upgraded to WordPress 3.3.1.  After doing so users have lost the functionality of creating a new blog the link redirects to another page(although admins can do it) and you can no longer search for existing blogs.  I have read the forums, posted to the forums and searched the internet for a reasonable explanation. I have found nothing describing this problem.  I have checked the appropriate settings and everything is turned on for users to create blogs.  At this point, I believe this may be a bug.  This problems occurs using all mainstream browsers on Mac and PC.  Please help as I am not sure what could be causing this issue and my search to find a plausible explanation has turned up nothing!",CaputoJen
20081,Custom Post Type/Custom Taxonomy Does not filter.,,General,3.3.1,normal,major,Awaiting Review,defect (bug),new,reporter-feedback,2012-02-20T08:04:56Z,2012-02-20T08:41:56Z,"I have tested this on 4 different sites and found the same issue. At first I thought it was the code I copied then I realized the issue was happening with core. 

'''
Steps to produce:''' 
Use register_post_type to add a post type, say ""objects""

Use register_taxonomy to create custom tax, say ""attributes""

Be sure to have 'show_ui' => true

Create a post, give it a tax. IE: attribute1

Create a second post, give it a different tax. IE: attribute2

On the menu navigate to your tax menu page

here it will list attribute1 and attribute2. 

It will show 1 post in each, and the number 1 is a link to edit.php 
where it creates this URL string:
yoursite.com/wp-admin/edit.php?post_type=objects&attribute=attribute1

'''Expected Result:'''
The page should now be filtered down to JUST posts that have that attribute. 


'''Actual Result:'''
All Posts are still visible. Filtering has no effect. 

I found this by creating custom columns and with my switch listing links to the Tax's to be filtered. I've never gotten it to work. 
I do have a great script I believe by YOAST that creates a drop down to filter Tax's but this actually changes the global query itself. 

",DennisSmolek
20438,Custom Post Types with Post Format support aren't registered against post_format taxonomy,,General,,normal,normal,Awaiting Review,defect (bug),new,close,2012-04-13T16:56:40Z,2012-11-20T18:15:16Z,"When a custom post type adds support for {{{post-formats}}}, this doesn't actually register the {{{post_format}}} taxonomy for the post_type.

Here's a quick test:

{{{
add_action( 'init', function() {
        register_post_type( 'not-post', array( 'supports' => 'post-formats' ) );
        global $wp_taxonomies;
        var_dump( 'post supports post_format:', in_array( 'post', $wp_taxonomies[ 'post_format' ]->object_type ) );
        var_dump( 'not-post supports post_format:', in_array( 'not-post', $wp_taxonomies[ 'post_format' ]->object_type ) );
} );
}}}

The {{{post_format}}} taxonomy doesn't get returned when {{{get_object_taxonomies}}} is called for the custom post type and one side-effect of this is that the {{{post_format_relationships}}} cache does not get flushed by {{{clean_object_term_cache}}} leading to stale values when a post format is changed.

(The {{{post}}} post_type is immune to this because core registers the {{{post_format}}} taxonomy with it.)

When a post_type adds support for post-formats, an explicit association should be made between the post_type and the {{{post_format}}} taxonomy.",batmoo
15837,Custom Taxonomy: Admin Menu Not Selecting Current Item,,General,3.0.3,normal,normal,Awaiting Review,defect (bug),new,,2010-12-15T21:57:24Z,2011-01-09T14:01:43Z,"Story: Developing a plugin that adds a Custom Post Type and then a Taxonomy.

Problem: Adding the Taxonomy and displaying the Menu Item on the Admin section, when selecting the menu item - there seems to be a difference in functionality depending on what tag the Taxonomy hooks onto.

For example code:
{{{
      register_taxonomy(
        'mytaxonomy',
        'myposttype',
        array( 
          'labels' => array(
            'name' => 'Manage XXX',
            'add_new_item' => 'Add New XXX',
            'new_item_name' => 'New XXX Name',
            'add_new' => 'Add New XXX',
            'singular_name' => 'XXX'
          ),  
          'public' => false,
          'publicly_queryable' => true,
          'show_ui' => true,
          'hierarchical' => true,
          'rewrite' => array(
            'slug' => 'XXX',
            'with_front' => false
          ),  
          'query_var' => 'XXX'
        )
      );
}}}

The above code adds the Menu Item for the Taxonomy to the new Custom Post Type menu I created.

When I select the new Taxonomy...it ""open"" or ""behaves"" as though it expects to see it under the ""post"" tag.

It does not select the Taxonomy Menu Item as ""current"".

Expected result: Select Taxonomy Menu Item -> Menu Item obtains CSS class of ""current"".

Actual result: Select Taxonomy Menu Item -> Menu Item doesn't obtain a CSS class and IF the Posts menu was ""collapsed"" it expands.

Now - conversely if I add the Taxonomy Menu Item to the tag ""post"" - it DOES add the CSS class.

This seems to be inconsistent functionality and I believe that it's not there's something surrounding it that has to be malfunctioning.",sterlo
16949,Custom post types: error on page if query contains multiple post types,,General,3.1,normal,normal,Future Release,defect (bug),new,dev-feedback,2011-03-23T17:19:22Z,2011-10-18T19:53:06Z,"I'm using custom post types, and I modified the $query to include multiple post types. This works quite well, until I enter a URL to a non-existant post (modifying the last part, i.e. the post's slug).

{{{

// some HOWTO linked from the Codex suggests this,
// can't find the link right now

function add_posttypes_to_query($query)
{
	if (!is_admin() && !$query->query_vars['suppress_filters'])
	{
		if (!is_home())
			$post_type = array('video', 'post');

		$query->set('post_type', $post_type);
	}

	return $query;
}

add_filter('pre_get_posts', 'add_posttypes_to_query');
}}}

The error I get is: “Warning: Illegal offset type in isset or empty in /home/lxg/www/shops.supreme.de/supremeshops/branches/private_wp3/wp-includes/post.php on line 811”.

It appears that the function {{{get_post_type_object}}} gets the array passed if no posts were found.

Also, I realized that custom post single pages don't issue a HTTP 404 status on errors. But this may be due to local modifications. I am currently not able to set up an environment where I isolate this problem.",mastermind
16009,Define z-index on the new admin bar,,General,3.1,normal,normal,Future Release,defect (bug),reopened,,2010-12-28T15:41:24Z,2011-01-06T12:08:20Z,"Proposal for z-index to be defined on the new admin bar (so that it will work in harmony with browser toolbar --> Web Develoepr Toolbar's ""Display Element Information"" Feature)

When the new admin toolbar is showing,
crucial information from the Web Developer Toolbar's 
""Display Element Information"" balloon becomes hidden.

Specifying a z-index for the admin toolbar seems to resolve this problem.

ie.
I changed line 92 of class-wp-admin-bar.php, 
FROM:

{{{
<div id=""wpadminbar"">
}}}

TO:

{{{
<div id=""wpadminbar"" style=""z-index:1000;"">
}}}


It seems that the z-index value is somewhat arbitrary to getting these two toolbars to work in harmony... as I've tried values ranging from 0 to 1000, and they all worked.",BlueKachina
18503,Delete-Plugin Error Validation Clears Form Values,,General,3.2.1,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2011-08-23T22:43:22Z,2011-09-01T17:17:22Z,"When bulk-deleting a set of plugins, if an error is encountered - all selected values are lost.

Process: 

1. Go to plugins overview screen, select several (active) plugins to delete.
2. From the bulk-action dropdown menu, select ""delete"", then ""apply""

Expected behaviour:

Error message: ""You cannot delete a plugin while it is active on the main site."" - Check marks are preserved, so you simply select ""deactivate"" and click on ""apply"" again.

Actual behaviour:

Error message: ""You cannot delete a plugin while it is active on the main site."" - All check marks lost, and you have to start all over again - which is a pain for sites with lots of plugins.",JohnONolan
21432,Deprecate *_blog_option(),ryan,General,3.4.1,normal,normal,Future Release,defect (bug),reopened,dev-feedback,2012-07-31T21:53:06Z,2012-10-24T17:44:45Z,"Deprecate get_blog_option(), add_blog_option(), update_blog_option(), and delete_blog_option(). The regular *_option() functions wrapped with switch_to_blog() and restore_current_blog() should be used instead.

Previous discussion:

http://core.trac.wordpress.org/ticket/21270#comment:11",ryan
19555,Deprecate url_is_accessable_via_ssl(),,General,,normal,normal,Future Release,defect (bug),new,has-patch,2011-12-14T22:56:31Z,2012-04-27T16:10:44Z,"We can convert it to use wp_remote_get() when we do, or just stub it.",nacin
10902,Display problem with exclude option in wp_list_pages,,General,2.8.4,normal,normal,Future Release,defect (bug),new,reporter-feedback,2009-10-04T19:45:38Z,2011-04-02T11:50:55Z,"Create pages A,B,C and D, A parent of B, B of C and C of D[[BR]]
A[[BR]]
-B[[BR]]
--C[[BR]]
---D[[BR]]

call in a template 
<?php wp_list_pages(""exclude=6""); ?>
(6 is the ID of page B)

I get this display :[[BR]]
* A[[BR]]
* C[[BR]]
* D[[BR]]

when I expect :[[BR]]
* A[[BR]]
* C[[BR]]
-* D[[BR]]",toutantic
18190,Don't redirect to 404 page on empty post archives,,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-07-21T09:05:41Z,2011-07-22T13:55:20Z,"""../archive/2010/09/29"" redirects to a 404 Error because there are no posts that day.

If there are no posts, it shouldn't redirect to a 404 page. It should let the user perform the loop and show a message like this:

""Sorry, there are no posts for that date""",gazpachu
14296,Don't show previous post link on orphaned attachments,,General,3.0,normal,normal,Awaiting Review,defect (bug),new,has-patch,2010-07-13T12:52:51Z,2010-07-14T04:43:32Z,"In function adjacent_post_link(), add check if post parent not empty.",zeo
15963,Don't try to add orphaned pages' parents' slugs to the page URL,,General,3.1,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-12-23T11:08:55Z,2012-09-19T22:31:20Z,"If a page becomes orphaned---in other words, if a page points to a parent object that doesn't exist any more---`get_page_uri()` doesn't sanity check that the parent object actually exists.

Patch does the check without any extra work, by moving stuff around.",filosofo
21537,Email address sanitisation mangles valid email addresses,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2012-08-10T11:24:50Z,2013-01-22T09:00:07Z,"If you change your email address to one including an ampersand then we mangle the address with html entities.

For example:
 * This - peter&paul@sitting.in.a.tree.com
 * Becomes - peter&amp;paul@sitting.in.a.tree.com

This is due to the call to {{{wp_filter_kses}}} on {{{pre_user_email'}}} in {{{default-filters.php}}}.

The was added in [5906] for #4546.

I'm not sure if we need kses filtering for emails - if we do which should probably revert this conversion of the & => &amp; afterwards.",westi
21204,Encoding problem with errors and warnings,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-07-09T16:31:04Z,2012-07-09T22:01:05Z,"There are several functions for debugging and their messages are also localized. For example _deprecated_argument(), _doing_it_wrong(), etc. But when these functions are fired, encoding of the whole administration (not only error messages) is damaged (see attached screenshot).

It is not very good because even if debugging is turned off, some errors can be still triggered - for example trigger_error() in ms_subdomain_constants() function, etc.",pavelevap
18002,Entering page number for spam comments takes you to page 1,,General,3.2,normal,normal,Future Release,defect (bug),new,dev-feedback,2011-07-06T11:27:25Z,2011-11-22T17:17:15Z,"When browsing through spam comments, I attempt to view pages in the middle of the set (e.g. page 9 of 13) using the number-entry feature (at the top right) introduced in WP 3.1. Unfortunately, in WP 3.2 this feature has been broken, and when I press Enter, it substitutes '1' for the page number I enter, and then takes me to page 1. I have tried this when browsing posts or normal comments, and it doesn't happen; it only happens when viewing spam comments. I have tried it on Chrome in Linux and Safari on Mac OS X and the same thing happens.",IndigoJo
19288,Erroneous custom taxonomy screen menu behaviour,,General,3.0,normal,trivial,Awaiting Review,defect (bug),new,,2011-11-18T11:36:26Z,2011-11-24T16:24:31Z,"I don't think this could get any more edge case and it's of trivial severity, but I thought I'd report it for completeness' sake.

If a user has the ability to manage terms on a post type, but not the ability to edit posts of that post type, and the post type has more than one taxonomy, then the post type menu doesn't expand as expected when viewing one of the term management screens for that post type.

Steps to reproduce:

 * Register a custom post type that uses its own capability mapping (resulting in `edit_foos` etc).
 * Register at least two custom taxonomies for this post type, with or without its own capability mapping.
 * Give a user (or role) the ability to manage the taxonomy terms but not the ability to edit posts of the post type.

When viewing one of the term management screens for the given post type, the menu doesn't expand as expected (although the new 3.3 fly-outs do show).
",johnbillion
15674,Error when trying to logout,,General,3.0.2,normal,normal,Awaiting Review,defect (bug),reopened,reporter-feedback,2010-12-03T23:46:21Z,2011-08-07T20:51:51Z,"I get this error when trying to logout of WordPress 3.0.1 & 3.0.2:

""This webpage is not available. The webpage at http://my.site.com/wp-login.php?action=logout&_wpnonce=12c23f0af8 might be temporarily down or it may have moved permanently to a new web address.""

and

""Error 101 (net::ERR_CONNECTION_RESET): Unknown error.""

in Google Chrome and

""The connection was reset""

in Firefox. Both browsers running on Windows XP SP3. I tested this on another computer running Windows XP SP3 (different ISP) and got the same error in Firefox.

Strangely, I do not get these errors at all on my Mac, in both Chrome and Firefox; they both logout correctly. It also works correctly on my iPhone.

I've tried cleaning cache and cookies in both browsers, reseting my sub-domain in my host's control panel, changing to the default theme; none of which worked at all.  Must be some kind of bug, lots of reports about this in the forums.

See thread here:  http://wordpress.org/support/topic/error-when-trying-to-logout?replies=9",interconnect
12760,Escaping shortcode conditionally,markjaquith,General,3.0,low,normal,Future Release,defect (bug),assigned,dev-feedback,2010-03-29T12:21:55Z,2011-04-07T00:11:32Z,"Using additional brackets is the official way to ""escape"" a shortcode. e.g. {{{[[escaped]]}}}

Using additional brackets {{{[[shortcode]]}}} in a post works only when the plugin (function) for this shortcode is active. When deactivated, additional brackets are shown in the post. It is annoying for many users, because editors sometimes test a plugin, write about it in a post with shortcode example and after some months this plugin is deactivated. Now there will be additional brackets, breaking their example code.

Input:

{{{[[shortcode_that_does_not_exist]]}}}

Expected output, regardless of whether that plugin is active:

{{{[shortcode_that_does_not_exist]}}}

Actual output, if plugin is not active:

{{{[[shortcode_that_does_not_exist]}}}

[edited by Mark Jaquith]",pavelevap
19268,"Even if .htaccess isn't writable, WP shouldn't prompt if there are no changes.",,General,,normal,normal,Future Release,defect (bug),new,reporter-feedback,2011-11-16T21:36:20Z,2011-11-17T16:39:33Z,"When you visit the permalinks settings screen, and .htaccess isn't writable, it prompts you to manually update. But it does that even if the current rules it is suggesting are already present. It should only prompt if the rules it is suggesting are different from what you have.",markjaquith
16167,FORCE_ADMIN_SSL broken if site runs on port different from 80,,General,3.0.4,normal,normal,Future Release,defect (bug),new,has-patch,2011-01-09T15:49:44Z,2011-10-17T23:37:51Z,"I'm running a wordpress site (http://yoush.homelinux.org:8079/) hosted at my home server. Unfortunately mu ISP blocks incoming connections on port 80, so I have to use non-standard port.

With unmodified wordpress 3.0.4, I was unable to use FORCE_ADMIN_SSL, because it caused URLs starting with

http://yoush.homelinux.org:8079/

to be converted to

https://yoush.homelinux.org:8079/

Which is definitly broken since it is impossible to serve both http and https on the same port.

To fix this, I propose removing ':port' from URL when converting http url to https.
I've created a patch for this, that seems to work for me on my site.",yoush
18685,GET Requests with hostname in them causes wrong redirect,,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-09-16T14:34:54Z,2011-10-07T08:49:01Z,"Hi!

I have noticed that my Android phone when using Cyanogenmod with default browser does some ""special"" things when on 3G. (It does not happend via WiFi)

It appears that the hostname is sent with every GET-request. Its common to only send the path in a GET-request but the HTTP secification also allows for the use of hostname within a GET-request.

My test page ( http://h3x.no/dump/test.php ) shows the hostname in the REQUEST_URI via 3G, and skips the hostname when on WiFi.

This causes Wordpress(i suspect) to redirect me to the wrong page.

Example:

I want the page:
http://h3x.no/2011/09/12/getting-windows-2008-server-uptime-via-the-command-line

My phone sends me to:
http://h3x.no/2011/09/12/getting-windows-2008-server-uptime-via-the-command-line/http/h3x.no/2011/09/12/getting-windows-2008-server-uptime-via-the-command-line",Ueland
15619,General Settings Tab Not Allowing trailing URL slash to be stored in Site & WordPress address (URL),,General,3.0.1,normal,normal,Future Release,defect (bug),reopened,dev-feedback,2010-12-01T02:35:11Z,2011-01-21T10:15:11Z,"**Thank you for all of the efforts you've made regarding plugins easier to maintain - I deeply appreciate it.** 

When WordPress is installed in a subfolder, attempts to add the trailing slash currently will not save properly. From this URL:
http://www.domain.com/wordpressinstalledinfolder/wp-admin/options-general.php

The General Settings Tab - WordPress address (URL)
The General Settings Tab - Site address (URL)

Want to enter ""http://www.domain.com/wordpressinstalledinfolder/""
***it won't let me enter a trailing slash on the end like it will in other URL fields on the site.***

Request: Please tweak this field to allow storage of folder trailing slash.




",dsquared
17445,Give a speed kick to combined is_serialized() + is_serialized_string() + maybe_unserialize() usage,,General,3.2,normal,normal,Awaiting Review,defect (bug),new,,2011-05-15T14:13:18Z,2011-05-15T21:14:14Z,"In #17129 is_serialized_string() has been speed up by 23%. That was for the function itself.

However, that function is used in contexts that make the call to is_serialized() directly or indirectly via maybe_unserialize().

Most often these calls are redundant and must not be done at all.

If preconditions are already met, is_serialized_string() can be replaced with a simple check for the 's' or 'S' format and maybe_unserialize() can be replaced with @unserialize($data) as that's the code executed in maybe_unserialize() when is_serialze() had returned true on $data;",hakre
17632,HTML 5 Validation issues (theme independent),,General,3.1.3,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-01T07:52:09Z,2013-04-17T01:37:23Z,"Wordpress often adds the rel attribute to links.

For example rel=""category"" or rel=""attachment"" etc...

Apparently these keywords are not allowed in html 5 :

http://www.whatwg.org/specs/web-apps/current-work/multipage/links.html#linkTypes

So the validation fails :-/

These attributes are a bit hardcoded. You can use regex in filters or javascript solutions to remove them, but this is not a good solution.

I think this problem is now a bug, if you consider the importance of code validation.",amirhabibi
2691,HTML comments in posts aren't handled properly.,,General,2.8.5,normal,normal,Future Release,defect (bug),reopened,,2006-04-25T03:16:37Z,2011-02-28T06:45:22Z,"When an HTML comment is added in a post, autop adds paragraph ( <p> ) tags around the comment and for multi-line comments line breaks ( <br /> ) are added after every line.  This should not happen in HTML comments.

This ticket is similar to #712 which was closed with wontfix.  I would like to know why this isn't seen as an issue?  It prevents the addition of RDF and other metadata, not to mention just plain old HTML comments in posts.",gord
19383,Hide post formats next to post titles if the active blog theme does not support post formats,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-11-28T18:16:12Z,2011-11-29T18:47:55Z,"If I'm using a theme that supports post formats—e.g. Twenty Eleven—then next to each title on `wp-admin/edit.php` I'm able to see not only the title name but also the post format that corresponds to its respective post.

If I switch to a theme that does not support post formats at all I am still able to see post formats associated with their respective posts.

This is not good for a few reasons:

* Showing a post format next to a title while a theme that doesn't support post formats is active is confusing. ""Why does my post have the word Image/Link/Status/Quote by it? What does that mean?""
* There is no way to edit or remove a post format associated with a post when a theme that does not support post formats is active, so the labels are useless.

When a theme that does not support post formats is active those format labels should be hidden. The posts can of course still retain their formats in case a user switches back to a theme that supports theme, but otherwise they should be hidden.",philiparthurmoore
18102,IE8 and wp_tiny_mce has broken Link button,,General,3.2,normal,normal,Awaiting Review,defect (bug),new,,2011-07-13T14:07:43Z,2011-07-13T17:57:57Z,"With IE8 and custom-generated WYSIWYG editors created with wp_tiny_mce, the link button doesn't work correctly.  What happens is quite interesting:

On the first click, the Add/Edit dialog link box appears full sized, but empty.

Dismissing the box and clicking the link button again will give you just the Add/Edit link dialog box's title, but not even a box.

Dismissing that box and clicking on it a third time will finally generate an Add/Edit link form in the dialog box, but it won't be functional.

As far as I can tell, there are no JavaScript errors displayed.

This works correctly in Chrome, FireFox, and IE9. The problem only exists in IE8 as far as I can tell.  I tested on 3.2 and 3.2.1

The issue occurs with a default theme, but not with all plugins disabled (because plugins are required to create such a WYSIWYG box).  The issue does NOT exist on the default post/page add/edit screens.  Examples of plugins affected are WYSIWYG Widgets (http://wordpress.org/extend/plugins/wysiwyg-widgets/) and Rich Text Tags (http://wordpress.org/extend/plugins/rich-text-tags/), although I discovered the issue while developing my own plugin.

I also put together a bare-bones plugin to help verify the issue in case that helps (see the new menu item in Settings):
http://dl.dropbox.com/u/5148765/lems_wysiwyg_test.php  (requires WP 3.2+)

While it's possible that the real problem is how we're calling wp_tiny_mce (and I certainly apologize if that's the case), all 3 of us developers have run into this issue independently.

Let me know if you need any more info!",MadtownLems
23478,"Impossible to view posts titled ""WP Content"" or ""WP Includes"" with some forms of permalinks",,General,,normal,normal,Awaiting Review,defect (bug),new,close,2013-02-15T06:33:05Z,2013-02-15T09:35:07Z,"Posts titled ""WP Content"" or ""WP Includes"" (without quotes) are impossible to view when using the following forms of permalinks:

1. /%postname%
2. /%postname%/

A post titled ""WP Content"" will have a permalink of either http://example.com/wp-content or http://example.com/wp-content/, '''both will show a blank page'''.

A post titled ""WP Includes"" will have a permalink of either http://example.com/wp-includes or http://example.com/wp-includes/, '''both will show the directory index of the wp-includes directory'''.

WordPress should either:

a) make it possible to view both posts normally

b) warn the user or make it not possible to have a combination of some post titles and some certain forms of permalink.",kjasdu
14789,Inconsistency in 'all' hook invocation,,General,3.0.1,normal,normal,Awaiting Review,defect (bug),reviewing,has-patch,2010-09-07T01:41:33Z,2011-03-21T11:36:19Z,"The 'all' hook (catchall hook for any hook name) is getting inconsistently called depending on how the concrete hook is being invoked: by apply_filters, apply_filters_ref_array, do_action or do_action_ref_array.

In the simple cases (apply_filters, do_action), the hook will get all parameters passed, in the ..._ref_array cases, the hook will get only two parameters passed in which the first parameter is the name of the hook (a.k.a. tag) and the second parameter is an array of all other parameters.

Every 'all' hook-function-callbacks should be called in the same way regardless whether which of the four invocation functions have been used on that pointcut.

Additionally all four routines share a lot of the same code which could benefit of a refactoring.",hakre
7267,Infinite recursion in get_category_parents() and _children(),,General,,normal,normal,Future Release,defect (bug),reopened,has-patch,2008-07-09T04:54:21Z,2010-12-07T18:41:17Z,"These two functions can get stuck in a recursion loop if there's an indirect category hierarchy loop like A -> B -> C -> A.

The patch keeps track of traversed IDs and prevents repetition - there's a name for the algorithm but it escapes me.  It increases memory usage but probably not too much - certainly less than infinite recursion does.


",tellyworth
19120,Interim login needs some work,azaozz,General,,normal,normal,Future Release,defect (bug),assigned,early,2011-11-02T22:46:42Z,2012-05-02T19:43:33Z,"A CSS style causes a white 20px stripe at the top of the otherwise gray interim login screen.

That should go, and azaozz thinks the popup should as well.

3.3 for now, but the rest may be punted by azaozz.",nacin
11697,Keep private posts in the admin area / Was: Make private posts a canonical plugin,,General,2.9,normal,normal,Future Release,defect (bug),assigned,has-patch,2010-01-02T21:33:21Z,2011-04-11T23:15:01Z,"Said Matt:
> Also, a lot of the complexity of private posts could be avoided by a relatively simple change: saying they're only viewable in the dashboard. (Which I think is close to how people use them already.)

----

There are quite a few tickets related to private posts that can be viewed by users who should, and even more tickets related to private comments that can be viewed by users who aren't authorized to view the post.

There also is at least one ticket that highlights a performance issue related to private posts.

http://core.trac.wordpress.org/search?q=private

Would it be an option to turn this into a canonical plugin and begone with the problems?",Denis-de-Bernardy
17296,Link Descriptions Are Truncated Without Notification,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-05-01T03:04:09Z,2011-07-03T07:48:46Z,"When creating new links, or editing existing links, using the WordPress admin interface, link descriptions are truncated to 255 characters. This is because there is a 255 character limit defined in the link_description column in the wp_links database table.

Steps to reproduce:

1) Go to WP dashboard

2) Select Links > Add New from the menu.

3) Create a link with a description longer than 255 characters.

4) Go back to the link in the links interface; the description has been truncated.

Expected behavior:

1) The field should have a larger limit (perhaps 1024 characters?).

2) Even if we keep the limit at 255, the UI should prevent users from entering more than the limit, or notify them that the description they have entered will be truncated to the limit.

Thanks for your time!",achmafooma
22625,Lone less than (<) characters foul up balanceTags(),,General,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-11-28T22:47:23Z,2012-12-11T20:34:57Z,"1. Turn on tag balancing.
2. Try this text:
{{{
This is < That.

<blockquote>foo</blockquote>

Text <a href=""#"">link</a>. Post-link text.
}}}
3. On save, the ending blockquote tag is stripped, and the subsequent text is blockquoted.

We should recognize lone {{{<}}} characters and entity encode them like we do for {{{<3}}}.",markjaquith
17491,Make is_email() compliant with RFC2822,,General,3.1.2,normal,minor,Future Release,defect (bug),reopened,dev-feedback,2011-05-18T14:48:52Z,2013-01-10T11:02:05Z,is_email('toto.@toto.com') returns true,arena
15029,Make it possible to determine resource in get_ancestors(),filosofo,General,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-10-04T10:59:12Z,2010-12-17T15:43:54Z,"In case there exists a conflict between taxonomy and post_type names, allow it to be resolved explicitly when calling `get_ancestors()`.",filosofo
13078,Make wp_register_style and wp_enqueue_style consistent,,General,3.0,normal,minor,Future Release,defect (bug),new,has-patch,2010-04-22T01:08:39Z,2013-03-31T05:06:56Z,"When fixing #13056, I noticed that wp_register_style and wp_enqueue_style had a few odd differences.

1. Enqueue truncates the $handle variable after the first '?' while register (and all other wp_style functions) accept any string.

2. Register set the default for $media to 'all', while enqueue set it to false. (fixed in the #13056 patch).

Moreover, since the two functions are practically the same, I've grouped them together in a private _wp_register_style function with an additional $enqueue boolean. Both enqueue and register call _wp_register_style.

I've omitted the truncate behavior mentioned above. If there's any reason for it in one, and not the other, or in both, feel free to correct me.

We could also just remove the truncate behavior from enqueue. It's a minor patch, and comes down to coding style.",koopersmith
21658,Meaningless adjacent post links for pages,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-22T12:34:26Z,2012-08-22T12:34:26Z,"In WP 3.3 we removed a number of obsolete <link> elements from the page header leaving just those with rel=""next"" and rel=""prev"" generated by function adjacent_post_rel_link_wp_head() in file wp-includes/link-template.php [see #18128].

This change brings the function of these links into sharper relief and raises several concerns. Presently, they are generated only for singular pages/posts that are not attachments.

Such links make some kind of sense for ordinary posts, because these can be considered to be part of an ordered collection where the next/previous relationship is meaningful. It may also make sense for custom post types, depending on the use to which they are being put.

For pages, however the links generated refer to the next/previous pages as they happen to be stored in the WP database and these are unlikely to have any meaningful relation to the originating page.

Others have reported performance and other problems with browsers such as Firefox that use these links to prefetch content [see #12603, #14382 and #19018].

You can see their point! If I'm viewing page ""about"" what are the chances that I will next want to view the page ""contact"" just because this happens to have the next sequential ID in the WordPress database?

At the very least, I believe that these links should not be generated for pages.  Better still would be to follow Google's advice [see #18672] and use these just for paginated content (i.e. individual posts/pages [with <!--nextpage-->] or archives [including blog home]). Some potential patch code is available against #18660 which raised a similar issue. Links between adjacent posts can be left to the usual navigation elements within the page body.",mdgl
16584,Media Gallery sorts images by two columns despite get_posts not supporting this properly,,General,2.6,normal,normal,Future Release,defect (bug),new,,2011-02-17T22:25:55Z,2011-02-20T17:08:05Z,"In the get_media_items function in wp-admin/includes/media.php, attachments are sorted first by menu order, then by post ID by the following line:

{{{
$attachments = get_children( array( 'post_parent' => $post_id, 'post_type' => 'attachment', 'orderby' => 'menu_order ASC, ID', 'order' => 'DESC') );
}}}

However, the get_posts in wp-admin/includes/query.php function does not properly support this. It splits up orderby by spaces, and then throws out 'ASC,' as it does not match a valid value. Due to a lucky coincidence, it turns into ORDER BY menu_order, ID DESC which still works in the same way.

I often want to display the first x uploaded images to a post, but allow changing which images are considered the first x via menu_order. If I solely order by ID ASC, that won't work. If I solely order by menu_order ASC, that won't work either, since the ones at the top of the list (latest uploaded) become first in the menu order. The only way to get it to work is to sort by menu_order DESC, ID ASC - but using 

{{'orderby' => 'menu_order DESC, ID', 'order' => 'ASC'}}

doesn't not work since the 'DESC,' gets ignored.

There are two possible interpretations of this bug:

a) Remove 'ASC,' in the line I mentioned since it's not valid according to the current rules for get_posts

b) Make get_posts properly support the above method by not having it throw out the extra order condition.
",smerriman
15732,Media Settings page description is unclear,,General,,normal,trivial,Future Release,defect (bug),new,has-patch,2010-12-08T15:26:37Z,2010-12-11T13:41:51Z,"This is pretty trivial, but it's an easy fix, so I thought I'd throw it out there.

Currently the Media Settings page reads, ""The sizes listed below determine the maximum dimensions in pixels to use when inserting an image into the body of a post.""

That isn't true, it should probably read ""The sizes listed below determine the maximum dimensions in pixels to use when adding an image to the Media Library.""

The only reason this came up, is a client of mine was confused when she changed the large dimensions to ""434x434"" and the image she had uploaded previously w/ the dimensions of 800x732 did not give her the ""Large"" option.

I'm not sure anyone else in the world has ever had this problem. So the severity is definitely trivial.",layotte
16529,Missing quotes in DB_NAME on installation,,General,3.0.4,normal,normal,Awaiting Review,defect (bug),new,close,2011-02-10T23:41:47Z,2011-02-11T00:31:33Z,"A fresh installation of the database creates the file ""wp-config.php"".  This sets the MYSQL hostname.  When entering the proper information from the 5-minute installation into the MYSQL hostname field, this is incorrectly saved to the ""wp-config.php"" file *without* quotes around the host if the hostname is something other than localhost.

This makes installation problematic for users for which MySQL is not residing on the same host as their web server.  Specifically 1&1 users experience this issue.  This appears in the latest SVN pull.

see line 220 - 229 on /wp-admin/setup-config.php

patch attached.",beadon
19588,"Move to Trash results in a page with a ""0""",,General,3.3,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2011-12-17T15:41:04Z,2012-01-13T06:24:36Z,"In the latest wordpress, if I delete a draft either the bulk delete , or individual move to trash, it loads a page with a zero. If I publish the draft, then move to trash, it works. I searched open tickets and could not find anything specific on this flow. ",astriker
23781,New Post Publishes to Wrong URL,,General,3.4.2,normal,major,Awaiting Review,defect (bug),new,,2013-03-15T04:59:52Z,2013-03-16T01:13:12Z,"The ""Permalink"" displayed in the editor for new posts may be wrong, and changes (surprise!) when the Publish button is clicked.

Steps to reproduce this:
1. Start typing a title in a new post.
1. Wait for an auto-save and Permalink to appear.
1. Make the title longer.
1. Type a post body.
1. Click Publish.

Expected result:

The new post should be published at the Permalink being displayed on the post editor.

Actual result:

A completely different permalink is generated based on the current title.  The new page gets cached at the ""wrong"" URL before any changes can be made.  General pandemonium ensues.  Etc.  (It's not a blocker bug, but it is so completely annoying!)",miqrogroove
20360,New Sidebar Takes Over Previous Sidebar Widgets,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-04-05T00:09:43Z,2012-04-05T00:09:43Z,"When creating a new sidebar in a theme already utilizing a sidebar, the new sidebar takes on the widgets of the sidebar previously occupying that place of order.  For example, a theme currently has these sidebars, with widgets in use:

Sidebar
Footer

Adding a new sidebar in a array:


{{{
$sidebars = array('Home Page Sidebar','Sidebar','Footer');

foreach ($sidebars as $sidebar) {

  register_sidebar(array('name'=> $sidebar,

    'before_widget' => '<article id=""%1$s"" class=""widget %2$s""><div class=""container"">',

    'after_widget' => '</div></article>',

    'before_title' => '<h3>',

    'after_title' => '</h3>'

  ));

}
}}}

Home Page Sidebar takes the widgets of the Sidebar when it takes in place in line.",imikedesigns
20935,No display in the WYSIWYG editor.,,General,3.4,normal,normal,Awaiting Review,defect (bug),new,,2012-06-13T05:58:51Z,2012-06-13T05:58:51Z,"Sometimes, nothing in the visual editor in me does not appear and you can switch to HTML view.",OldShaterhan
14581,No magic numbers,,General,,normal,normal,Future Release,defect (bug),new,,2010-08-10T15:57:59Z,2010-11-26T21:54:49Z,Add defines for the numeric user_status and comment_status values.,ryan
16845,Notice: Undefined index: post_id  in wp-admin/media-upload.php,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-03-13T08:09:22Z,2011-03-15T11:34:06Z,"Installed 3.1 on my server. when i edit a post and trying to insert a image from another site using: /wp-admin/media-upload.php?tab=type_url . im missing post_id in that url. then i dont get the ""insert into post"" button. 
error msg:
Notice: Undefined index: post_id in /var/www/blog/htdocs/wp-admin/includes/media.php on line 1639 
Notice: Undefined index: post_id in /var/www/blog/htdocs/wp-admin/includes/media.php on line 2223 ",spaam
19188,Only one dashboard widget can't be moved into second column unless Screen Options is expanded,,General,2.9,normal,normal,Awaiting Review,defect (bug),new,,2011-11-06T22:02:54Z,2011-11-07T21:01:20Z,"A crazy weird issue. Since 2.9, a single dashboard widget can't be dragged (easily) into the second column unless the Screen Options are expanded. 

Screencast: http://cl.ly/3y0j1o2f3A2f3l06120R",ryanimel
17077,Page parent li elements in nav menus not always given current-page-parent class,,General,3.1,normal,trivial,Awaiting Review,defect (bug),new,,2011-04-07T09:53:45Z,2011-04-07T09:54:04Z,"Using a fresh WP3.1.1, 2010 theme, Theme Unit Test data, adding a navigation menu with Parent Page as an item without any child items and then navigating in the browser to Child Page 1.

The <li> for the parent menu item doesn't get assigned the current-page-parent class.

It does get the current-page-ancestor class, and none of my themes demand the current-page-parent class specifically so I've tagged this as trivial.",andymacb
11235,"Pages whose ancestors are not all ""published"" cannot be used as parents for other pages.",,General,2.9,normal,normal,Future Release,defect (bug),new,,2009-11-23T01:04:01Z,2009-11-23T15:27:55Z,Pages with trashed parents cannot be used as parents for other pages (they do not appear on the list).,caesarsgrunt
23412,Password protected pages - redirect after login,,General,3.5.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-02-07T10:32:30Z,2013-03-02T16:03:02Z,"Hi,

I am using WP 3.5.1 and I have found out that after a successful login to a password protected page, WP won't redirect back.

This is because referrer is empty.

So I have modified page login script to have hidden ""_wp_http_referer"" field in form.

After that, login redirects back to page normally.

Here is my script:
{{{
	function my_password_form() {
	    global $post;
	    $label = 'pwbox-'.( empty( $post->ID ) ? rand() : $post->ID );
	    $o = '<form class=""protected-post-form"" action=""' . get_option( 'siteurl' ) . '/wp-login.php?action=postpass"" method=""post"">
	    <p>' . __( ""To view this protected post, enter the password below:"" ) . '</p>
	    <label for=""' . $label . '"">' . __( ""Password:"" ) . ' </label><input name=""post_password"" id=""' . $label . '"" type=""password"" size=""20"" /><input type=""submit"" name=""Submit"" value=""' . esc_attr__( ""Submit"" ) . '"" />
	    <input type=""hidden"" name=""_wp_http_referer"" value=""'.get_permalink().'"" />
	    </form>
	    ';
	    return $o;
	}
	add_filter( 'the_password_form', 'my_password_form' );
}}}


This functions returns empty URL to wp-login.php script:
{{{
function wp_get_referer() {
	$ref = false;
	if ( ! empty( $_REQUEST['_wp_http_referer'] ) )
		$ref = $_REQUEST['_wp_http_referer'];
	else if ( ! empty( $_SERVER['HTTP_REFERER'] ) )
		$ref = $_SERVER['HTTP_REFERER'];

	if ( $ref && $ref !== $_SERVER['REQUEST_URI'] )
		return $ref;
	return false;
}
}}}
I hope this helps.

I have tried this with all plugins disabled, and also on 20-12 theme, same error occurs.

Bye,
Dubravko

",dood_cro
18824,Password protected pages don't work if site address is different from wordpress address,,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-09-30T13:15:08Z,2011-11-09T21:44:28Z,"Hi,

On a 3.2.1 wordpress site, we notices that password protected pages didn't work.

Site address is in another domain (x.com) than wordpress address (y.com).

If we set the same domain for both of them, protected pages work again.

I think I understood what was going on:

1. the browser gets the form for the password via siteurl.
2. however the forms posts data to wordpress address (wp-pass.php), and the browser gets the cookie within this domain (and not siteurl domain)
3. the browser is redirected to siteurl, but the cookie doesn't work (domain mismatch).

I corrected wp-pass.php, by replacing get_option('siteurl') by get_option('home'), and it worked.",3singes
17002,Pasting Large Amount of Text Through Paste-from-Word TinyMCE button leads to Whitescreen upon publishing,,General,3.1,normal,minor,Awaiting Review,defect (bug),new,reporter-feedback,2011-03-30T19:04:53Z,2011-04-01T16:58:15Z,"I needed to paste a large MS Word document into a WordPress page, so I used the Paste-from-Word button on the Visual Editor to do so. When I tried to publish the page, I got a whitescreen with the URL /wp-admin/post.php

After testing the problem in various ways, I determined that the problem arose only when the amount of words in the page were more than 10,000. The page posted fine when there were fewer than 10,000 words.

Using WordPress 3.1, CommentPress Theme, Mac OS X 10.6.7, Chrome browser",mkgold
19065,Please provide original javascript files (.dev.js) for all minified files,nacin,General,,normal,normal,WordPress.org,defect (bug),reopened,,2011-10-27T10:18:57Z,2012-06-15T09:01:46Z,"Please provide original javascript files (.dev.js) for all minified files. This is not only useful for debugging, it's also a requirement of some free software distributions like Debian (cf the bug report that prompted all this: http://bugs.debian.org/646729).

Missing files that I noted are (relative to wp-includes/js):
{{{
crop/cropper.dev.js
jquery/jquery.dev.js
jquery/jquery.query.dev.js
jquery/jquery.schedule.dev.js
jquery/jquery.serialize-object.dev.js 
jquery/ui/*.dev.js (all *.js files are minified)
plupload/plupload.*.dev.js (all plupload.*.js files are minified)
swfupload/swfupload-all.dev.js
tinymce/tiny_mce.dev.js
tinymce/tiny_mce_popup.dev.js 
tinymce/plugins/*/editor_plugin.dev.js (all plugins except the WP ones)
tinymce/themes/advanced/editor_template.js
tinymce/wp-tinymce.dev.js.gz
swfobject.dev.js
}}}

I'm not really sure about swfupload/swfupload-all.js, if it's swfupload.js + the 4 plugins minified, then it's ok I guess. But it would be nice to have it documented.

tinymce/wp-tinymce.dev.js.gz is probably also generated from something else but I could not figure out what. It would be nice to document how and when to regenerate it.

I can help to dig out the required files if it helps. Ideally the build process of wordpress would include a way to regenerate automatically the minified files from the corresponding .dev.js file.",rhertzog
20260,Post by email posting same message multiple times,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-03-19T15:40:57Z,2012-03-20T08:45:04Z,"I am using the Post by email feature for a Wordpress.org blog. I post by mail once a day and daily to the blog, usually around midnight. There are usually between 2 and 6 messages posting on any given day (sent as individual emails).

I have set up a secret POP email address to which I send emails, and these emails are picked up by Wordpress as Posts on my blog.

However, I am seeing the messages post multiple times; sometimes twice, sometimes up to 10 times in a row on the blog.

It usually happens for all messages on certain days, but some days this does not happen at all. I have not been able to identify a pattern of which days have this problem or if it is related to the number of messages posting on a particular day.

This issue began happening around October 2011; previously, I didn't notice this problem.

Environment:
Wordpress.org 3.3.1
Thunderbird 7.1 email client; publish messages sent in text mode, with word wrap off
Google Apps account used as secret email. Account set to POP. All forwarding, etc. is turned off.

Steps: 1) wp-mail.php modified to post regardless of author, per bug 18923 which keeps messages stuck in Pending status 2) User from which posts sent is registered as Editor or Admin in Wordpress site. 3) Theme footer modified to include automatic checking for incoming messages 4) Email account is setup in mail client that matches the Admin/Editor email in Wordpress 5) Message to post is sent to the secret address by user

Result: 1) Wordpress on certain days posts the messages with no problem; other days, it posts multiple copies of the message. Usually, either all messages post multiple times or all post one time for a given day; I have not noticed that if one message on a particular day posts multiple times that another will post only once. 2) There can be anywhere from 2 to 10 copies of the same message posted. 3) I have tried to modify my POP account settings so that messages get Archived when read, rather than staying in the Inbox; however, this did not fix the problem.

Note: I use Google Apps as the email server for both the From: mail and the secret address mail. 

I have not been able to find other discussions on this topic, nor track down any possible root cause of it.

Message of one of the posts that posted multiple times is attached.",bloggertype
16555,Post format metabox shows duplicate 'standard' format,,General,3.1,low,normal,Future Release,defect (bug),new,has-patch,2011-02-13T23:01:55Z,2011-02-20T17:38:15Z,"Having 'standard' within add_theme_support makes the standard option show up twice within the post format metabox on the write/edit screen.

{{{add_theme_support( 'post-formats', array( 'standard', 'aside', 'chat', 'gallery', 'link', 'image', 'quote', 'status', 'video', 'audio' ) );}}}

Patch fixes this by skiping over standard since it's hardcoded in the metabox.",ptahdunbar
20185,Postname Permalink with no title yields 404 error,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),reopened,close,2012-03-06T19:16:44Z,2012-04-27T19:30:20Z,"When I change the permalink structure to %postname%, I get a 404 for all posts that don't have titles. The URL for each of these posts appears to be correct - it includes the ID instead of the title, but the post being served is listed as not found. If I change the generated permalink so that it is 3 digits rather than 4 or so that it has some alphabetic characters in it, all is OK.",ikemarrus
21520,Prevent recursive script dependencies in wp_enqueue_script,,General,,normal,normal,Future Release,defect (bug),new,,2012-08-08T17:21:43Z,2012-10-23T20:32:51Z,"If a script sets itself as a dependency, we should catch that, strip out the dependency, and throw a {{{_doing_it_wrong}}}:

{{{wp_enqueue_script( 'my-script', '/path/to/file.js', array( 'my-script' ) );}}}

This may need to be done at the lowest level possible, i.e. {{{_WP_Dependency}}}",batmoo
13779,Preview doesn’t work - WP installed in its own directory,,General,2.9.2,normal,normal,Awaiting Review,defect (bug),reopened,,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
18999,Quotes in emails,titi,General,3.2.1,normal,major,Awaiting Review,defect (bug),new,reporter-feedback,2011-10-19T10:39:28Z,2011-12-19T01:57:53Z,"Quotes are displayed in plain HTML CODE 
{{{
&#8217
}}}

instead of the a real quote.

This bug is in any email reply notifications containing quote in the post.

Using BBPress 2.0 with Wordpress. French language.",thibotus01
21872,"RSS Widget, and all of fetch_feed() I believe, forces its own feed order of Post Date DESC",,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-09-11T15:25:32Z,2012-09-11T15:58:00Z,"My events management plugin wanted to provide Upcoming Events via RSS.  I wrote a pre_get_posts filter to modify the order and orderby of the event's feed to be Ascending based on a the event's start date, and it was good.

Good, however, for only as long as you don't subscribe to the feed using WordPress (whether it be the event site or one on a totally different network).  WordPress, upon fetching the feed, always re-sorts the posts according to the post date.  Subscribing with something like iGoogle, will show me my upcoming events in the order that I've coded.

Is this an intentional design decision? It feels to me that the generating site should be responsible for the order of the feed, and WordPress should respect the generating site's wishes and present the feeds in the order it is given.",madtownlems
21234,Recursive directory creation & get_calendar() for custom post types,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-07-12T12:31:28Z,2012-07-13T00:28:43Z,"Hello!
I made two patches, and sent the pull request on githab.

https://github.com/WordPress/WordPress/pull/12
https://github.com/WordPress/WordPress/pull/14

And I want to join to contributers team. How can I do it? 
Irc chanel is Terminated :(",avaddon
15424,Refresh post count when a post is deleted,,General,3.1,normal,normal,Future Release,defect (bug),reopened,has-patch,2010-11-14T16:02:47Z,2012-03-24T14:15:48Z,"Hi Guys,

I am reporting a bug in the system. I have various users in WPMU. They have their posts and i am tracking their no of posts.

Now if i delete a post from users account post count isnt getting updated. It remains at what it was previously.

eg. If a user has 4 posts in his account and he deleted his one post still the ""post_count"" field in ""wp_options"" table remains 4 only. Its not getting updated to 3.

Is there any patch for this ??

Awaiting eagerly for response.

Samir",chouxpastry2002
21134,Registering and enqueueing on the same action can cause enqueueing to happen before registering,,General,3.4,normal,normal,Awaiting Review,defect (bug),new,,2012-07-02T11:00:17Z,2012-07-03T01:42:10Z,"We have two plugins, plugin1 and plugin2. Plugin1 registers a script, Plugin2 wants to enqueue this script. Both of these routines are executed on the [http://wpdevel.wordpress.com/2011/12/12/use-wp_enqueue_scripts-not-wp_print_styles-to-enqueue-scripts-and-styles-for-the-frontend/ _enqueue_scripts] action.

There is a chance that enqueueing in Plugin2 will happen before registering in Plugin1 and therefore fail.

Possible fixes:

* Every time we enqueue a script, registered in another plugin, we use a higher priority. I am not a fan of this approach, because it is opaque – we need to document each enqueue like this, because the next developer might not know why did we use higher priority.
* Every time we register a script, we use a lower priority. I am not a fan of this either, because we will have to do this for almost every register, because we can't know if another plugin won't try to enqueue our scripts.
* Violate core recommendation and register the script on an earlier hook. I am not a fan of  approach for obvious reasons.
* Add {{{_register_scripts}}} hooks and recommend plugin authors to register their scripts at this time.

I would prefer if we added another set of hooks, because it both makes sense to register on a register hook (as opposed to enqueue hook) and it separates the two actions, so that we can execute them at different times.

When we agree on a solution, I would be happy to write the patch.
",nbachiyski
19487,Remove useless calls to set_time_limit(),westi,General,1.5,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-12-09T14:53:08Z,2012-11-23T10:13:52Z,"Calls to set_time_limit() were introduced in http://core.trac.wordpress.org/changeset/1812 and have remained in core ever since. The call occurs in code that makes network connections and is designed to allow time for the network calls to complete before the script execution stops.

But set_time_limit() won't take network time into account, so it actually will not do what it seems designed to do. From php docs:

  The set_time_limit() function and the configuration directive max_execution_time only affect the execution time of the script itself. Any time spent on activity that happens outside the execution of the script such as system calls using system(), stream operations, database queries, etc. is not included when determining the maximum time that the script has been running.

Further, calls to set_time_limit() can cause unexpected results in code that relies on any functions that call set_time_limit(). For example, if some code (in a cron job, say) sets the time limit to 0 (unlimited) because it knows it needs some time complete, then a subsequent call to a function that resets the time limit will halt the long-running execution once the new limit has been reached. Also from php docs:

  When called, set_time_limit() restarts the timeout counter from zero. In other words, if the timeout is the default 30 seconds, and 25 seconds into script execution a call such as set_time_limit(20) is made, the script will run for a total of 45 seconds before timing out.

Since the call to set_time_limit() does not here do anything useful, it should be removed.",dllh
14745,Renaming a Link-Category Resets Link Widget Options of that Category,,General,,low,normal,Future Release,defect (bug),new,,2010-08-31T13:21:50Z,2010-12-27T17:42:30Z,"When renaming the name of a Link Category that is used as well in a Link Widget, the Link Widget stops working.

Step to Reproduce:

 1. Create a Link Category ""Test Start"".
 2. Add 10 Links into the Category ""Test Start"".
 3. Go to the Widgets Screen and add a new Link Widget to a sidebar.
 4. Select that Link-Widget and set it from ""All-Links"" to the Category ""Test Start"".
 5. Visit your Frontpage so proof that the Widget displays.
 6. Go to the Link Cagegory Editor and quick-edit the ""Test Start"" Category.
 7. Rename it to ""Test End"".
 8. Save Changes.
 9. Visit your Frontpage.

''=>>'' The Widget has disappeared.

'''Expected behavior:''' Widget displaying with the (renamed) link category.

",hakre
15833,Script concatenation fails to take external dependencies into account.,,General,3.0,normal,normal,Future Release,defect (bug),new,,2010-12-15T17:35:17Z,2011-01-16T02:19:59Z,"Script concatenation places the concatenated script include first, before any scripts loaded separately.  If one of the scripts in the concatenation relies on a script outside the concatenation the dependency order is ignored.

When the dependencies are all internal to the concatenation things work fine (for example script4 relies on script3):

* concat=script1,script2,script3,script4,script5

But when script3 is loaded externally, script4 will break:

* concat=script1,script2,script4,script5
* external-script3

This becomes apparent if jQuery is loaded from a non-standard location (via a plugin or the [http://codex.wordpress.org/Function_Reference/wp_enqueue_script#Load_a_default_WordPress_script_from_a_non-default_location code from the Codex]) in that the visual editor fails to function correctly because source:/trunk/wp-admin/js/editor.js uses jQuery (which it fails to register as a dependency, see ticket:15830, but when I fixed that locally the results were the same).

I'm working around this in [http://wordpress.org/extend/plugins/use-google-libraries/ Use Google Libraries] by globally disabling concatenation, but it would be nice if this was fixed.


If possible, it would be nice if the loader was smart enough to do something like:

* concat=script1,script2
* external-script3
* concat=script4,script5

Or at least flagged the script with the dependency as unsafe for concatenation:

* concat=script1,script2,script5
* external-script3
* script4
  


",jczorkmid
20008,Search Results Paging Doesn't Work on Lighttp 404 Handler,,General,3.3.1,normal,major,Awaiting Review,defect (bug),new,,2012-02-10T07:01:47Z,2012-02-10T23:02:55Z,"Quote from http://core.trac.wordpress.org/ticket/11723

I'm running Wordpress on lighttpd, using server.error-handler-404 = ""index.php"", all the pretty permalinks work perfectly. However, when doing a search, i only get the first results page, that is mysite.com/?s=query works but '''mysite.com/page/2/?s=query''' doesn't (i get shown the home page saying it's on page two of it). Paging on categories, archives and tags works as expected too.

I believe this is a Wordpress error, as the variables are being correctly passed to the script. Strangely '''mysite.com/index.php/page/2/?s=query''' or '''mysite.com/?s=query&page=2 works''' as expected, i have tried exploring the code but i don't really know about the internals of the wordpress core.

I tried the solution but not working for me.

{{{
function wp_fix_lighttpd() { //checks if URI has parameter and sets globals
	if (isset($_GET) && isset($_SERVER['QUERY_STRING'])) return;
	$donga = explode('?', $_SERVER['REQUEST_URI'], 2);
	if (count($donga) > 1) { 
		$_SERVER['QUERY_STRING'] = $donga[1];
		parse_str($donga[1], $_GET);
		$_REQUEST = array_merge( (array)$_GET, (array)$_REQUEST);
	}
}
}}}

I hope anyone can help me fix this. Thanks.
",anniyan07
24376,Sharing Custom Taxonomies with built-in Post Types,,General,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-05-20T22:57:58Z,2013-05-20T22:57:58Z,"If you register a custom taxonomy for built-in post types the admin pages containing the table and count for the custom taxonomy have the wrong count for each term.

Use case, I've register a custom taxonomy and assigned to the Post and Page post types like the following:

{{{
register_taxonomy(
    'cat',
    array('post','page'),
    array(
        'labels' => array(
            'name'                => _x( 'Cat', 'taxonomy general name' ),
            'singular_name'       => _x( 'Cat', 'taxonomy singular name' ),
            'search_items'        => __( 'Search Cats', 'some_plugin' ),
            'all_items'           => __( 'All Cats', 'some_plugin' ),
            'parent_item'         => __( 'Parent Cat', 'some_plugin' ),
            'parent_item_colon'   => __( 'Parent Cat:', 'some_plugin' ),
            'edit_item'           => __( 'Edit Cat', 'some_plugin' ),
            'update_item'         => __( 'Update Cat', 'some_plugin' ),
            'add_new_item'        => __( 'Add New Cat', 'some_plugin' ),
            'new_item_name'       => __( 'New Cat Name', 'some_plugin' ),
            'menu_name'           => __( 'Cat', 'some_plugin' )
        ),
        'hierarchical' => true,
        'show_admin_column' => true,
        'show_ui' => true  
    )
);
}}}

If you add a post and create different cats, you'll see the same count shows in both admin taxonomy UIs

/wp-admin/edit-tags.php?taxonomy=cat
/wp-admin/edit-tags.php?taxonomy=cat&post_type=page
",ZaneMatthew
11414,Sidebar Calendar Widget broken,,General,2.9,normal,normal,Future Release,defect (bug),new,reporter-feedback,2009-12-12T22:33:24Z,2010-11-13T07:31:07Z,"I'm giving 2.9 beta a test drive for theme development purposes. On my test installation, I currently have the two default themes and a very simple theme of my own that I developed via a tutorial.

After I upgraded to 2.9 beta, the sidebar calendar started displaying rather oddly. It looks okay when the main page first loads, but when I click the <<Nov link, the calendar rows are way out of whack. When click on <<Oct, it's not as bad, but still incorrect. Then, when I go forward again and hit December, even that is a little bit off.

This happens whether I use the Calendar widget or just the theme's own sidebar, and it happens in all three installed themes.

My test site is at http://bleeder.faltarego.com
or http://faltarego.com/bleeder

Many thanks.",faltarego
14169,Slashes not removed when $_SERVER in process_conditionals(),,General,3.0,normal,normal,Future Release,defect (bug),new,commit,2010-07-01T20:40:28Z,2011-01-06T23:42:37Z,"Since [1964] (now after [12732] in {{{wp-includes/load.php}}}) slashes are added to all values of {{{$_SERVER}}}. If then {{{$_SERVER}}} is accessed, slashes must be removed again otherwise things might not work as intended, e.g. comparing and parsing strings.",hakre
20338,Slugs and special chars,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-03-31T16:18:03Z,2012-03-31T16:18:03Z,"When Wordpress generates a slug, the apostrophe mark is stripped.

Examples :

""I'm open"" > im-open[[BR]]
""L'équipe"" > lequipe[[BR]]
""Suzy's Place"" > suzys-place[[BR]]

If the apostrophe is changed to ""-"" the auto generated slug will be more ""readable"" (and better for seo) :

""I'm open"" > i-m-open[[BR]]
""L'équipe"" > l-equipe[[BR]]
""Suzy's Place"" > suzy-s-place[[BR]]

Maybe a constant to define what strategy to adopt ? ",amirhabibi
13418,Smaller Bits of Code Improvement,,General,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-05-17T02:44:52Z,2012-12-07T21:18:42Z,"This ticket is for smaller bits of code-improvements all over trunk whenever something pops into sight.

Descriptions are put in the Description field of the attachment. Feel free to add your own so this won't clutter up tac too much.

Discussion in IRC and/or wp-hackers.",hakre
20890,Standardize line endings of wp-config-sample.php and wp-fullscreen.css,,General,,normal,trivial,Awaiting Review,defect (bug),new,,2012-06-08T15:24:46Z,2012-06-08T15:57:59Z,"Two core files seem to have invalid line endings (\r).
{{{
~/data/wp$ ack -l ""\r""
wp-includes/js/tinymce/plugins/wpfullscreen/css/wp-fullscreen.css
wp-config-sample.php

~/data/wp$ cat -vT wp-config-sample.php | head
<?php^M
/**^M
 * The base configurations of the WordPress.^M
 *^M
 * This file has the following configurations: MySQL settings, Table Prefix,^M
 * Secret Keys, WordPress Language, and ABSPATH. You can find more information^M
 * by visiting {@link http://codex.wordpress.org/Editing_wp-config.php Editing^M
 * wp-config.php} Codex page. You can get the MySQL settings from your web host.^M
 *^M
 * This file is used by the wp-config.php creation script during the^M
}}}",xknown
15965,Streamline exit call syntax,,General,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-12-23T13:20:09Z,2010-12-23T14:45:11Z,"After review of patches in #15518 it came to my attention that {{{exit}}} is sometimes called with and sometime w/o paranthesis.

As #15518 makes use of the {{{exit;}}} variant, all occurences of {{{exit();}}} can be replaced with it.",hakre
20822,Switching visual/html on wp_editor used on front end not saved as new default,,General,3.3.2,normal,minor,Awaiting Review,defect (bug),new,,2012-06-04T06:45:12Z,2012-06-04T06:45:12Z,"Using the wp_editor on the frontend it doesn't default to the last used state it defaults to the last used state on the back end.

I did find that using:
add_filter( 'wp_default_editor', create_function('', 'return ""tinymce"";') );

inside the function I am using to replace the front end comments with the visual editor worked around this a for me by defaulting to visual which works as well for me in this case as last used, but the default should probably change globally when a logged in user toggles between the two _or_ should get saved independently.



",jb510
20133,Tags with diacritical marks issue,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-02-28T18:06:15Z,2012-02-28T18:06:15Z,"I can't add tags to post with diacritical marks (for example polish word ""bąk"") and then the same word without diacritical marks ""bak"" from edit post panel, because function term_exists() in wp-includes\taxonomy.php returns true when checking if this tag already exists. I can do this from tag edit panel, but this is more time concuming.",partyzant
21237,"Terminology for ""Front"" and ""Home""",,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-07-12T13:59:40Z,2012-08-17T19:25:29Z,"The following related tickets all have discussions concerning the Terminology for ""Front Page"" and ""Home Page"" is some way.

#16379 - Better UI for doing ""Page on Front"" [[BR]]
(UI effected by the terminology)

#10158 - Deprecate is_home() and is_single(), in favor of is_blog() and is_post() [[BR]]
(Conditional Tags effected by the terminology)

#18705 - home_url() and is_home() with a static front page [[BR]]
(URL function effected by the terminology)

Additionally, Template files are effected by the terminology (home.php and front-page.php)

This ticket is intended to discuss the best options that address the above terminology concerns for the sake of consistency and usability. If a determination is made here, hopefully we can use the terminology to inform the above tickets.",WraithKenny
19455,"The ""magic_quotes_sybase"" Problem",夏天,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-12-06T10:13:21Z,2011-12-22T19:47:01Z,"
Post A Post, titled (in the double quote) : `""Charlie's little cat""`

It will become  (in the double quote) : `""Charlie''s little cat""`

Notice that, single quote become double quotes!!

YES , My 'magic_quotes_gpc' and 'magic_quotes_sybase' are enabled!

Here is The PHP.NET links: http://php.net/manual/en/security.magicquotes.disabling.php",summerblue
18322,The Road to Magic Quotes Sanity,,General,3.2.1,normal,normal,Future Release,defect (bug),new,,2011-08-03T20:26:25Z,2013-04-22T01:18:34Z,"For back compat reasons, wp_magic_quotes() performs addslashes() on GPCS data.  This is a pain, especially given that some core API expects slashes and some doesn't.  In hopes of someday losing the automatic GPCS slashing, let's introduce a flag to turn off the slashing as well as slash and unslash functions that consult the flag.  If slashing is on, these functions add and strip slashes.  If slashing is off, they return data unchanged.  Plugin authors can start using these functions and testing their code with GPCS slashing turned off and on.  Eventually, GPCS slashing would default to off and all calls to the slash and unslash functions could be removed from core.",ryan
22746,The metadata_exists() function should return the correct value if the get_$meta_type_metadata filter returns a non null value,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-12-05T00:04:20Z,2012-12-05T00:04:20Z,"The line [http://core.trac.wordpress.org/browser/trunk/wp-includes/meta.php?rev=23043#L324 324] should return $check instead of true, otherwise the filter doesn't normally work when someone wants to always return false for a given meta key.

Here's a quick way to reproduce it
{{{
> add_filter('get_user_metadata', '__return_false'); return metadata_exists('user', 1, 1)
TRUE
}}}",xknown
23729,"Ticket #11289, IE bug fix: always pad the error page with enough characters",,General,,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-03-09T06:25:21Z,2013-03-20T15:59:02Z,Is it really such a good idea to put the padding where it is currently in the error pages? This causes all sorts of problems with Dom parsers... it should be placed somewhere after the html tag or better yet in the body... almost looks like someone is very proud of their fix and wants the world to see it lol,wp4j
15349,TinyMCE Internal Links Not Extendable,filosofo,General,3.1,normal,normal,Future Release,defect (bug),new,,2010-11-09T05:06:05Z,2010-12-07T19:04:58Z,It needs a couple filters and an action hook so we can modify and extend the content.,filosofo
24171,"Trashing a page selected as ""Page on Front"" produces homepage 404",,General,,low,minor,Awaiting Review,defect (bug),new,,2013-04-23T21:58:26Z,2013-04-23T22:33:28Z,"Steps to produce:

1. Create a new page called ""My Home Page"". Add some bacon ipsum.
1. Assign the page as your static home page.
1. Trash the page, but don't delete it.

Expected behavior: My homepage reverts to a list of my most recent posts

Actual behavior: 404 template is loaded.

In r6337, we started listing most recent posts when the page is ''deleted''. However, there's a short circuit (added later) in `wp_delete_post()` to `wp_trash_post()`, which doesn't delete the option. This results in the homepage not being reset until the post is actually deleted.

I think the trashing behavior should be consistent with deleting behavior. 

Related: #16379, #14403",danielbachhuber
15030,Unserialize deep when returning arrays of metadata,,General,,normal,normal,Future Release,defect (bug),new,,2010-10-04T11:05:52Z,2010-12-08T19:34:06Z,"Currently when retrieving an array of metadata values for an object (no meta key specialized), they are retrieved as serialized. Only when meta key is specified do we unserialize.

We should array_map( 'maybe_unserialize' ) on what we plan to return instead of forcing plugins to call that themselves.",nacin
22807,Updating a non-expiring transient with a new expiry date does not make it expire,,General,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-12-07T11:38:18Z,2012-12-07T11:38:18Z,"Consider this:
set_transient( 'Bug', 'v1');
set_transient( 'Bug', 'v2', 10 );

The second line will update 'Bug' with 'v2', but will not set autoload to 'no'. Hence, 'Bug' does never expire, and you can get its value 'v2' infinitely using

echo get_transient( 'Bug' );",bersbers
21185,Upload/insert popup not scrollable on iPad,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-07-07T20:58:36Z,2012-07-07T20:58:36Z,"When using iPad (testing with a v1 iPad) the upload/insert popup is not scrollable so if you expand an image by clicking ""show"" you cannot scroll down to the"" insert into post"" link.",husobj
16482,Visibility: password-protected breaks with redirected domains,,General,3.0.4,normal,minor,Awaiting Review,defect (bug),new,dev-feedback,2011-02-07T18:58:45Z,2012-09-05T18:47:28Z,"Pre-requisite to reproduce: domain.com must redirect to www.domain.com (haven't tested with other subdomains than www, but I'm sure it would be the same).

1. password protect a page
2. visit domain.com/protected (which redirects to www.domain.com/protected)
3. enter password
4. something about the redirect OR the way the password is stored/checked is broken; you are redirected to the wp-admin (WordPress login) page.

Sanity check:

1. password protect a page
2. visit www.domain.com/protected (requiring no subdomain redirect)
3. enter password
4. successful log-in
",monkeyhouse
24133,"WP_Query, multiple 'orderby' values glitch",,General,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-04-19T02:45:46Z,2013-04-19T02:48:08Z,"According to the documentation, WP_Query argument 'orderby' allows for multiple values, but it doesn't work.

Looking in the code i found out why, the 'order' is only being applied to the last item in the list.

So for instance: 
    ('orderby' => 'title menu_order', 'order' => 'DECS')
Will end up as
    ""ORDER BY $wpdb->posts.menu_order, $wpdb->posts.post_menu_order DECS""

To fix (I hope), the following needs to be done to query.php line 2387
    $orderby_array[] = $orderby.' '.$q['order'];
",racura
20569,We need addslashes_deep(),,General,3.4,normal,major,Future Release,defect (bug),new,has-patch,2012-04-29T08:08:28Z,2012-09-02T03:15:55Z,"
I don't imagine anyone still feels that having `update_metadata()` call `stripslashes_deep()` is still the Right Thing to do, but I understand why removing it is basically impossible for backward compatibility reasons.

That said, !WordPress as a platform does not currently provide a way for this data to be stored accurately as a meta value:

{{{
$data = array(
	'Check me out, I have backslashes \\'
);
update_post_meta($post->ID, 'my_key', $data);
}}}

I'm not saying that this is a great deal better from a code purity standpoint:

{{{
$data = array(
	'Check me out, I have backslashes \\'
);
update_post_meta($post->ID, 'my_key', addslashes_deep($data));
}}}

but it's at least explainable.

Telling people they have to do something like this:

{{{
$data = array(
	'Check me out, I have backslashes \\'
);
$slashed_data = array();
foreach ($data as $item) {
	$slashed_data[] = addslashes($item);
}
update_post_meta($post->ID, 'my_key', $slashed_data);
}}}

or this:

{{{
if (!function_exists('addslashes_deep')) {
/**
 * Navigates through an array and adds slashes to the values.
 *
 * If an array is passed, the array_map() function causes a callback to pass the
 * value back to the function. Slashes will be added to this value.
 *
 * @since 3.4.0? (oh please, oh please, oh please)
 *
 * @param array|string $value The array or string to be slashed.
 * @return array|string Slashed array (or string in the callback).
 */
function addslashes_deep($value) {
	if ( is_array($value) ) {
		$value = array_map('addslashes_deep', $value);
	} elseif ( is_object($value) ) {
		$vars = get_object_vars( $value );
		foreach ($vars as $key=>$data) {
			$value->{$key} = addslashes_deep( $data );
		}
	} else {
		$value = addslashes($value);
	}

	return $value;
}
}

$data = array(
	'Check me out, I have backslashes \\'
);
update_post_meta($post->ID, 'my_key', addslashes_deep($data));
}}}

is just indefensible.

FWIW, @rboren created this function as [http://core.trac.wordpress.org/attachment/ticket/12402/12402.2.diff part of a patch] a couple of years back (#12402), but it hasn't landed yet. Pretty please can we get just this bit in for 3.4?",alexkingorg
23995,Weird Error After Post Published Successfully,,General,trunk,normal,normal,Awaiting Review,defect (bug),new,,2013-04-08T20:46:26Z,2013-04-09T23:20:59Z,"I didn't get the exact message, but I was stuck on the New Post screen after clicking Publish with something to the effect of: The server connection has been lost.  This message will go away once you get reconnected.

I ended up clicking on Visit Site and I could see that the post was already published.

My server has been acting up a bit today, so I figured this is a good time to test out the new post saving logic.  I'm not sure if this was the intended experience though?

Tested on 3.6-beta1.  Only happened once so far.",miqrogroove
20326,Widget dropped in sidebar with name=sidebar-two shows up in sidebar with id=sidebar-two (and different name: some-other-name),,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-03-29T12:53:15Z,2012-03-29T13:57:28Z,"Hi,

reproducing steps:
register 2 sidebars:

sidebar 1: 
id   = 'sidebar-one'
name = 'sidebar-two'

sidebar 2: 
id   = 'sidebar-two'
name = 'some-other-name'

drop a widget in sidebar 1, and it will also after reloading the widget page show up in sidebar 2...

Also: widgets dropped in sidebar 2 disappear.

OK, OK, i shouldn't be mixing up sidebar names and ids like i did (sorry), am going to change that in my setup now, I just wanted to point out that I thought that assigning a widget to a sidebar was related to its id only. This current behavior strikes me a little strange :)







",ruud@…
23092,"Word count, Edit Post > Publish > Visibility, Published Date & Status ""Edit"" links don't work",,General,3.5,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2012-12-31T02:38:48Z,2012-12-31T23:03:22Z,"hosting platform:

Apache 2.2.23
PHP 5.4.10
FreeBSD 8.3
WordPress 3.5 (no modifications to codebase & themes, no plugins)

- client:
Mac OS X
Firefox and Safari

prior to upgrading to 3.5, Edit Post > Publish > Visibility, Published Date & Status ""Edit"" links worked as expected. I can make changes then hit Update.

after upgrade to 3.5, these Edit links no longer work. Tons of load-styles.php errors. Word count is always set to 0 - Quick Edit works just fine.

tw2113 (from #wordpress Freenode) suggested I enable script_debug in wp-config.php and that resolve the issues I was having. Word count now works also.

As tw2113 have mentioned, I shouldn't need to have script_debug enabled just to get your post editor working.

Any thoughts?

Please advise, thank you!",scaturan
18266,WordPress does not signal DB errors when adding/updating post,,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,,2011-07-27T05:56:18Z,2011-07-27T05:56:18Z,"WordPress does not signal DB errors when adding/updating post. As I checked, `edit_post()` (defined in wp-admin/includes/post.php) calls `wp_update_post()` but does not check if it returned error. Therefore end user never gets any error message.

I found this when I tried to replace valid SQL query with some invalid one, in order to stop insert operation when custom validation done in `wp_insert_post_data` hook failed.",sirzooro
15769,"WordPress ships with copyrighted ""Hello, Dolly!"" lyrics which could potentially terminate the GNU GPL of the package",,General,3.0.2,normal,normal,Future Release,defect (bug),reopened,has-patch,2010-12-11T02:35:59Z,2012-02-15T22:27:02Z,"It is an industry standard practice to show licensing details when using someone else's copyrighted content. I can't find anything substantiating that WordPress has been granted a license to use the copyright Hello, Dolly! lyrics, so the ''prima facie'' appearance is that WordPress is infringing copyright of Jerry Herman, the song's composer.

Unless WordPress indemnifies users, Hello Dolly plugin users may be vulnerable to legal problems due to unauthorized use of Jerry Herman's intellectual property.

Please clarify WordPress's license of this copyrighted material in the module's source code or at wordpress.org.",novasource
20712,"Wrong data type returned from get_option for ""page_on_front"" after update_option",,General,3.3.2,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-05-20T08:29:35Z,2012-10-15T10:22:59Z,"
{{{
echo gettype(get_option(""page_on_front"")); // return string
update_option(""page_on_front"", ""123"");
echo gettype(get_option(""page_on_front"")); // return integer
}}}


You can repeat the steps and it give consistent result, so `get_option` return the wrong data type ONLY when it is after `update_option`",tszming
19192,Wrong term count for private posts,,General,,normal,normal,Awaiting Review,defect (bug),new,close,2011-11-07T09:00:15Z,2011-11-14T21:22:33Z,"The term manager page (wp-admin/edit-tags.php) shows wrong counts when the terms contain private posts. 

Steps to reproduce:
 - Create a private post and assign it to a category or a tag.
 - Visit the wp-admin/edit-tags.php

The term count does not change. However, when you click on the posts column, the edit posts screen will correctly show the private post.",xknown
21268,_wp_page_template is getting 'stuck' to a page,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-07-13T22:21:42Z,2012-07-13T22:21:42Z,"Unmodified WP 3.4.1 / Ummodified TwentyEleven theme

Create a page (id=2).  Manually add a postmeta entry for 

{{{
post_id=2, 
meta_key = _wp_page_template, 
meta_value = pagefull.php
}}}


The page now opens with margin: 0 7.6%;  (correct!)

Now try to change it back to default, either by removing the _wp_page_template postmeta record or by editing the page -> Page Attribute / Template.  The page will not revert back to Default.  It continually displays as Full Width, and a postmeta item telling post_id 2 to use _wp_page_template = pagefull.php is added.

http://wp34.roveridx.com/?page_id=2

This behavior does not happen in 3.3.2.",shawmutsteve
20690,add_post_meta/update_post_meta and cache,,General,3.3.2,normal,normal,Awaiting Review,defect (bug),new,,2012-05-16T14:33:30Z,2012-05-16T14:33:30Z,"I have a custom post type with 2 fields for price, second one has 5% discount and I want to populate it automatically by hooking to 'save_post'. 

I have a working logic that calls update_post_meta() (or add_post_meta() ) for the second field but it doesn't get executed even with several post updates. However, if I end my function call with a var_dump that outputs the values from the function, everything goes smooth.

It looks like some caching issue to me that gets flushed per var_dump call, anyone able to reproduce?",nofearinc
14754,add_query_arg() refactoring,,General,,normal,normal,Future Release,defect (bug),new,needs-unit-tests,2010-09-01T16:32:20Z,2011-03-23T19:34:24Z,"The function add_query_arg() looks like that it could benefit from a refactoring. Especially the handling of optional parameters (did introduce PHP 4 that language feature?) can benefit by a sligh touch-up.

Attached patch reflects only the first few lines of the function.",hakre
17923,add_query_arg() should encode values,,General,3.2,normal,normal,Future Release,defect (bug),new,has-patch,2011-06-28T22:55:50Z,2013-02-26T14:08:52Z,"One (or me at least) would expect that the result of

{{{
add_query_arg( 'foobar', 'this&that', 'index.php' )
}}}

would be

{{{
index.php?foobar=this%26that
}}}

since the whole purpose of the function is to build a URL. However the actual result is

{{{
index.php?foobar=this&that
}}}

You're asking to the function to create a URL in which `foobar` is `this&that` but instead it creates a URL in which `foobar` is set to only `this`. You shouldn't have to pre-encode values -- the function should take care of it for you.

The function to ""blame"" for this is our `build_query()` which for some reason does not encode by default.

Semi-related: #16943",Viper007Bond
16221,admin bar hover class toggle adds whitespace,koopersmith*,General,3.1,low,normal,Future Release,defect (bug),accepted,close,2011-01-13T22:32:25Z,2012-12-13T19:52:17Z,"Every time I mouseover and mouseout an admin bar item, its class attribute gets longer.

Seen in Chrome while inspecting elements in the admin bar.",andy
19921,"always use require_once for wp-load.php (fixes ""ABSPATH defined multiple times"")",,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,,2012-01-29T18:09:46Z,2012-02-10T17:53:45Z,"The `wp-load.php` file should always be included via `require_once`.  This allows developers to include files when necessary with having to run into the ""ABSPATH defined multiple times"" notice (let alone waste time processing the file).

In trunk, require_once is already used in the majority of cases for `wp-load.php`:
    * 24 require_once
    * 8 require
    * 1 include

This has come up because of a situation in a plugin where it is necessary to manually include the `wp-login.php`.  But then `wp-login.php` calls `require wp-load.php` and the constant re-declaration notice arises.

In two cases, the patch changes relative paths (eg `./` to `dirname(__FILE__)`) to avoid safe mode problems and improve the ability to run files from anywhere(1), which is helpful for testing from the command line.

(1) Paths in PHP are relative to the present working directory, not the directory the file is in.",convissor
20415,big tags formatted incorrectly in rss,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-04-11T06:45:13Z,2012-04-11T06:45:13Z,"several (doubled, tripled) big tags formatted incorrectly in rss, may be single big tags behave same way

what is formatted


{{{
<blockquote><p><big><big>123</big></big></p>
<p><big><big>123</big></big></p></blockquote>

}}}

in normal view is formatted


{{{
<blockquote><p><big><big>123</big></big></p>
<p>123</p></blockquote>

}}}

in rss.


( and it is just

{{{
<blockquote><big><big>123
123</big></big></blockquote>

}}}
in editor)",qdinar
19130,current wp-login.php call to wp_admin_css() bypasses its own filter,F J Kaiser,General,2.6,normal,normal,Awaiting Review,defect (bug),assigned,close,2011-11-03T13:54:07Z,2012-04-25T17:31:20Z,"The current situation in wp-login.php looks like the following:

{{{
	wp_admin_css( 'login', true );
	wp_admin_css( 'colors-fresh', true );
}}}

Looking at /wp-includes/general-template.php and {{{wp_admin_css( $file = 'wp-admin', $force_echo = false );}}} tells that this bypasses the filter calls as the function returns if {{{$force_echo}}} is true. The filters are called after that. This doesn't make sense as the filter will never work this way. Changing {{{wp_admin_css()}}} is no option, so I suggest to change the calls to it in login_head.",F J Kaiser
11465,custom field duplicated,westi*,General,2.8.4,normal,minor,Future Release,defect (bug),accepted,,2009-12-16T21:09:23Z,2012-04-02T21:14:22Z,"When I enter the information for a custom field and click on Preview without first clicking Add Custom Field, the custom field is saved. But then when I click Publish, it is saved again, appearing in the post twice.

If I click Add Custom Field before Preview, subsequent Publish does not duplicate the custom field. But it is very convenient and efficient to be able to avoid a separate save of the custom field.
",ericr23
21000,custom-background still include background-image: none; when setting background color,,General,3.4,normal,normal,Awaiting Review,defect (bug),new,close,2012-06-17T17:38:56Z,2012-10-08T17:52:30Z,"I am sorry I missed this after the last inclusion before release, but in the function _custom_background_cb() 

I overlooked testing logic in the callback before it was released.  

if background color was specified but no image, act as if image shouldn't exist

The original complaint was that when you removed (both) the $background and $color that it outputted the background-image: none;  However in 3.4 it's not account for $color in the function and !$background

This is the change I am requesting.

{{{
      if ($background) {
...
}}}

line: 1136 - wp-includes/theme.php

{{{
      } else $style .= ' background-image: none;';
}}}

This will make it handle the if ($color && !background) appropriately


",Frumph
21613,"format_to_edit runs esc_textarea if $richedit param is set to false, not true",,General,,normal,minor,Awaiting Review,defect (bug),new,has-patch,2012-08-16T19:59:20Z,2012-08-17T15:35:26Z,"Currently, the docs on format_to_edit() indicate that it runs the content through esc_textarea (which in turn runs htmlspecialchars() ) if the $richedit param is set to true. The code, however, runs the filter if the param is not set (or passed as false, see line 1270). 

{{{
#!php
1255 /**
1256  * Acts on text which is about to be edited.
1257  *
1258  * The $content is run through esc_textarea(), which uses htmlspecialchars(
1259  * to convert special characters to HTML entities. If $richedit is set to t
1260  * it is simply a holder for the 'format_to_edit' filter.
1261  *
1262  * @since 0.71
1263  *
1264  * @param string $content The text about to be edited.
1265  * @param bool $richedit Whether the $content should not pass through htmls
1266  * @return string The text after the filter (and possibly htmlspecialchars(
1267  */
1268 function format_to_edit( $content, $richedit = false ) {
1269   $content = apply_filters( 'format_to_edit', $content );
1270   if ( ! $richedit )
1271     $content = esc_textarea( $content );
1272   return $content;
1273 }
1274 
}}}

My thought is the if statement should evaluate whether $richedit is true, rather than false, and therefore apply the esc_textarea function only when explicitly passed as a param. This would, however, result in unexpected behavior for anyone currently passing only the default $content param and getting sanitized output.",vhauri
16408,get_bloginfo('template_url') is not returning valid URLs.,,General,3.0.3,normal,normal,Awaiting Review,defect (bug),new,,2011-01-30T08:04:50Z,2011-02-01T04:04:00Z,"There seems to be a general consensus on the #wordpress IRC channel that URLs cannot contain spaces. I agree with this, and I'm almost sure the entire internet community would to. Based on this axiom, get_bloginfo('template_url') should return URLs with spaces properly encoded, otherwise, it's not returning a valid URL, hence it's not returning a URL at all. I'm guessing that get_bloginfo('template_url') is suppose to return a URL, so this must mean that it's not currently (as of version 3.0.3) doing what it's suppose to.

As for what a properly encoded space character in a URL would be, I'm not exactly sure. I know it's either %20 or +, but I wont make the decision as to which of these it is.

If you by any chance believe that URLs *should* contain spaces, then that's another problem related to wp_enqueue_script. wp_enqueue_script removes spaces from it's URL. Again, if you think URLs should contain spaces, then wp_enqueue_script should include them.

Either way you think about it, get_bloginfo (including bloginfo) or wp_enqueue_script contains a defect. You may argue that you should not use spaces in your directory/file names to begin with, but this argument is irrelevant.

Thank you. I would appreciate this issue not being overlooked. :)",figaroo
18356,get_bookmarks() indefinitely caches randomly ordered results,,General,,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-08-08T18:12:45Z,2011-08-12T01:11:20Z,"The get_bookmarks() function caches the results of all requests to the function in a single cache result so it can clear all the items when a new book mark is added.  However, randomly ordered results shouldn't be cached indefinitely.  This specifically affects the Links widget as it never refreshes when set to random order.",prettyboymp
22950,get_boundary_post Does not return single post object,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-12-15T00:56:48Z,2012-12-15T11:49:01Z,"`get_boundary_post` Seems not to return a single `post` object, the way `get_adjacent_post` does.

It seems that `get_boundary_post` should call `array_shift` or `get_post` on the results, in a similar way to `get_adjacent_post`.

It's just odd that the behavior is different.",pathawks
12016,get_calendar can output a calendar when there are no posts,,General,3.0,normal,normal,Future Release,defect (bug),reviewing,dev-feedback,2010-01-25T17:54:31Z,2010-11-13T09:06:16Z,"If a site doesn't have any posts, get_calendar isn't supposed to display a calendar. You can visit a page or have a static home page, and a calendar is displayed. The get_calendar function is looking at global $posts to determine if the site has posts but this variable can contain data from other post_types.

r12821",mtdewvirus
15838,get_home_path() mixes PHP and server paths,,General,3.0.3,normal,normal,Awaiting Review,defect (bug),new,has-patch,2010-12-15T23:40:27Z,2011-12-16T03:15:52Z,"FYI: I've looked through the other get_home_path() tickets and believe this to be a different issue.

If the home and site urls are the same then you get a '''PHP relative''' path returned. i.e. it uses {{{ ABSPATH }}}, which is calculated using the PHP constant {{{__FILE__}}}
.

If the home and site urls are different you get a '''server relative''' path returned. i.e. one calculated via 
{{{$_SERVER[""SCRIPT_FILENAME""] }}}.


With web hosts who have the server and PHP paths configured consistently this is no problem.

But on 1and1 it could be if you are comparing the return value of this function against another path. If the function can either return a PHP or a server path then your code may not always work.

The server path (Apache) on 1and1 has an extra '/kunden' at the start. This means that PHP and Apache retrieve paths slightly differently.

Example.
Blog with same home and site urls

{{{
get_home_path =         /homepages/xx/dxxxxxxxx/htdocs/site1
}}}


Blog with different home and site urls

{{{
get_home_path = /kunden/homepages/xx/dxxxxxxxx/htdocs/site1
}}}


I'd suggest that as this is PHP the right thing to do is to always calculate the path using PHP relative paths - i.e. using 
{{{ __FILE__ }}} / {{{ ABSPATH }}} . Don't use the server relative paths at all as you can't rely on them being the same as the PHP ones. 

Certainly having a function returning a path that can be calculated from two different base paths is a bad idea.

For reference here's the current function:

{{{
function get_home_path() {
	$home = get_option( 'home' );
	$siteurl = get_option( 'siteurl' );
	if ( $home != '' && $home != $siteurl ) {
	        $wp_path_rel_to_home = str_replace($home, '', $siteurl); /* $siteurl - $home */
	        $pos = strpos($_SERVER[""SCRIPT_FILENAME""], $wp_path_rel_to_home);
	        $home_path = substr($_SERVER[""SCRIPT_FILENAME""], 0, $pos);
		$home_path = trailingslashit( $home_path );
	} else {
		$home_path = ABSPATH;
	}

	return $home_path;
}
}}}
",reviewmylife
17374,get_pages() with child_of forgets sort,,General,3.1.2,normal,normal,Awaiting Review,defect (bug),new,,2011-05-11T10:06:17Z,2011-05-11T10:06:17Z,"If you call {{{get_pages()}}} with both the {{{child_of}}} and {{{sort_column}}}, the sorting is not applied.

{{{child_of}}} makes it select all pages (sorted) and later applies a subselect via {{{get_page_children()}}}. This subselect can mess up the sort order.

An example was reported on http://wordpress.stackexchange.com/questions/16921/get-pages-not-ordering-as-it-should

Related: #12821",janfabry
20853,get_post_custom show directly serialized data from the post_meta arrays.,,General,1.5,normal,minor,Awaiting Review,defect (bug),assigned,dev-feedback,2012-06-06T05:39:23Z,2013-03-11T16:46:21Z,"get_post_custom show directly serialized data from the post_meta arrays.
For example:

If I save a data with:

{{{
			update_post_meta(	$post_id,	'camp',
				array(
					'some'	=>	$var,
					'thing'	=>	$var_2
				)
			);
}}}


When I use get_post_meta(); :

{{{
	$var_get = get_post_meta($post_id, 'camp', true);
	echo $var_get['some']; // Fine.. Print: $var content.
}}}


but, when I use get_post_custom() :

{{{
	$var = get_post_custom($post_id);
	echo $var['some']; Metod, (Not work because ""Returns a multidimensional array"" with all values, and 0 is the first or the unique value).
	echo $var['some'][0]; /* Metod, >:( , Not work. Print:

a:2:{i:some;s:4:""this"";i:thing;s:7:""content"";}	*/
}}}


Instead of display ""array"", and can not handle sub arrays.",shadowhck
20251,get_preferred_from_update_core can return false,,General,,normal,normal,Awaiting Review,defect (bug),new,,2012-03-17T14:51:41Z,2012-03-17T14:51:41Z,"I just had a case in my network installation where get_site_transient( 'update_core' ) returned false.
In this case it gave an error message at core_update_footer();

When I went back to Network admin updates page and press 'check_again' the error went away.
The error can be caused because of running the recent nightly build (3.4-alpha-20205).

What was weird that in the site wp-admin there still was the balloon that there was an update when I had the error. When I pressed the button the balloon went away what is the correct.",markoheijnen
16863,get_terms hierarchical/hide_empty incompatible with include/exclude args,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-03-16T12:37:06Z,2012-09-13T09:36:55Z,"{{{
$terms = get_terms('taxName', array(
    'hierarchical' => true,
    'hide_empty' => true,
    'include' => array(1, 2, 3)
));
}}}
$terms will not contain a meaningful result set. In order for get_terms to process 'hierarchical' correctly it must recieve in 'include' a full list of term ids for all child terms that may have count > 0, this obviously negates the point of 'include' here.
'include/exclude' is processed at query level, 'hierarchical' is processed post query and expects the results of the query to be unfiltered.
The following patch seems to fix the issue in my application, I think this approach would need to take in 'child_of' also, which I haven't done here.
{{{
diff --git a/wp-includes/taxonomy.php b/wp-includes/taxonomy.php
index 89532dc..2f51bea 100644
--- a/wp-includes/taxonomy.php
+++ b/wp-includes/taxonomy.php
@@ -1337,9 +1337,13 @@ function &get_terms($taxonomies, $args = '') {
 
 	// Make sure we show empty categories that have children.
 	if ( $hierarchical && $hide_empty && is_array($terms) ) {
+
+        $taxTerms = !(empty($include) && empty($exclude) && empty($exclude_tree)) ?
+            get_terms($taxonomies) : $terms;
+
 		foreach ( $terms as $k => $term ) {
 			if ( ! $term->count ) {
-				$children = _get_term_children($term->term_id, $terms, $taxonomies[0]);
+				$children = _get_term_children($term->term_id, $taxTerms, $taxonomies[0]);
 				if ( is_array($children) )
 					foreach ( $children as $child )
 						if ( $child->count )
}}}
",martinshopland
23881,get_transient() could delete transient timeout options in an unexpected way,,General,2.8,normal,minor,Future Release,defect (bug),new,needs-unit-tests,2013-03-28T11:02:07Z,2013-04-22T21:17:24Z,"get_transient() could delete transient timeout options if a given transient name has the ""timeout_"" prefix.

To reproduce:
{{{
set_transient( 'test', 'test', 60*60 );
get_transient( 'timeout_test' ); // will delete the _transient_timeout_test option
}}}

Solution:

Check if get_option( $transient_timeout ) is not returning false.
{{{
if ( false !== get_option( $transient_timeout ) && get_option( $transient_timeout ) < time() ) {
}}}
",tenpura
22369,get_transient() do not call delete_transient() when deleting one,,General,2.8,normal,normal,Awaiting Review,defect (bug),new,close,2012-11-06T01:27:01Z,2012-11-10T10:33:00Z,"Hello

i was wondering why get_transient() is not calling delete_transient when deleting a timeouted transient.

Piece of code from get_transient()
{{{
				$transient_option = '_transient_' . $transient;
				$transient_timeout = '_transient_timeout_' . $transient;
				if ( get_option( $transient_timeout ) < time() ) {
					delete_option( $transient_option  );
					delete_option( $transient_timeout );
					return false;
				}
}}}

but i need to trigger the ""deleted_transient"" hook.
Can we do that:
{{{
				$transient_option = '_transient_' . $transient;
				$transient_timeout = '_transient_timeout_' . $transient;
				if ( get_option( $transient_timeout ) < time() ) {
					delete_transient( $transient_option  );
					return false;
				}
}}}
",juliobox
20368,htmlspecialchars() returns empty string for non-UTF-8 input in PHP 5.4,,General,,normal,major,Awaiting Review,defect (bug),new,,2012-04-05T12:43:23Z,2013-03-04T18:04:55Z,"The default value of the input `$encoding` parameter for `htmlspecialchars()` changed to UTF-8 in PHP 5.4.  The prior default was ISO-8859-1.  The function's UTF-8 handler checks the input, returning an empty string if the input isn't valid UTF-8.

WordPress will see the UTF-8 validator kicking because most of the `htmlspecialchars()` calls don't use the `$encoding` parameter.  This will cause major problems for sites that have a `DB_CHARSET` other than `utf8`.

[http://article.gmane.org/gmane.comp.php.devel/71783 Posting 58859 to php-internals] by Rasmus gives a clear example of the problem.  Here is a link to [http://thread.gmane.org/gmane.comp.php.devel/71777 view the whole thread], starting with posting 58853).

Creating two centralized functions is an approach for resolving this problem.  This route is simpler and easier to maintain than adding the parameters to each `htmlspecialchars()` call throughout the code base.

1. `wp_hsc_db()` for safely displaying database results.  Uses `DB_CHARSET` to calculate the appropriate `$encoding` parameter.  MySQL's character set names are not equivalent to the values PHP is looking for in the `$encoding` parameter.  Please see the `hsc_db()` method in the [http://plugins.svn.wordpress.org/login-security-solution/trunk/login-security-solution.php Login Security Solution plugin] for a mapping of the valid options.

2. `wp_hsc_utf8()` for safely displaying strings known to be saved as UTF-8, such as error messages written in core.  Uses `UTF-8` as the `$encoding` parameter.  

Some calls in core use the `$flags` parameter, so these new functions will need the parameter too.  The default should be `ENT_COMPAT`, which works under PHP 5.2, 5.3 and 5.4.

It may be suggested that WP use `htmlspecialchar()`'s auto-detection option (by passing an empty string to the `$encoding` parameter).  This is not advisable because it can produce inconsistent behavior.  Even the PHP manual says this route is not recommended.",convissor
23407,http 403 should be returned for private content,,General,3.4,normal,normal,Awaiting Review,defect (bug),new,,2013-02-06T20:32:29Z,2013-02-07T09:18:40Z,"Right now a 404 is returned which indicates that there is no content at the URL while all you need to do in order to see it is to login.

Same probably applies to posts which where published and returned to draft state.

",mark-k
17078,is_active_sidebar() doesn't work with Numeric sidebar ID's,,General,2.8,normal,normal,Awaiting Review,defect (bug),new,,2011-04-07T10:06:54Z,2011-09-19T15:07:09Z,"This needs a small fix: 

Function is_active_sidebar( $index)  converts $index to a string

then uses wp_get_sidebars_widgets() to see if the sidebar is active

..but keys in the array wp_get_sidebars_widgets() generates can be integers if the ID's of the registered sidebars are integers",lanceo
9930,is_serialized() returns false on serialized doubles,westi,General,,normal,minor,Future Release,defect (bug),reopened,has-patch,2009-05-24T17:23:43Z,2011-05-12T13:32:36Z,"Test case:

{{{
<?php
    require_once('wp-load.php');
    print var_export(is_serialized(serialize(1.2E+150)));
?>
}}}

Expected: true
Got: false

serialize(1.2E+150) returns something like 'd:1.200000000000000013344651621705194036153934411236609269391465806550823148718924258603522328009361549E+150;', the plus sign after 'E' is not taken into account by the regexp",vladimir_kolesnikov
24319,jQuery not loading in Admin.,,General,trunk,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-05-11T18:24:45Z,2013-05-12T15:12:28Z,"I was encountering an odd bug after updating to the newest nightly.

It appeared that no js scripts were being loaded by load-scripts in wp-admin.  Since CSS was obviously being included, I compared load-scripts.php and load-styles.php and found what appears to be a missing directory separator.

Changing

define( 'WPINC', 'wp-includes' );

to

define( 'WPINC', '/wp-includes' );

in wp-admin/load-scripts.php seems to have fixed the problem.  I'm not sure if this is the correct fix, but I did find it odd that load-scripts.php used different syntaxes to include their respective filenames:

from wp-admin/load-scripts.php:

require(ABSPATH . WPINC . '/script-loader.php');
require(ABSPATH . WPINC . '/version.php');

and from wp-admin/load-styles.php

require(ABSPATH . '/wp-includes/script-loader.php');
require(ABSPATH . '/wp-includes/version.php');",willhaynes24
18070,jpg vs. jpeg error when editing a LINK URL image in a post,,General,,normal,major,Awaiting Review,defect (bug),new,reporter-feedback,2011-07-11T16:21:13Z,2011-07-11T22:28:04Z,"This problem deals with an unfortunate discrepancy between file extensions .jpg and .jpeg -- The results equate to frustrating 404 errors and lightbox plugins that seem to be broken.

Here's what happens:

1) Upload an image with file extension '.jpeg' (note the 'e') and insert it into a post, with a blank 'Link URL'.

2) Now that the image is in the body of the post, edit the image's Link URL. (hover-over the image in the post and click the small icon on the upper-left that appears). If you click the 'File URL' button to auto-full the Link URL box, it will autofill the correct image address, but with a '.jpg' extension!

This lead to 404 errors, a lightbox plugin that appeared broken, and had me thinking it was an .htaccess issue from my hosting company....

NOTE: it autofills with the correct file extension when clicking the 'File URL' button is clicked upon initially inserting the image, however it fails when using the secondary menu that is available after inserting the image.

Thanks for fixing this!

(originally posted at https://wordpress.org/support/topic/bug-jpg-vs-jpeg-error-when-editing-a-link-url-image-in-a-post?replies=4)",multimule
10458,lighttpd/1.4.22 does not populate _REQUEST['action'] for wp-login.php,,General,2.8,normal,normal,Future Release,defect (bug),reopened,has-patch,2009-07-21T14:10:36Z,2010-05-10T08:50:09Z,"lighttpd/1.4.22 does not populate _REQUEST['action'] for wp-login.php, this in turn disabled any action in the switch statement breaking the ability to logout.

Symtoms of this bug are: clicking logout in wordpress 2.8 and going to the login page but not really logging out.  Clicking logout in wordpress 2.3 and being redirected right back to the /wp-admin page.

adding this code to wp-login.php, fixes the behavior and re-enables all features in wp-login.php.

I don't know the wordpress code but if there is a section which deals with idiosyncrasies of web servers that lighttpd be detected and this code be run to deal with it. 

//
// Main
//


if (strpos($_SERVER['SERVER_SOFTWARE'], 'lighttpd') !== false)
{
$_lighty_url = $base_url.$_SERVER['REQUEST_URI'];
$_lighty_url = @parse_url($_lighty_url);
$_SERVER['QUERY_STRING'] = $_lighty_url['query'];
parse_str($_lighty_url['query'], $_lighty_query);
foreach ($_lighty_query as $key => $val)
$_GET[$key] = $_REQUEST[$key] = $val;
}
",myrond
12264,links truncated: link_url column in wp_links table -- datatype too small,,General,2.9.2,normal,normal,Future Release,defect (bug),new,dev-feedback,2010-02-17T20:27:25Z,2011-08-03T19:55:37Z,"Here is my original post about the issue:  [http://wordpress.org/support/topic/365540?replies=3]

In short, the link_url column in the wp_links table has a datatype of VARCHAR(255).  As far as I know, there is no pre-defined limit to the length of a URL.  However, browsers typically enforce their own practical limits, the shortest of which is much larger than the 255 character limit that WP is enforcing.  Entering urls longer than 255 characters causes them to be truncated.

I tried altering the table so that link_url has a datatype of VARCHAR(1024).  This allowed me to use much larger links without them being cut off.  Therefore, I believe that the limiting factor is the DB and not some other code within WP.
",goto10
16916,make_clickable() and URI in context,,General,3.1,normal,normal,Awaiting Review,defect (bug),new,,2011-03-21T15:56:00Z,2011-03-21T15:56:00Z,"I just stumbled over [http://tools.ietf.org/html/rfc3986#appendix-C Appendix C.  Delimiting a URI in Context] and was wondering if this has been taken into account for the make_clickable() routine so far.

Looks like <> angle brackets are  especially recommended as a delimitier.

IIRC we ingore it so far, would be nice to support the RFC.",hakre
21109,maybe_unserialized fails to unserialize multibyte strings (contains solution),,General,3.4,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2012-06-29T06:09:19Z,2013-04-24T22:31:38Z,"I've came across a bug trying to fetch a custom theme (http://themeforest.net/item/rebirth-the-wordpress-theme-for-churches/1167055) option (see addendum #1). The value was UTF8 value and unserialization failed. DB values were imported by the means of SQL query.

I applied the following fix:
instead of:

{{{
function maybe_unserialize( $original ) {
	if ( is_serialized( $original ) )  // don't attempt to unserialize data that wasn't serialized going in
            return @unserialize( $original );
    
	return $original;
}
}}}


I had:

{{{
function maybe_unserialize( $original ) {
	if ( is_serialized( $original ) ) { // don't attempt to unserialize data that wasn't serialized going in
        // fix from: http://www.php.net/manual/en/function.unserialize.php#76012
        $out = preg_replace('!s:(\d+):""(.*?)"";!se', ""'s:'.strlen('$2').':\""$2\"";'"", $original );
        return @unserialize( $original );
    }
	return $original;
}
}}}


and it worked like a charm.

I also think that it may have some connection to mbstring settings in php.ini on the server.

'''addendum #1'''

{{{
(wp_options, option_id='rebirth' option_value='a:47:{s:18:""js_highlight_color"";s:7:""#DB2A07"";s:7:""js_logo"";s:0:"""";s:14:""js_logo_height"";s:2:""70"";s:19:""js_background_color"";s:7:""#a8a3a3"";s:19:""js_background_image"";s:64:""http://hasulam.dev/wp-content/uploads/2011/12/bg-tile-dkgray.png"";s:29:""js_background_image_alignment"";s:8:""top left"";s:26:""js_background_image_repeat"";s:6:""repeat"";s:20:""js_footer_text_style"";s:4:""dark"";s:25:""js_background_image_fixed"";s:1:""0"";s:10:""js_favicon"";s:0:"""";s:14:""js_custom_font"";s:10:""FBBeeSerif"";s:24:""js_disable_page_comments"";s:0:"""";s:24:""js_disable_post_comments"";s:0:"""";s:25:""js_disable_event_comments"";s:0:"""";s:27:""js_disable_gallery_comments"";s:0:"""";s:25:""js_disable_video_comments"";s:0:"""";s:25:""js_disable_audio_comments"";s:0:"""";s:24:""js_homepage_page_display"";s:0:"""";s:18:""js_homepage_blocks"";a:5:{s:18:""js_homepage_slider"";s:1:""0"";s:22:""js_homepage_introblock"";s:1:""0"";s:12:""widget_block"";s:1:""0"";s:18:""js_event_countdown"";s:1:""1"";s:18:""js_footer_mapblock"";s:1:""0"";}s:23:""js_homepage_block_order"";s:33:""slider,introblock,block,countdown"";s:24:""js_homepage_slider_cycle"";s:3:""yes"";s:24:""js_homepage_slider_speed"";s:4:""6000"";s:35:""js_homepage_slider_transition_speed"";s:3:""500"";s:22:""js_homepage_intro_text"";s:224:""קהילת הסולם — היא קהילה דתית עם לימוד העמוק והמדויק ביותר של חכמת הקבלה ופנימיות התורה על פי דרכו של בעל הסולם והרב""ש זצוק""ל"";s:23:""js_social_icon_facebook"";s:32:""http://www.facebook.com/hasulams"";s:22:""js_social_icon_twitter"";s:30:""https://twitter.com/#!/hasulam"";s:21:""js_social_icon_flickr"";s:42:""http://www.flickr.com/people/80922930@N07/"";s:22:""js_social_icon_youtube"";s:40:""http://www.youtube.com/user/hasulammedia"";s:20:""js_social_icon_vimeo"";s:0:"""";s:25:""js_social_icon_foursquare"";s:36:""https://foursquare.com/user/30915399"";s:14:""js_time_format"";s:3:""24h"";s:21:""js_countdown_language"";s:7:""english"";s:21:""js_contactblock_title"";s:18:""בואו לבקר!"";s:20:""js_contactblock_text"";s:295:""אנו מזמינים אתכם לבא ולבקר אותנו בבית מדרשנו ברמת גן. כאן מתפללים, לומדים שיעורי ם עם הרב ובחברותות, קורסים וסמינרים בשבת. נשמח לראותכם או לשמוע מכם דרך המשוב באתר."";s:23:""js_contactblock_address"";s:33:""128 Jabotinsky, Ramat Gan, Israel"";s:26:""js_contactblock_buttontext"";s:17:""יצירת קשר"";s:26:""js_contactblock_buttonlink"";s:15:""/about/contact/"";s:14:""js_footer_text"";s:26:""Copyright ©[year] Hasulam"";s:12:""js_gmap_zoom"";s:2:""14"";s:14:""js_hide_social"";s:1:""0"";s:22:""js_disable_breadcrumbs"";s:1:""1"";s:13:""js_audio_link"";s:1:""0"";s:13:""js_video_link"";s:1:""0"";s:18:""js_hide_contactmap"";s:1:""0"";s:21:""js_contact_form_email"";s:22:""hasulam.site@gmail.com"";s:14:""js_404_content"";s:34:""צטערת, לא מצאתי הדף"";s:19:""js_google_analytics"";s:0:"""";}')
}}}
",veedeezee
16182,object_term_cache is never cleared for custom post types with non-shared taxonomy,,General,3.0,normal,major,Awaiting Review,defect (bug),new,,2011-01-10T22:47:56Z,2011-02-02T19:38:14Z,"wp_insert_post() calls clean_post_cache() after updating the post.  However, when clean_object_term_cache() is called, it passes is hard coded to pass in the post_type of 'post'.  So the object_term_cache is never cleared for any taxonomies that are part of the post object type's taxonomies.",prettyboymp
19197,phplinter error reports against wordpress core.,,General,,normal,normal,Awaiting Review,defect (bug),new,close,2011-11-07T17:34:14Z,2011-11-09T14:42:40Z,"One of our developer has been developing phplinter which can be found here [1] which gives wordpress core rather poor grade many of which are simply due to you guys having spaces mixed with tabs and whitespace after final close tag and others generally considered bad practices and few probably more serious.

Instead of me filing indvidual bugs for all of those I think it's best that you just git pull the phplinter and run it against wordpress then point your web browser against the report and flag/fix those that are relevant and those that are not.

An simple cli example is as follow...

#phplinter -wFIH  wordpress/ -o lintreport/ 

380 files, Average score: -2.86

Worst: wp-includes/class-simplepie.php with -303.39

[1] https://github.com/robotis/PHPLinter",vikingnr1
22630,plugin_basename() fails on case-sensitive plugin directories,,General,1.5,normal,minor,Awaiting Review,defect (bug),new,,2012-11-29T06:11:13Z,2012-11-29T17:06:49Z,"When `WP_PLUGIN_DIR` has slightly different casing to the actual path, `plugin_basename()` returns the full path to the plugin file.

For example:

If `WP_PLUGIN_DIR` is set to `C:/Website/wp-content/plugins`, but the actual file-system path is `C:/Website/wp-content/Plugins`, `plugin_basename()` will return the full path to the plugin file.

The `plugin_basename()` function uses a `preg_replace` statement to find path to the plugin relative from `WP_PLUGIN_DIR`. If the actual path to the plugin directory does not match case to `WP_PLUGIN_DIR`, the preg_replace will fail. This is because preg_replace is not case sensitive.",bungeshea
19714,plugins which use the 'authenticate' hook unable to return errors,,General,3.3,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-01-03T00:31:35Z,2012-11-20T17:37:34Z,"The 'authenticate' hook is designed to allow functions to return either an authenticated `WP_User` object (which will cause the user to be logged in), or a `WP_Error` object, which will cause the errors to be displayed to the user.

In practice, most plugins that use this hook don't rely on the username and password at all, but instead on other means entirely.  So what is happening with these plugins (the OpenID plugin chief among them), is that they are returning a `WP_Error` object that describes the error, but then the `wp_authenticate_username_password` function is ignoring that and returning its own `WP_Error` object which rightfully shows that the username and password fields were left empty.  Unfortunately, this error object (containing both an empty username AND password) is explicitly checked for and removed in the `wp_signon` method.  This is normally the right behavior and handles the case of a user who simply clicks ""Log In"" without entering anything... we don't show them an error, we just redraw the login form.  However, in the case described above, an actual error did occur with an authentication plugin, but the user simply sees the normal login form with no error displayed.

(patch forthcoming)",willnorris
15946,post_date_gmt ignored in wp_insert_post(),,General,3.1,normal,normal,Future Release,defect (bug),new,has-patch,2010-12-22T00:41:40Z,2010-12-26T22:46:25Z,"If a post is inserted with `post_date_gmt` set and `post_date` not, `post_date` defaults to the current date/time, rather than being generated from `post_date_gmt`",kawauso
23402,remove_query_arg messing up some URLs,,General,,normal,normal,Awaiting Review,defect (bug),new,,2013-02-06T01:00:41Z,2013-02-06T15:15:02Z,"I'm using remove_query_arg to strip utm campaign parameters from user-submitted URLs, but for some URLs it is replacing dots with underscores.

E.g. if you pass http://www.nanowerk.com/news2/newsid=28843.php into this:


{{{
$url = remove_query_arg( array(
	'utm_source'
	'utm_medium',
	'utm_campaign',
	'utm_term',
	'utm_content'
	), $url );

}}}

it returns http://www_nanowerk_com/news2/newsid=28843.php



",lumpysimon
22781,setUserSetting cannot handle hyphens,,General,2.7,normal,normal,Future Release,defect (bug),new,early,2012-12-06T06:18:39Z,2012-12-06T18:25:43Z,"sanitize_key() can, setUserSetting should be able to as well. It's not that sanitize_key() plays a role, but it sets expectations for what is allowed in keys across core. Both keys and values should be able to accept a hyphen.

The post-thumbnail image size cannot be remembered, for example, if it is added to image_size_names_choose.",nacin
16472,set_query_var() / get_query_var() does not work for NULL values,,General,,normal,normal,Future Release,defect (bug),new,has-patch,2011-02-06T16:08:06Z,2011-02-09T16:54:38Z,"Setting a query var to NULL will convert it into an empty string:

{{{
$name = 'test';
$value = NULL;
set_query_var($name, $value);
$get = get_query_var($name);
echo $value === $get ? 'same' : 'different';
var_dump($get);
}}}

This will output ""different"" and showing that the query var now is an empty string.",hakre
13208,shared code in get_mu_plugins() and get_dropins(),,General,,normal,normal,Future Release,defect (bug),new,has-patch,2010-05-02T03:22:40Z,2010-11-13T07:56:26Z,"Aka code buplication.


FYI closedir() is not necessary in PHP. It only consumes runtime and memory if you use it especially with the @ operator.",hakre
20077,shortcode_parse_atts should not force arguments to be lowercase,,General,,normal,normal,Awaiting Review,defect (bug),new,close,2012-02-19T19:21:33Z,2012-02-20T17:42:42Z,"Inside wp-includes/shortcodes.php, the shortcode_parse_atts() function forces shortcode arguments to be lowercase.  So if your shotcode had something like [my_shortcode MyVar=123], then your code that uses something like ""print $MyVar;"" fails... you have to use ""$myvar"" instead.  This is counter-intuitive.  I understand that there needs to be some restrictions on what is a valid parameter name (see http://core.trac.wordpress.org/ticket/9405), but I think it makes the most sense that the parameter names can correspond to any valid PHP variable name;  PHP variables ARE case-sensitive, so this arbitrary restriction of forcing lower-case parameters seems like the incorrect approach.",fireproofsocks
20740,strip_shortcodes Chokes On Empty Shortcodes,,General,3.3.2,normal,minor,Awaiting Review,defect (bug),new,,2012-05-23T22:58:56Z,2012-05-23T22:58:56Z,"It appears the regex for strip_shortcodes doesn't recognize empty shortcodes. For example, a caption shortcode like this would only have the opening shortcode tag stripped:


{{{
[caption id=""attachment_3360"" width=""288"" caption=""Some caption""][/caption]
}}}


The closing caption tag remains in the resulting string.

I realize this is a fringe case (why would you have an empty caption?), but it popped up for me when working with a popular plugin that attempts to generate an excerpt by doing the following:

{{{
$content = strip_tags($content);
$content = strip_shortcodes($content);
}}}

Seems harmless--but if a caption contains only an image tag, the strip_tags removes it, and the strip_shortcodes chokes on the now-empty shortcode. Or even worse, if you have a second caption shortcode in the content, it strips EVERYTHING between the first opening caption tag and the second closing caption tag.

And I have to imagine there are some custom shortcodes that may be legitimately empty for some reason. I dunno.

To reproduce:

{{{
$content = '[caption][/caption]

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

[caption][/caption]';

$content = strip_shortcodes($content);

echo $content;
}}}
",MathSmath
23492,svn:ignore wp-config.php,,General,trunk,low,minor,Awaiting Review,defect (bug),new,,2013-02-17T17:59:42Z,2013-02-17T17:59:42Z,"`wp-config.php` very often exists in Subversion checkouts, but it should never be committed. Could we add a `svn:ignore` property for it?",nbachiyski
24371,tags and editing publishing date do not work,,General,,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-05-20T13:37:34Z,2013-05-20T14:22:07Z,"Create a new post via firefox. try to change publishing date to future, does not work. try to add tags using most used tags and also adding new tags, no tags are added. at some point, I saved this as a draft but I think it was after I tried to changed the publishing date.",Shira.victor
12056,"target=""_blank"" being stripped from Profile Bio and Category Description",,General,2.9.2,normal,normal,Future Release,defect (bug),new,,2010-01-27T16:50:00Z,2011-05-31T19:32:07Z,"Many apologies if this is a duplicate. I have searched but did not find it yet posted.

I noticed that target=""_blank"" is being stripped from my ""a href"" tags my profile ""Biographical Info"" field even though the ""a href"" with the URL and closing tag still remain. It happens every time I save my profile. 

This was independently verified.

It is a regular wordpress install running 2.9.1 (not wordpressmu, etc.).

My original thread can be found here:
http://wordpress.org/support/topic/355388?replies=1",lovewpmu
14938,title of add_settings_section and add_settings_field,,General,,normal,normal,Future Release,defect (bug),new,,2010-09-22T16:44:40Z,2011-01-16T17:10:15Z,"When the title of both these functions is left blank, they echo 
<h3></h3> and <table><th>.... on to the page. 

When the title is left blank, they shouldn't add the blank tags.",gandham
11734,trackback_rdf() for IDN (xn--) Domains produces invalid HTML,,General,3.1,normal,normal,Future Release,defect (bug),new,close,2010-01-06T01:10:55Z,2012-02-20T12:22:02Z,"Hello

The trackback_rdf() function from wp-includes/comment-template.php wraps the ""<rdf:RDF>...</rdf:RDF>"" output inside ""<!-- ... -->"" HTML comments, probably to be safe as not all Browsers understand them.

When using Wordpress 2.9.1 on a site with an international domain name [1] that contains special characters like German ""Umlauts"" like äöü, this domain name is written as e.g. xn--tst-qla.de for täst.de.

Now the output of trackback_rdf() suddenly gets a ""--"" which is the SGML/HTML comment separator mark [2]. Firefox 3.5.6 e.g. sees this as the end of the comment and therefore shows the final ""-->"" as text to the user.

As the whole RDF tag is supposed to be invisible for the user, it's a bug in Wordpress :-(

Here is an real world example output:

{{{
                     <p class=""post-tags"">

                      </p>
				  <p class=""post-info"">
					  				  </p>
				  <!--
				    <rdf:RDF xmlns:rdf=""http://www.w3.org/1999/02/22-rdf-syntax-ns#""
				xmlns:dc=""http://purl.org/dc/elements/1.1/""
				xmlns:trackback=""http://madskills.com/public/xml/rss/module/trackback/"">
			<rdf:Description rdf:about=""http://xn--bcher-entdecken-zvb.de/wordpress/index.php/wortlieblinge/""
    dc:identifier=""http://xn--bcher-entdecken-zvb.de/wordpress/index.php/wortlieblinge/""
    dc:title=""Wortlieblinge""
    trackback:ping=""http://xn--bcher-entdecken-zvb.de/wordpress/index.php/wortlieblinge/trackback/"" />
</rdf:RDF>				  -->
			  </div>
}}}


Sadly I have not yet come up with a solution. PHPs urlencode() does not escape a double dash - which is ok as its usually perfectly valid. Maybe someone with RDF experience has a good idea.

bye,

-christian-


[1] http://en.wikipedia.org/wiki/Internationalized_domain_name#Example_of_IDNA_encoding

[2] http://htmlhelp.com/reference/wilbur/misc/comment.html



",lathspell
23429,undefined tinyMCE: no ?> at the end of load-scripts.php,,General,3.5.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2013-02-08T22:01:36Z,2013-02-14T03:47:40Z,"I noticed a theme throwing an error in console today. I noticed ""Uncaught ReferenceError: tinyMCE""

In particular, switchEditors.switchto() and a few others like .do - where undefined. I thought that was strange. I googled the error and eventually found this thread: http://wordpress.org/support/topic/javascript-error-in-admin-panel-with-load-scriptsphp?replies=2

Adding ?> to the end of load-scripts.php fixed the issue.

Very strange bug. I have seen it on 2 installations now (4 referencing the two in the support forum thread) - but I am unable to recreate it anywhere else.",chaos1
11683,update_metadata() passes only the first meta_id,,General,2.9,normal,normal,Future Release,defect (bug),new,has-patch,2010-01-01T18:04:39Z,2013-05-14T13:18:38Z,"Code to reproduce:

{{{
function update_metadata_action_test($meta_id) {
	var_dump($meta_id);
}
add_action('update_post_meta', 'update_metadata_action_test');

add_metadata('post', 1, 'mykey', 'value1');
add_metadata('post', 1, 'mykey', 'value2');

update_metadata('post', 1, 'mykey', 'new value');
}}}

Expected result:

{{{
Array ( [0] => 101 [1] => 102 )
}}}

Actual result:

{{{
string(3) ""101""
}}}
",scribu
22233,update_option() fails when value has nested objects,,General,3.4.2,normal,minor,Awaiting Review,defect (bug),new,,2012-10-20T16:29:08Z,2012-11-22T03:28:30Z,"This gist has an example of how this problem can be reproduced: https://gist.github.com/3923757

If you run the three functions in three separate page loads you will see that the foo attribute of `$b` doesn't get saved. It seems to be some kind of cache problem. 

I've been able to reproduce this in 3.4.2, 3.4.3-alpha and 3.5-beta2 ",exz
24266,update_post_meta doesn't change post modified date,,General,3.5.1,normal,normal,Awaiting Review,defect (bug),new,,2013-05-05T05:10:14Z,2013-05-06T04:04:17Z,"In building an application I wanted to query for posts that were modified since a specific date/time. 

The only issue is the majority of our changes are to post meta and not to post content, this means these changes don't show up in the query. 

To solve this I'm tying into the action, but I feel like this is something that should be done by default.",DennisSmolek
21900,update_post_meta() returns FALSE when meta_value to be updated is the same,,General,3.4.2,normal,normal,Awaiting Review,defect (bug),new,,2012-09-15T17:15:17Z,2012-10-13T00:52:12Z,"Since [14564] update_metadata() (wp-includes/meta.php [20435]) in lines 129-136 checks to see if the meta_value to be updated is the same as the value that already exists in the database.  The point of this check, presumably, is to prevent running a needless UPDATE query.  That's fine and good.

Currently, if the values are the same the function returns FALSE.  I think it should return TRUE in this case.  While I understand that from one point of view it should be false, since nothing was actually updated, if I'm trying to update my metadata to a certain value, and the end result is that the value in the database matches the value I submitted, isn't that a win?  In other words, even though no UPDATE query was actually executed, the postmeta was ""updated"" to have the value that was specified in update_post_meta().

Here's an example of when this could be an issue:

{{{
function my_plugin_ajax_save_metadata() {
    // create a success flag
    $success = true;
    // $postid passed in via post variables
    $postid = $_POST[ 'postid' ];
    // data fields from post passed in from a serialized array
    parse_str( $_POST[ 'data' ], $fields );
    // my custom post meta fields all have names that begin with _mymeta
    foreach( $fields as $key => $val ) {
        // if a field is one of my meta fields, attempt to update it
        if ( false !== strpos( $key, '_mymeta' ) ) {
            // if $val is the same as what's already in the db, $success will be false
            $success = update_post_meta( $postid, $key, $val );
        }
        if ( false === $success ) {
            // uh-oh, update_post_meta failed, need to handle it
            // but updating a meta value to the same value is not really a fail
            $message = ""Error updating metadata: $key = $val"";
            break;
        }
    }
    echo ( $success ) ? 'Success.' : $message;
    exit;
}
add_action( 'wp_ajax_save_meta', 'my_plugin_ajax_save_metadata' );
}}}

Of course, I could use get_post_meta() to find out if values have changed before calling update_post_meta(), but since update_metadata() already does this (line 131), it seems wasteful for me to have to do it.

I guess another alternative would be to return something besides TRUE or FALSE when the values are the same, but I'm not sure what that would be.
",mcbenton
10770,wp-cron uses excesive CPU cycles,,General,2.9,normal,critical,Future Release,defect (bug),new,reporter-feedback,2009-09-12T11:49:09Z,2010-02-20T18:37:21Z,"Users are suddenly finding their accounts suspended because of excessive CPU cycles. However after investigating it appears the web hosting companies are properly configured and no hacks have occured. It seems that wp-cron is looping and consuming huge amounts of cpu cycles.

'''Versions:'''
This occurs across the past several versions on fully updated versions.

'''The effect:'''
Excessive CPU cycles with resulting suspension of a users account.

'''Plugins and Theme:'''
I detect no relationship to plugins and themes. I am presently running only 8 plugins.

'''Frequency:'''
Sadly, this is an intermittent issue. But a check of the Wordpress.org forum will show regular questions about this problem.

'''Server Environment:'''
Host is [http://www.inmotionhosting.com]. Fully updated and seemingly well maintained.

'''Additional:'''
There is a link from a 2.6 problem at [http://trinity777.wordpress.com/2008/10/28/wordpress-26-the-issue-of-wp-cronphp/]. Although it refers to an old version I think the issue is still unresolved and his work might prove useful to you.

Thanks
",jbevans
17725,wp_convert_hr_to_bytes() fails on large numeric values,,General,2.3,normal,normal,Awaiting Review,defect (bug),new,has-patch,2011-06-08T12:24:41Z,2011-06-22T17:17:36Z,"The {{{wp_convert_hr_to_bytes()}}} function exists to convert values in form of a memory setting into it's value in bytes.

By doing so, the function modifies the input value in every case. This modification has an issue with integer limits.

Whenever a value of $size is passed to the function that is in it's numerical part larger than [http://php.net/manual/en/reserved.constants.php PHP_INT_MAX], the input value will be capped to {{{PHP_INT_MAX}}}.

This is an integer overflow.

This applies as well when size has a shorthand ending specifier and it's numerical part is greater than PHP_INT_MAX.

To illustrate the problem on a 32 bit system:

{{{
	$setting = '2147483648';
	echo ""'$setting' are "", wp_convert_hr_to_bytes($setting), "" bytes.\n"";
	// '2147483648' are 2147483647 bytes.
}}}

It shows that the last byte is missing. Every other byte on top will be capped as well. The number of bytes given are a value equally to '2G'.

Solution: Input values should not be capped to int but to float which has allows higher values.",hakre
20450,wp_dropdown_categories - inconsistent use of single-quotes causes (javascript) assignment  issues,,General,3.3.1,normal,minor,Awaiting Review,defect (bug),new,close,2012-04-15T23:06:37Z,2012-06-18T23:02:05Z,"wp_dropdown_categories outputs double-quote characters for all options (value etc) BUT single-quote characters for main select attributes - which is inconsistent.

this causes a problem when assigning output to eg. a javascript string - meaning we must perform a separate 'replace' operation first.

similarly, we already have to do a replace of all newline-characters in output for newline-backslash - in order that its multi-line output can be assigned to a javascript variable.

please could we have double-quote characters used consistently  in output? ideally provision of a javascript friendly output format (ie. backslash-newline) would also be great - though my no means essential. 
 ",rcain
14488,wp_enqueue_script in_footer doesn't work on WP known scripts,sorich87*,General,3.0.1,normal,minor,Future Release,defect (bug),accepted,has-patch,2010-07-31T05:18:30Z,2012-10-11T17:52:33Z,"I changed some plugin code from:
wp_enqueue_script('jquery-ui-sortable');

To:
wp_enqueue_script('jquery-ui-sortable',false,array(),false,true);

However, the script was not moved to the footer. 

When I looked at the source for wp_enqueue_script, I can see that it's because the check for $in_footer is inside the condition for $src being defined. But built-in scripts don't require a source. ",mcr2582
19892,wp_fix_server_vars() mangles REQUEST_URI on some servers,,General,3.3.1,normal,normal,Awaiting Review,defect (bug),new,has-patch,2012-01-25T00:58:47Z,2012-01-25T06:53:04Z,"== Bug manifestation: ==

On some server setups, saving settings on any settings page which uses options.php - including the twentyeleven theme options pages - results in a ''You do not have sufficient permissions to access this page.''-error page, even if you are the (super-)admin of the website.[[BR]]

The changed settings *are* however saved, but the bug obviously causes a usability issue.[[BR]]
[[BR]]



== The cause of the issue: ==

The issue is ultimately caused by (shared-)hosting companies which - for security reasons - set the {{{$_SERVER['SERVER_SOFTWARE']}}} variable to MS IIS when in reality the server runs on a Linux variant.[[BR]]
[[BR]]

The {{{$_SERVER['SERVER_SOFTWARE']}}} variable being MS IIS causes ''wp_fix_server_vars()'' to double the query vars resulting in a mangled {{{$_SERVER['REQUEST_URI']}}}.[[BR]]

I.e.: ''""/wp-admin/themes.php?page=theme_options""'' becomes ''""/wp-admin/themes.php?page=theme_options?page=theme_options""''[[BR]]
[[BR]]


As the {{{$_SERVER['REQUEST_URI']}}} variable is used by the ''settings_fields()'' function to generate the hidden form fields for the option pages, this then in turn results in a mangled ''_wp_http_referer'' form value.[[BR]]

I.e.: {{{<input type=""hidden"" name=""_wp_http_referer"" value=""/wp-admin/themes.php?page=theme_options?page=theme_options"" />}}}[[BR]]
[[BR]]


As the '''''options.php''''' file, after saving the changed settings, uses the ''_wp_http_referer'' field value to redirect the page - which it then can't - , the user ends up on the ''You do not have sufficient permissions to access this page.''-error page.[[BR]]
[[BR]]



== Patch/fix for the issue: ==

In file '''''wp-includes/load.php''''' change '''''line 75''''' from:

{{{
if ( ! empty( $_SERVER['QUERY_STRING'] ) ) {
}}}
to
{{{
if ( ! empty( $_SERVER['QUERY_STRING'] ) && strpos ( $_SERVER['REQUEST_URI'], '?' ) === false ) {
}}}

N.B.: line number based on WP 3.3.1. trunk[[BR]]
[[BR]]




== Additional info: ==

This bug has been in the WP code base for a while. It might be useful to add this issue to the FAQ in the documentation for those users/webmasters who do not always upgrade to the latest & greatest WP version.[[BR]]


A user/webmaster who encounters this issue should probably get advice along the following lines:[[BR]]

a. Determine that the problem is really caused by this issue by verifying that they really run on Linux and by checking that the {{{$_SERVER['SERVER_SOFTWARE']}}} is a MS IIS variant - they can use ''phpinfo()'' to do so.[[BR]]

b. Upgrade to a WP version which includes the above patch once it has been released.[[BR]]

c. Contact their webhost to see if they are willing to change the {{{$_SERVER['SERVER_SOFTWARE']}}} variable to reflect reality.[[BR]]

d. If neither of the above is possible/works and they are sure that this bug is the cause of their problems, they can apply the following quick & dirty fix to solve it without touching the core files:[[BR]]


Add the following code to their wp-config.php file anywhere above the ''/* That's all, stop editing! Happy blogging. */'' line.
{{{
/**
 * Quick fix for server software bug
 */
$_SERVER['SERVER_SOFTWARE'] = 'Apache';
}}}
[[BR]]


== Related bug reports found: ==

* #15209 {{{$_SERVER['REQUEST_URI']}}} Doesn't always work correctly
* #12346 Saving settings in multiple plugins results in You do not have sufficient permissions to access this page.


This ticket has been opened as the previous two bug reports where too old to reopen.
",jrf
16059,"wp_kses_split2() is private, no need to create a function with the sole purpose to call a function.",,General,3.1,lowest,normal,Future Release,defect (bug),new,dev-feedback,2011-01-01T17:06:19Z,2011-01-01T21:41:01Z,"In the effort to remove create_function() constructs from the file (#10623, #7363) the last one was removed in 16313 / #14424.

While the analysis in the last ticket was right that create_function() is not needed, the resolution to introduce a named function was not.

Infact the anonymous callback function has been replaced with a named callback function without taking into account, that a named callback function already exists. So a function whith its sole purpose to call another function has been introduced by the google summer of code student.

The existing functions name is wp_kses_split2(), having the needed properties. The function is marked as private and not used anywhere else in the file kses.php nor the whole core php code.

It can be safely adopted to fulfill the requirements of the callback function signature.

This saves the overhead of a function call per callback call.

Additionally passing the data needs only one entry in the symbol table by using an array.",hakre
24057,"wp_list_bookmarks links target=""""",,General,3.5.1,normal,minor,Awaiting Review,defect (bug),new,reporter-feedback,2013-04-12T11:28:53Z,2013-04-15T23:41:22Z,"When adding links via the add links function in WordPress, the default target of the link is _none.

The problem is, the code generated for that code is
<a href=""..."" target="""">, target being an empty string. This is not HTML5 compliant, as target has to have at least 1 character.",moscar09
17015,wp_list_pages incorrect hierarchy when using include and sorting by title,,General,3.1,normal,minor,Awaiting Review,defect (bug),new,,2011-04-01T17:02:31Z,2011-04-02T04:12:21Z,"I am using wp_list_pages to create a page hierarchy. I only want the grandchildren of specific pages, so I generate a list of page IDs to send to wp_list_pages. I sort them by page title.  The hierarchy is not handled correctly when a grandchild's title sorts before its parent.

How it should come out:[[BR]]
About Us[[BR]]
 -Board of Directors[[BR]]
   --Annual Reports[[BR]]
 -FAQ[[BR]]
 -Initiatives[[BR]]
  --Ohio...[[BR]]
  --Reach[[BR]]

How it comes out:[[BR]]
About Us[[BR]]
 -Annual Reports[[BR]]
 -Board of Directors[[BR]]
 -FAQ[[BR]]
 -Initiatives[[BR]]
  --Ohio...[[BR]]
  --Reach[[BR]]

I've moved things around and verified that this sorts correctly:[[BR]]
About Us[[BR]]
 -Board of Directors[[BR]]
   --ZZZAnnual Reports[[BR]]
 -FAQ[[BR]]
 -Initiatives[[BR]]
  --Ohio...[[BR]]
  --Reach[[BR]]

If one grandchild has a sort order above its parent, all the grandchildren are pulled above the parent in the hierarchy. For example:[[BR]]
About Us[[BR]]
 -Board of Directors[[BR]]
   --ZZZAnnual Reports[[BR]]
 -FAQ[[BR]]
 -AAAAOhio...[[BR]]
 -Reach[[BR]]
 -Initiatives[[BR]]",JohnColvin
15667,"wp_list_pages, if it finds no pages to display, shows random child pages instead because of a bug in get_pages()",,General,3.0.2,normal,critical,Future Release,defect (bug),new,,2010-12-03T19:12:46Z,2011-01-16T05:09:28Z,"How to reproduce:[[BR]]
- About page is published
- additionally, there is a number of parent pages[[BR]]
- these each have a number of children[[BR]]
- when calling wp_list_pages(), the ""exclude"" attr excludes all parent pages, and display only the About page.

This works as long as there is at least 1 other page published that is not in the list of excluded IDs. In this example, as soon as the About page is set to ""draft"", wp_list_pages stops working correctly.

So... with no other pages besides the excluded ones published, we do this:

1) wp_list_pages('title_li=&depth=1&exclude=3,5,7');
=> wp_list_pages SHOULD return nothing, but instead it displays all child pages of the first parent page ID in the ""exclude"" attr (here: 3).

Now we now add the ""exclude_tree"" attr just for fun:

2) wp_list_pages('title_li=&depth=1&exclude=3,5,7&exclude_tree=3,5,7');
=> should again return nothing, but instead, it displays the first-ever published child page globally (here: a child page of 5).

It looked like random behavior at first but I've been able to identify the above pattern. I'm guessing it's a failing condition somewhere in the function.",bobsoap
21659,wp_mail() problem with Reply-To header,,General,3.4.1,normal,normal,Awaiting Review,defect (bug),new,,2012-08-22T14:43:43Z,2012-08-22T14:43:43Z,"I am using in email headers also Reply-To:

{{{
$headers .= ""Reply-To: \""$name\"" <$email>\r\n"";
}}}

But there is a problem when name contains special non-English characters.

Example (from email headers):

Name: Žlutý kůň

{{{
Reply-To: =?UTF-8?Q? ""=C5=BDlut=C3=BD_k=C5=AF=C5=88"" _ <my@email.com>,
  ?=@example.com
}}}

I think that it is somehow related to wp_mail() function, because I also tried to use SMTP plugin and it worked well:

{{{
Reply-To: =?UTF-8?Q?""=C5=BDlut=C3=BD_k=C5=AF=C5=88""_<my@email.com>?=
}}}

Also when I use simply mail() instead of wp_mail() then everything works well. Problem can be seen only for Reply-To header, all others work well (for example From).

I am using WP 3.4.1.",pavelevap
13575,wp_max_upload_size() is not taking memory limit into account,,General,3.0,normal,normal,Future Release,defect (bug),new,has-patch,2010-05-27T12:38:41Z,2011-03-08T15:14:43Z,"wp_max_upload_size() is not taking a memory limit into account while checking for the maximum upload size.

according to the official php documentation the memory limit is limiting file uploads as well (and post form operations).


> post_max_size - integer [[BR]][[BR]]
> Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize. If memory limit is enabled by your configure script, memory_limit also affects file uploading. Generally speaking, memory_limit should be larger than post_max_size.

[http://www.php.net/manual/en/ini.core.php#ini.post-max-size Source]",hakre
16516,wp_page_menu documentation of the sort_column parameter,,General,3.0.5,normal,trivial,Awaiting Review,defect (bug),new,,2011-02-10T15:13:13Z,2011-02-10T15:13:13Z,"The [http://core.trac.wordpress.org/browser/tags/3.0.5/wp-includes/post-template.php#L810 source code documentation] for wp_page_menu reads:

{{{
* <li><strong>sort_column</strong> - How to sort the list of pages. Defaults
* to page title. Use column for posts table.</li>
}}}

The actual default value is {{{'menu_order, post_title'}}} (correctly, as per [http://core.trac.wordpress.org/ticket/10266 Ticket 10266]).

",FrancescoRizzi
17472,wp_redirect() should return true on success,draca,General,3.1.2,normal,minor,Awaiting Review,defect (bug),new,has-patch,2011-05-17T12:56:39Z,2011-05-17T15:40:11Z,"Ticket #3250 added the ability for a filter to cancel a redirect request and returns false in that event.

On success, there is no return value specified so the function returns NULL per the PHP spec.  A value of true should be returned so that logic such as the following can be used:


{{{
if (! wp_redirect($redirect_url)) {
  // Handle redirect failure
}
}}}
",draca
22739,wp_register_script/wp_enqueue_script problem,,General,3.4.2,normal,minor,Awaiting Review,defect (bug),new,reporter-feedback,2012-12-04T18:51:01Z,2013-01-16T04:27:53Z,"First of all: sorry for my bad English.
Hi, i've seen may be a bug while programming a plugin (Len Slider).
I have some handle-scripts like jquery, jquery-ui to enqueue, its ok. Also I have my known js-files to enqueue, ok too. BUT! When I want to enqueue dynamic js (gets from folders via glob), it enqueue too BUT BEFORE jquery, jquery-ui itc. When I enqueue script with custom handle and in foreach loop, BUT with deps parameter as array of jquery, jquery-ui etc. And this dynamic js-file loads BEFORE jquery or jquery-ui! Now I solve the problem by load known handles jquery, jquery-ui in header and my own in footer, but i think we need to look for core to solve it.

You can see it on Len Slider in len-slider/lib/lenslider.class.php:313 - lenslider_make_skins_files_wp_head method

Also I think about parameter like priority for wp_register_script/wp_enqueue_script(style) functions to load it by this range.",tigusigalpa
17052,wp_sanitize_redirect() removes square brackets from URL,,General,3.1,normal,minor,Awaiting Review,defect (bug),reopened,has-patch,2011-04-05T07:12:16Z,2012-03-01T18:08:07Z,"The function wp_sanitize_redirect() removes square brackets from URLs.

PHP's functionality with arrays in the URL require square braces, stripping them from the URL means that pages (and plugins) that rely on them fail.

To Reproduce:

{{{
<?php
$url = 'http://example.com/my_url_array[1]=hello+world';
print wp_sanitize_redirect($url);
?>
}}}


Current Output:
http://example.com/my_url_array1=hello+world

Expected Output:
http://example.com/my_url_array[1]=hello+world

Whilst developers should be able to work around this as the function is pluggable I believe this should just work out of the box.
",bluntelk
12657,wp_signon() adds one filter per call,,General,3.0,normal,normal,Future Release,defect (bug),new,,2010-03-20T11:52:10Z,2010-10-02T00:35:56Z,"If wp_signon() is called multiple times, the filter will be added multiple times. Next to this a lot of the function seems to be just typed in in the wish that it does work instead of doing things properly. See quote: ""ugly hack to pass this to wp_authenticate_cookie"" or leftover TODO markings and the like.

Should be put in order prior to next release.",hakre
18944,wrong url in sortable column headers when behind a reverse proxy,,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,reporter-feedback,2011-10-14T11:50:57Z,2012-08-09T18:33:29Z,"Hi, I have a wordpress site behind a reverse proxy. All works fine but for the urls used in the headers of sortable columns.

For instance, the links of ""Title"", ""Author"", etc. of the table of posts in wp-admin/edit.php --> Posts report something like ""http://backend/backend-dir/..."" while they should be ""http://frontend/frontend-dir/..."".

I don't think this is a proxy configuration problem because, AFAICS, the rest of the site is working: I can make posts, pages, media, install themes and plugins.

I tried to play with $current_url al line 649 of
wp-admin/includes/class-wp-list-table.php 
but with no luck.

I suppose that pagination may have the same problem.

",gamboz
18525,"zlib.output_compression ""on"" in server conflicts with autoupdate",,General,3.2.1,normal,normal,Awaiting Review,defect (bug),new,dev-feedback,2011-08-26T20:11:45Z,2012-11-13T05:12:06Z,"If zlib.output_compression is ""on"" in server (my vps server), then auto-update works, but without verbose output or any indication that install has succeeded.

This error is consistent for all auto-updates WordPress Application and all plugins.

It is NOT a plugin conflict. Occurs on different servers.

Testing has confirmed that when zlib.output_compression is returned to ""off"", then updates work as expected.

In my opinion this is a minor bug and probably a note in the readme file will suffice.

Thank You,

Neil Miller
zx@avidre.net",avidre
16686,$user argument of get_edit_profile_url() should be optional,,General,3.1,normal,normal,Future Release,enhancement,new,has-patch,2011-02-27T05:40:21Z,2011-02-27T09:54:36Z,It should default to the current user.,nacin
19332,'Edit Category' page lacks hooks to edit form fields,,General,3.2.1,normal,minor,Awaiting Review,enhancement,new,,2011-11-22T17:18:13Z,2011-11-22T17:18:13Z,"The default 'Name', 'Slug' and 'Description' form fields are stuck in place on Categories and Custom Taxonomies. 
There are hooks before and after the form (eg {$taxonomy}_pre_edit_form), but nothing to modify the basic output. 
These fields, especially 'slug', can scare civilians and it would be nice not to have to use JS to hide them.",duncanjbrown
22325,Abstract GPCS away from the superglobals,,General,,normal,minor,Future Release,enhancement,new,,2012-10-30T21:15:41Z,2013-03-21T00:27:16Z,"As discussed at #wpcs, it looks like we want to move away from directly using the GPCS superglobals. This gives us a way to handle slashing backwards compatibility moving forward.

This is still a heap of versions away, but this is a way to keep any notes central.",rmccue
23471,"Abstraction of post format parameters (wp_update_post(), XML-RPC, template tags)",,General,trunk,normal,normal,Future Release,enhancement,new,,2013-02-13T19:55:58Z,2013-05-16T12:07:38Z,"#19570 is introducing a UI for post formats. Correspondingly, various post meta fields will be introduced to store the extended data that's used in some post formats (eg. the URL field for a link or the source field for a quote).

Anything that interacts with the XML-RPC API and wants to support post formats (eg. future versions of the [http://wordpress.org/extend/mobile/ WordPress mobile apps]) will therefore need to:

 1. Send the various post format meta fields in its requests, and
 2. Receiv