__group__ ticket summary owner component _version priority severity milestone type _status workflow _created modified _description _reporter
Future Releases 3451 Page URI canonization markjaquith Permalinks 2.1 normal normal Awaiting Review defect (bug) reopened close 2006-12-07T04:46:08Z 2023-02-20T16:05:43Z "The nice permalink URIs for posts or categories are case-insensitive, but the page URIs are not.
e.g. http://matt.wordpress.com/about/
cannot be reached via
http://matt.wordpress.com/About/
This results in 404s being returned when a user incorrectly gets the case of the URI wrong. This is particularly a problem for weblogs that have migrated old pages to WordPress, and have external pages pointing to them with varying case applied to the URIs." pah2
Future Releases 4328 Redirect Old Slugs feature needs to redirect slugs for pages, not just posts, and redirect old permalink structure SergeyBiryukov Canonical 2.2 normal normal Future Release enhancement reviewing needs-unit-tests 2007-05-24T01:52:44Z 2022-01-25T14:30:12Z "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
Future Releases 5250 wpautop() issue with lists Formatting 2.3 normal normal Future Release defect (bug) reopened needs-unit-tests 2007-10-24T00:32:38Z 2023-02-02T13:34:08Z "First of all, my sincere apologies if this is a duplicate.
The problem, in short: WordPress inserted a number of unclosed `
` 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:
{{{
text
subtext
more text
}}}
This was automatically converted to:
{{{
text
subtext
more text
}}}
Note the extra `
` 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 `
` tags works just fine:
{{{
text
subtext
more text
}}}
Since this workaround exists, the bug is not very prioritary, but it should also (hopefully) be easy to fix." Narc0tiq
Future Releases 5678 Respectfully strip newlines in some importers hansengel* Import 2.5 normal normal WordPress.org enhancement accepted 2008-01-16T11:20:02Z 2019-03-15T00:39:32Z "Filing this as an enhancement because it could do with some discussion and insight from wiser and more experienced heads before being labelled ""defect"". :-)
I noticed while helping some users import their blogs that importers of HTML content (such as the RSS importer) don't tidy up superfluous newlines in the import format, which results in unnecessary {{{ }}} elements after {{{wpautop()}}} filtering for display. They turn up in the editor too, which reinforces the problem.
I've adapted one of the filter functions to strip superfluous newlines, and changed my RSS importer to use it. The results have been warmly welcomed by users, who no longer have to clean up their imported blog content. ;-)
{{{strip_newlines()}}} should probably go into {{{wp-includes/formatting.php}}}, if there isn't already a function that already serves this purpose. I couldn't find one, so I adapted this.
Given that similar HTML block/inline-savvy string-replacement code exists in other formatting functions, perhaps there's an opportunity for some refactoring here? I feel kind of silly proposing a function that is almost entirely duplicated from other code in the core.
I've used it immediately before the ""Clean up content"" section in {{{wp-admin/import/rss.php}}}'s {{{get_posts()}}}, and in an Advogato importer that I've written (which also uses HTML as the content format).
{{{
function strip_newlines($text) {
// Respectfully strip unnecessary newlines
$textarr = preg_split(""/(<[^>]+>)/Us"", $text, -1, PREG_SPLIT_DELIM_CAPTURE);
$stop = count($textarr); $skip = false; $output = ''; // loop stuff
for ($ci = 0; $ci < $stop; $ci++) {
$curl = $textarr[$ci];
if (! $skip && isset($curl{0}) && '<' != $curl{0}) { // If it's not a tag
$curl = preg_replace('/[\n\r]+/', ' ', $curl);
} elseif (strpos($curl, '}}} tags inside CDATA or with Unicode directionality characters (for e.g., RLE and PDF, or and , or U+202B and U+202C.) for excerpts or titles.
While we currently have pretty good support for RTL languages, there is no support for RTL in feeds - all is left up up to the feed reader.
I suggest adding a mechanism to automatically insert these tags/characters for blogs that have text_direction set to RTL - much in the same way RTL css style sheets are loaded for these blogs.
I have attached a patch that modifies the feed templates to insert these tags/characters. Note that there is no checking of blog directionality here - this is just an example of how to enforce RTL in feeds, not how to enforce it conditionally.
This relate to a previous ticket I submitted (#5517), regarding adding an option to set the feed language - which currently just defaults to EN. Certain feed readers know to display RTL text in proper directionality according to feed language (for e.g., feeds that have their feed language set to HE (Hebrew), will get displayed from Right to Left). While setting feed language is not a comprehensive solution, it is a step in the right direction." RanYanivHartstein
Future Releases 6492 Guids No Longer Have Permalink Format Database 2.5 normal normal Future Release enhancement reopened 2008-03-31T06:03:30Z 2019-08-30T01:26:43Z "When you create a new post using WordPress 2.5 the GUID is created in the http://siteurl/?p= format even when permalinks are enabled. This is because the _transition_post_status function in /wp-includes/post.php now checks if the guid is empty (which it never is) before resetting/creating it with the proper permalink structure. Line 2841 should be removed.
" brianwhite
Future Releases 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 2021-09-22T13:30:43Z "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
Future Releases 6778 Detect when the config will cause infinite loop Permalinks 2.5 normal normal Future Release enhancement reopened dev-feedback 2008-04-19T13:46:14Z 2019-03-15T00:34:39Z "Behavior:
If you put in http://www.domain.com in the ""Wordpress Address"" setting, then Wordpress will automatically do a redirect from http://domain.com to http://www.domain.com. Many hosting packages allow the user to deal with www and non-www versions of their domain. This will cause an infinite redirect loop if, for example, the ""Wordpress Address"" is set to http://www.domain.com and the hosting setting is set remove the www from the domain address-- to redirect http://www.domain.com to http://domain.com.
Expected behavior:
When setting the ""Wordpress Address"" setting, it should detect if the canocical code will cause an infinite redirect loop and warn/correct the mistake" Analogpoint
Future Releases 6814 Async media crunching adamsilverstein Upload 2.5 normal normal Future Release enhancement assigned dev-feedback 2008-04-23T00:19:05Z 2022-08-24T14:14:22Z "The upload part of the new multi-uploader is pretty nice now, but it blocks on the ""crunching"" phase, which can sometimes take 20-60 seconds, I assume to create medium thumbnails and such.
The crunching part of the upload should not block the next file beginning the upload process, it should happen asynchronously with the rest of the process." matt
Future Releases 6984 wpautop() formats the the contents of shortcodes Shortcodes 2.6 normal normal Future Release defect (bug) new 2008-05-17T10:34:02Z 2019-04-01T10:04:10Z "`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('
', '
'), array('
', '
'), $text);[/code]
}}}
The content that gets passed to my shortcode function is this:
{{{
$text = str_replace( array('
', '
'), array('
', '
'), $text);
}}}
Expected result: it shouldn't touch the insides of valid shortcodes (like adding line breaks or anything as it is doing now)." Viper007Bond
Future Releases 7745 Private posts cannot have unpublished or pending review status Posts, Post Types 2.6.1 low minor Future Release enhancement new 2008-09-15T16:32:19Z 2019-03-15T00:32:37Z "Posts with private ticked are immediately set to published, and cannot be reverted to unpublished or pending review while private is ticked. Given the default use of private posts, this behavior is understandable, but it seems far simpler if the behavior remained consistent with public posts.
In our particular case, we are using Role Manager to allow subscribers to read private posts. A simple solution that suits our particular needs well. But we really need the full draft/review process, just as with public posts." nyoungman
Future Releases 7795 Activate and Deactivate Theme hooks Themes 2.7 normal normal Future Release enhancement assigned 2008-09-26T20:40:53Z 2019-03-15T00:32:18Z Currently, there is no standard way of checking whether of theme is activated, deactivated and uninstalled. Plugins have this capability and themes should also have the same to ensure that both share similar functionality. jacobsantos
Future Releases 7797 Consolidate iframe headers Administration 2.7 normal normal Future Release enhancement assigned 2008-09-26T23:35:46Z 2019-03-15T00:31:49Z "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
Future Releases 8107 get_next_post, get_previous_post do not work for posts posted within same second Posts, Post Types 2.7 normal normal Future Release defect (bug) new dev-feedback 2008-11-08T12:34:22Z 2018-12-09T21:00:15Z "if you have posts that are published shortly one after the other (e.g. through a script or plugin that posts several posts at once) several of them may end up having the same post_date in the wordpress database table. this is due to the fact that mysql datetime seems to only maintain a precision of one second (see also this discussion: http://bugs.mysql.com/bug.php?id=8523).
the problem now is that wordpress functions like get_next_post/get_previous_post (get_adjacent_post resp.) will no longer work correctly if something like this happens as they solely rely on a comparison of the post_date field and they don't treat the case where these timestamps are the same for several posts. the result is that e.g. get_next_post will pick one of the posts having the same timestamp and ""jump"" over the others, so the user will never see them.
i see two possibilities around this 1.) treat cases with the same post_date by e.g. looking also at the post id (assuming it is always strictly increasing) or probably preferably 2.) make sure that no two posts have the same post_date timestamp by e.g. increasing post_date artificially when publishing the post and if another post already has the same timestamp.
" whoismanu
Future Releases 8578 Blogger import incorrectly reports saved user information Import normal normal WordPress.org defect (bug) new 2008-12-11T16:53:52Z 2019-03-15T00:30:30Z "I installed a fresh copy of WordPress 2.7 and was importing content from a Blogger site. Before beginning to import, the page claimed that Blogger account information was saved in the database and that I could restart the process. Even after pressing the ""Clear account information"" button, the message still appeared." covert215
Next Release 8857 Make WP MySQL strict mode compliant Database 6.4.2 lowest normal enhancement reopened 2009-01-14T11:25:26Z 2024-01-22T08:45:43Z "Incorrect Mysql scheme during WordPress installation on DBMS with strict date/datetime format settings will result in errors and will be unable to finish succesfully. Existing default date and datetime values are '0000-00-00' and '0000-00-00 00:00:00' which are not supported any more. Please see official Mysql dev documentation for more information:
{{{
The DATE type is used when you need only a date value, without a time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.
}}}
http://dev.mysql.com/doc/refman/5.0/en/datetime.html
" ghostks
Future Releases 8905 Category pagination broken with certain permalink structures Permalinks 2.7 normal normal Future Release defect (bug) assigned 2009-01-21T07:26:31Z 2021-01-27T10:17:49Z "If one uses a permalink structure with %category% followed by %postname%, accessing pagination can cause a 404, as WordPress attempts to look for a post called ""page"".
As per http://barefootdevelopment.blogspot.com/2007/11/fix-for-wordpress-paging-problem.html
Presumably can occur with other permalink structures too." rmccue
Future Releases 9117 Spam queue doesn't distinguish between filter sources Comments 2.7 normal normal enhancement new 2009-02-12T22:50:51Z 2019-06-04T19:21:30Z "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
Future Releases 9296 Settings API & Permalink Settings Page Bug jfarthing84 Permalinks 2.7.1 normal major Future Release defect (bug) reopened 2009-03-07T05:33:55Z 2020-09-25T23:12:01Z 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
Future Releases 9510 Multiple feed fixes and enhancements Feeds 2.7.1 normal major enhancement new dev-feedback 2009-04-11T09:36:47Z 2019-06-04T19:42:32Z 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
Future Releases 9824 make better use of stubs when verbose rules should apply Rewrite Rules normal normal task (blessed) reopened needs-unit-tests 2009-05-15T01:03:56Z 2019-06-04T21:05:28Z "Related to:
http://core.trac.wordpress.org/ticket/6603#comment:27
Problem fixed is:
> posts show up as www.apexprd.org/page/2 and not /news-and-events/page/2 as it should.
with permalinks set to /something/$postname%/
we arguably don't necessarily need verbose rules here, since there is a stub." Denis-de-Bernardy
Future Releases 9825 Enforce permalink history, outright Permalinks 2.8 normal normal enhancement assigned needs-unit-tests 2009-05-15T01:06:37Z 2019-06-04T20:40:43Z "currently, we enforce old slugs and www pref (not even sure that works, since I ended up fixing it in a plugin). canonical doesn't work for pages, or hardly.
we should enforce permalink history, outright. store it in a a db field, and query against it to optimize url2post()." Denis-de-Bernardy
Future Releases 9968 dynamically adding/removing filters breaks plugins Plugins low normal Awaiting Review defect (bug) reopened needs-unit-tests 2009-05-28T23:43:11Z 2020-03-02T15:43:22Z "noticed this while doing something similar to this:
{{{
add_action('foo', 'bar1', 10);
add_action('foo', 'bar2', 20);
function bar1() {
remove_filter('foo', 'bar1', 10);
}
}}}
in the above, bar2() doesn't get called. it is because of the usage of next()/current() to loop through filters.
attached patch uses a foreach loop instead, to make it work." Denis-de-Bernardy
Future Releases 10033 wpautop problems with html comments and object tags Formatting 2.8 normal minor defect (bug) new needs-unit-tests 2009-06-04T12:06:35Z 2019-06-04T19:42:36Z "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:
{{{
}}}
Gets turned into the following mess:
{{{
}}}
So, two/three issues:
- wpautop should also ignore double object tags, and html comments
- wptexturize should ignore html comments" Denis-de-Bernardy
Future Releases 10269 wysiwyg bug with shortcodes miqrogroove Formatting 2.8 low normal defect (bug) assigned 2009-06-25T11:29:42Z 2019-06-04T20:01:14Z "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
Future Releases 10275 Filter logic has been put into the template loader while it not belongs there. Themes 2.8 normal normal defect (bug) reopened dev-feedback 2009-06-25T20:22:34Z 2019-06-04T21:05:33Z "Some time ago, filter logic has been introduced in the template-loader. Looks like a fix for the inability to handle attachments propperly (WP misses more and more a strict request parsing so that newer features tend to introduce more and more bugs).
The code has not been removed yet. It should be removed there or put into a more appropriate location.
The code in question is:
{{{
remove_filter('the_content', 'prepend_attachment');
}}}
in /wp-inclueds/template-loader.php around line 30." hakre
Future Releases 10384 Make IIS Permalink support enabled based on capability not on version number westi Permalinks 2.8 normal normal enhancement new 2009-07-11T08:37:44Z 2019-06-04T20:40:48Z "At the moment we enable the IIS permalink support based on checks for IIS7 and then some capabilities.
We should remove the version checking and work solely on capabilities so that we don't have to revisit when IIS8 is released." westi
Future Releases 10390 attachments should store the WP uploads path that was configured when they were uploaded Media 2.8.1 normal normal enhancement reopened dev-feedback 2009-07-12T10:34:51Z 2019-06-04T20:01:48Z "When you upload an image, currently, the uploads path (defaults to wp-content/uploads) is not stored.
If you change this later on to something else, previously inserted galleries no longer work, among multitudes of other problems." Denis-de-Bernardy
Future Releases 10432 Dynamic classes for current blog post item, current term item Themes 2.8.1 normal normal enhancement new 2009-07-17T14:35:33Z 2019-06-04T21:05:34Z "wp_list_pages() produces a class .current_page_item for the page you are currently viewing. This makes it possible to style the current page item different from the other page items in the list.
But there are several other places the same functionality would come in handy: There should be equivalent ways to style the current blog post item in the Recent Posts widget, the current category in wp_list_categories(), and the current tag in wp_tag_cloud('format=list')." dnusim
Future Releases 10631 "wp-admin/users.php does not show pages under ""posts"" column" Users 2.8.4 normal normal Awaiting Review defect (bug) reopened dev-feedback 2009-08-16T18:51:20Z 2022-05-13T22:07:25Z "For some reason, the SQL query in '''wp-includes/user.php''' that gets the count of a user's posts excludes pages, so '''/wp-admin/users.php''' will not show an accurate picture of a user's contributions. This makes no sense at all: 1. posts and pages are first-class content types in WordPress and 2. they are both stored in the same table.
Proposed solution: remove
{{{
AND post_type = 'post'
}}}
from '''function get_usernumposts''' in '''wp-includes/user.php'''.
This defect could result in incorrect interpretation of user activity, so marked as major severity." novasource
Future Releases 10660 Time zone suggester based on nascent WordPress.org API call rmccue Date/Time 2.8.4 normal normal Future Release feature request assigned dev-feedback 2009-08-20T05:59:42Z 2019-09-02T06:45:02Z "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
Future Releases 10690 WordPress does not support non-ascii characters in the domain name markjaquith Canonical 2.8.4 normal normal defect (bug) reopened needs-unit-tests 2009-08-26T18:26:13Z 2019-06-04T19:21:34Z 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
Future Releases 10762 Bulk editing creates invalid URIs Quick/Bulk Edit 2.8.4 normal normal Future Release defect (bug) assigned 2009-09-09T16:53:30Z 2018-12-16T02:57:02Z 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
Future Releases 10883 db-error.php not used for all DB failures Database 2.8.4 normal normal enhancement assigned 2009-10-01T02:45:28Z 2023-12-07T13:19:54Z "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
Future Releases 10955 Replace ThickBox External Libraries 2.9 normal normal Future Release enhancement reopened dev-feedback 2009-10-14T14:37:42Z 2023-11-10T16:01:17Z "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
Future Releases 10975 comment form nonce Comments normal normal Future Release enhancement new 2009-10-19T06:49:16Z 2020-02-27T17:33:32Z "This adds a nonce to public comment forms, via the comment_form action.
" tellyworth
Future Releases 11049 Page Preview does not autosave page template nacin* Autosave 2.8.4 normal normal defect (bug) accepted dev-feedback 2009-10-30T21:19:34Z 2019-06-04T19:21:39Z 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
Future Releases 11160 Inconsistancies in Naming and Using Sidebar Names and IDs. azaozz Widgets 2.9 normal normal defect (bug) new needs-unit-tests 2009-11-17T12:58:55Z 2019-06-05T06:37:18Z "register_sidebar() allows more sidebar names and IDs to be registered than dynamic_sidebar() recognizes as valid names and IDs.
For example, register_sidebar() allows me to name a side bar ""1"" with a id of ""first"". I don't know why anyone would choose those values, but register_sidebar() allows it [1].
{{{ register_sidebar( array('name' => 1, id => 'first') ); }}}
dynamic_sidebar() will not be able to find the sidebar given its name (1).
{{{
if ( is_int($index) ) {
$index = ""sidebar-$index""; /// 1 becomes 'sidebar-1'
...
}}}
The main problem is that dynamic_sidebar() is trying to process both IDs and names through the same variable ($index) while register_sidebar() separates the two with an array ( array('name' => 'Top', 'id' => 'sidebar-1' ).
According to the in-line docs for dynamic_sidebar():
It is confusing for the $index parameter, but just know that it should just work. When you register the sidebar in the theme, you will use the same name for this function or ""Pay no heed to the man behind the curtain."" Just accept it as an oddity of WordPress sidebar register and display.
It does ""just work"" if you never use your own sidebar IDs.
I started looking at this because I wanted to use is_active_sidebar() which tests to see if a dynamic_sidebar() has anything in it. There is no get_dynamic_sidebar(). dynamic_sidebar() sends everything to the browser or returns false.
{{{
register_sidebar( array('name' => 'Top') ); // id defaults to ""sidebar-1""
...
if ( is_active_sidebar('Top') )
dynamic_sidebar('Top');
}}}
Which fails because is_active_sidebar() just completely skips over searching for an id to go with a name. To get it to work you need to know when it was registered. Not something theme authors and designers are going to follow easily. There's a ticket to fix this: [http://core.trac.wordpress.org/ticket/10440 #10440]
{{{
if ( is_active_sidebar(1) )
dynamic_sidebar('Top');
}}}
Like dynamic_sidebar(), is_active_sidebar() converts 1 to ""sidebar-1"". Unlike dynamic_sidebar() it assumes everything is entered as an id.
unregister_sidebar() assumes its parameter (incorrectly named $name, not $id) is an id. But it wants a literal id, like ""sidebar-1"". unregister_sidebar(1) unregisters a sidebar with an id of 1, while dynamic_sidebar(1) tries to display a sidebar with an id of ""sidebar-1"".
=== Widgets (Admin Page) ===
The dynamic_sidebar() function is used by the Widgets management page. So, it is possible to create a sidebar with register_sidebar() that dynamic_sidebar() cannot find. You can populate it with drag and drop [2] and not have it appear on the web site.
== After Patch ==
If committed, this patch would remove the need for tickets [http://core.trac.wordpress.org/ticket/10440 #10440] and [http://core.trac.wordpress.org/ticket/10956 #10956]. It changes the current argument behavior of unregister_sidebar(), but doesn't break backward compatibility. It allows is_active_sidebar(), unregister_sidebar() and dynamic_sidebar() all point to the same sidebar.
=== Before ===
These all refer to the same sidebar:
{{{
is_active_sidebar(1);
unregister_sidebar('sidebar-1');
dynamic_sidebar('Sidebar Top');
}}}
In an admittedly contrived case, dynamic_sidebar() would silently fail to allow this sidebar to show:
{{{ register_sidebar( array('name'=>'Sidebar Top', 'id' => 1) ); }}}
=== After ===
These all refer to the same sidebar (the first two would have broken before the patch):
{{{
is_active_sidebar('Sidebar Top');
unregister_sidebar('Sidebar Top');
dynamic_sidebar('Sidebar Top');
}}}
After the patch this shows fine:
{{{ register_sidebar( array('name'=>'Sidebar Top', 'id' => 1) ); }}}
After the patch it is possible to force an argument to be only a name or only an id:
{{{
is_active_sidebar(array( 'name' => 'Sidebar Top' ));
unregister_sidebar(array( 'name' => 'Sidebar Top' ));
dynamic_sidebar(array( 'id' => 1 ));
}}}
=== Notes ===
[1] register_sidebar() allows the user to override the default setting of: 'id' => ""sidebar-$i"",
[2] When you refresh the Widgets management page the widgets will disappear from the sidebar. They are still attached to a sidebar, but dynamic_sidebar() cannot see the sidebar." CharlesClarkson
Future Releases 11297 Don't email the admin when they create a user from the backend Users 2.9 low minor enhancement new dev-feedback 2009-12-01T12:05:31Z 2019-06-05T06:44:57Z "I just created the user myself. I already know I did it. I don't need to be told again.
Emails should only be sent to the admin when a user registers themselves (if that is enabled). They shouldn't be sent when the admin manually creates a new user." caesarsgrunt
Future Releases 11311 kses converts ampersands to & in post titles, post content, and more Posts, Post Types 2.9 normal normal Future Release defect (bug) new 2009-12-03T01:49:32Z 2022-08-03T15:41:48Z "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 `&` due to `wp_filter_kses()`. It gets saved in the database this way too.
It's confusing to the user." Viper007Bond
Future Releases 11381 display_page_row() generates boat loads of needless queries pbearne Posts, Post Types normal normal defect (bug) assigned 2009-12-10T12:41:45Z 2024-02-22T22:43:04Z "on sites with many static pages that are spread across multiple parents, display_page_row() triggers multitudes of calls to the db.
specifically, it's repeatedly calling get_pending_comments_num(). it's also calling get_editable_user_ids() and wp_dropdown_users(), both of which do not seem to cache their results in case they're used several times on the same page." Denis-de-Bernardy
Future Releases 11398 new sort method for query_posts (order by last comment date) Query 2.9 normal normal enhancement assigned 2009-12-11T15:44:42Z 2019-06-04T20:40:57Z "I think we need sorting by latest post comment ability for query_posts. ""Recent comments"" plugins does this but we need this sorting in the core.
BBPress is planned as a WP plugin according latest chat logs posted by Matt. We gonna have to need this anyway." erden.ozkan
Future Releases 11465 custom field duplicated westi* Editor 2.8.4 normal minor Future Release defect (bug) accepted 2009-12-16T21:09:23Z 2022-06-08T22:40:11Z "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
Future Releases 11472 Should QuickEdit remove posts from lists as needed? Quick/Bulk Edit 2.9 low minor Future Release enhancement new 2009-12-17T10:29:38Z 2019-12-09T17:54:37Z "Create a draft post. Visit Posts / Edit, and quickedit the draft. Set its status to Published and save. It remains around, with the published status, instead of being removed from the list.
Reporting this just in case, as it might be a UI feature rather than a bug.
" Denis-de-Bernardy
Future Releases 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 2018-11-16T18:43:03Z "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
Future Releases 11734 trackback_rdf() for IDN (xn--) Domains produces invalid HTML Comments 3.1 normal normal defect (bug) new has-patch 2010-01-06T01:10:55Z 2019-06-04T19:21:42Z "Hello
The trackback_rdf() function from wp-includes/comment-template.php wraps the ""..."" 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:
{{{
}}}
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
Future Releases 11740 Sorting tags and towns does not work well for utf-8 nbachiyski I18N 2.9 normal normal Awaiting Review defect (bug) new dev-feedback 2010-01-06T12:42:24Z 2024-02-28T16:41:53Z "There are problems with sorting special Czech characters:
1) Options - General - Timezone selection.
Evropa (Europe)
First item should be Amsterdam, but instead of it there is ""Řím"" (Rome in Czech). And this is not right, character Ř should be between R and S.
2) Editing posts - Select from most used tags.
You can create tags ""Rome"", ""Amsterdam"" and ""Řím"".
Tags are also sorted in a bad way, first is ""Řím"".
It is very problematic for Czech users when there are many tags, because it does not help them..." pavelevap
Future Releases 11800 doubled execution of cron jobs westi Cron API 2.9.1 normal normal Future Release defect (bug) new dev-feedback 2010-01-07T11:17:53Z 2021-04-04T10:34:28Z "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
Future Releases 11856 URL for 1st comments page is not canonical markjaquith Canonical 3.0 normal normal Future Release defect (bug) new dev-feedback 2010-01-10T19:17:42Z 2023-10-19T20:04:59Z "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
Future Releases 11869 Multisite upgrade notice at wpmu-upgrade-site.php isn't steadily visible. Upgrade/Install 3.0 normal minor Future Release enhancement new 2010-01-11T22:03:14Z 2017-04-23T20:39:16Z "When upgrading (Site Admin > Upgrade) wordcamp.org, it started upgrading each site and flashing a list of 5 sites at a time that had been upgraded (too quickly to really be read beyond the first item in each list). When it flashed through all the screens, it showed ""All done!"" and nothing else.
Preferred UX would be to list the sites in order as they are upgraded but in a single persistent list rather than in flashing batches of five, and to show the all-done message on the same screen, with the list of everything that has been upgraded. It would be good to have the text appear at bottom of list (in sequence) but to also drop in an alert message at top of screen. " jane
Future Releases 11877 Resized Images lose their EXIF data Media 3.0 normal normal enhancement reopened 2010-01-12T10:47:55Z 2019-06-04T20:01:51Z The thumbnail, and medium re-sized images do not keep EXIF data of the original image. thee17
Future Releases 12208 Add Quick Edit To Media Library list view Quick/Bulk Edit normal normal Future Release feature request new dev-feedback 2010-02-12T01:45:12Z 2023-02-07T23:15:38Z I am requesting that a quick edit link be added to the media in the media library like what is on the posts page. I would like to quickly be able to edit titles, alts, and captions at least. queenofdiy
Future Releases 12286 bug and fix when importing from Movable Type Import normal normal defect (bug) new 2010-02-19T13:26:59Z 2019-06-04T20:01:57Z "I'm running WP Mu 2.9.1.1 and had a problem importing a Movable Type blog to WP and found a fix (sort of).
Symptom: When importing a blog from Movable Type to a blog in WP, you are asked to assign (or map) WP authors to MT authors. But, it turns out that the first author on the list is assigned to all posts. The other authors selected are neglected. Therefore, all of the posts end up belonging to one author.
Fix: I found the problem in wp-admin/import/mt.php. Specifically, ""$mtnames"" is not properly populated with authors from MT. So, I changed the code in function get_authors_from_post() as follows:
function get_authors_from_post() {
$formnames = array ();
$selectnames = array ();
$this->mtnames = $this->get_mt_authors();
I just added the last line shown above and then finally the import properly assings authors as intended.
(There might be a better place to put the last line, however.)
" leyburn888
Future Releases 12363 Comment permalink wrong when only listing one comment type wonderboymusic Comments 3.0 normal normal defect (bug) assigned dev-feedback 2010-02-24T14:31:51Z 2019-06-04T19:21:46Z "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
Future Releases 12477 Search with special characters and similar terms nbachiyski I18N normal normal feature request new dev-feedback 2010-03-02T17:42:46Z 2019-06-04T20:01:58Z "I did:Tried searching for terms Metis and Métis
I saw:Those two searches turned up different sets of results.
I expected:The same set of search results, or at least everything when
I searched for Metis.
Can search be smarter when special characters are involved?" mrroundhill
Future Releases 12567 make post_submit_meta_box more generic Posts, Post Types normal normal enhancement new 2010-03-10T00:46:20Z 2019-06-04T20:41:05Z "Currently there isn't a way to modify the meta boxes which set the post status. The function post_submit_meta_box in wp-admin/includes/meta-boxes.php is a closed function with post statuses hard coded. A new post status registered using register_post_status is available to the query object and plugins but cannot be added to the post status select box in the publish meta box.
A lot of the post_submit_meta_box is hardcoded to the default post status types.
Consider the use case where you want posts to only be visible to logged in users. A custom post status selectable by the user in add/edit post could be used which is then added or excluded in the query (filtered by posts_where) depending on whether the user is logged in or not. This way core can handle the non-visible posts the way private or future posts are handled. " themattharris
Future Releases 12578 import from movable type doesn't import tags or basename Import 3.0 normal normal enhancement assigned 2010-03-11T00:58:46Z 2019-06-04T20:02:00Z The current movable type import script doesn't import tags from movable type and it doesn't import the basename (movable type's version of the post_name, which is necessary for a seemless transition). Adding support for importing these two important bits is not terribly difficult and I'm working on improving the import script to aid in my own upcoming migration. I'll attach a patch against the trunk. stevecrozz
Future Releases 12671 Installer page doesn't check if MySQL tables were created successfully Upgrade/Install 2.9.2 normal normal Future Release enhancement assigned 2010-03-22T17:47:33Z 2018-12-15T22:52:14Z "When running the web-based setup script - My Mysql user didn't have create permissions so no tables were created but the message (underneath all the MySQL errors) said setup was successful.
I think it would be worth doing a check for no MySQL errors before proclaiming the installation a success." thedotproduct
Future Releases 12720 Delete user and hook confusion when deleting users in Multisite Users 3.0 normal normal defect (bug) new 2010-03-26T12:42:59Z 2019-06-05T06:37:23Z "Currently:
The hook ''wpmu_delete_user'' fires when deleting user in Super Admin->Users.
The hook ''remove_user_from_blog'' when deleting user under site Users->Authors & Users.
In standard WP:
The hook ''delete_user'' is called when deleting users it should be the same in MultiSite when deleting from Super Admin->Users.
Or add new hooks and deprecate previous.
''delete_user_from_network'' for when deleting a user totally.
''delete_user_from_site'' for when deleting a user from a specific site. This is hook also then fires in non-MultiSite mode since that then corresponds to one site." andreasnrb
Future Releases 12839 Themes should be sandboxed on activation to prevent fatal errors Themes 3.0 normal normal Future Release enhancement new 2010-04-04T06:16:25Z 2021-01-02T20:23:28Z "I've just made a child theme of TwentyTen by copying the folder over, renaming, and adding a Template: header to the style.css file.
Upon activation, I've been thrown to a page with a fatal error due to redefining a twentyten function.
Ideally, theme activations should be passed through a sandbox style activation the same as plugins." dd32
Future Releases 12934 Allow a menu to be added as a menuitem to be a submenu. Menus 3.0 normal normal enhancement assigned 2010-04-08T21:55:32Z 2019-06-04T20:02:03Z "Add capability to add a menu as a menuitem to be a submenu thus allowing multiple menu items to share the same submenus.
See reference in April 8 devchat:
https://irclogs.wordpress.org/chanlog.php?channel=wordpress-dev&day=2010-04-08&sort=asc#m106225" mikeschinkel
Future Releases 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 2022-06-28T05:18:27Z "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
Future Releases 13169 Return Dynamic Sidebars with get_dynamic_sidebar Widgets normal normal Awaiting Review enhancement reopened 2010-04-28T18:07:28Z 2019-05-22T07:19:20Z "Currently there is no available function to return the contents of a dynamic sidebar. The following code enables developers to return and assign the contents of a dynamic sidebar to a variable within their code.
{{{
function get_dynamic_sidebar($index = 1)
{
$sidebar_contents = """";
ob_start();
dynamic_sidebar($index);
$sidebar_contents = ob_get_contents();
ob_end_clean();
return $sidebar_contents;
}
}}}
" w3prodigy
Future Releases 13247 Drag/drop for add menu item boxes koopersmith Menus 3.0 normal normal enhancement new 2010-05-04T07:12:03Z 2019-06-04T20:02:06Z Because checkboxes are no fun. This first patch covers dragging from view all and most used. Search still has bugs. koopersmith
Future Releases 13273 "Allow ""'non-clickable"" menu items" Menus 3.0 normal normal Future Release enhancement new 2010-05-06T10:58:50Z 2023-11-10T16:19:53Z "In the new menu generator I'm missing the option to create ""non-clickable"" menu items.
What I'm after is that I want to create for example a main menu item with the title ""Links"" which is non-clickable (no url attached to it) and basically only acts as an umbrella item for the actual links I want to locate as subitems of the item ""Links"".
- Home
- Something else
- Links (this one should be non-clickable)
- external link 1
- external link 2
- etc
I think that an optional tickbox in the add link section will do the trick. Basically, all it has to do is to ""disable"" the check whether or not a valid URL format has been submitted and, of course, it has to trigger some modified html output.
Hope you guys can add this in the 3.0 release because this would basically complete the menu generator :)
Keep up the good work and I'm really looking forward to the 3.0 release!" stgoos
Future Releases 13372 Separate Image sizes for different post types Media 4.6.1 normal normal Awaiting Review enhancement reopened close 2010-05-13T07:59:07Z 2020-04-18T04:45:23Z Would be nice, especially moving forward with custom post types to have the ability to set different image sizes using an additional parameter of `add_image_size()` for different post types: Page, Post, and Custom. brandondove
Future Releases 13473 comment_status should be set to default_comment_status when commentstatusdiv is removed westi Comments normal normal defect (bug) reopened 2010-05-20T23:36:24Z 2019-06-04T19:21:51Z "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
Future Releases 13554 WordPress MU canonical link redirect failure markjaquith Bootstrap/Load 2.9.2 normal normal defect (bug) reopened 2010-05-26T16:30:37Z 2019-11-19T17:04:05Z "This problem manifests itself in Wordpress '''MU''' 2.9.2, but '''not''' in Wordpress 2.9.2.
In the MU install where blogs are subdirectories, canonical redirects work correctly for the subdirectory blogs, but not for pages on the root blog.
For example, [http://silverwarethief.com/essays/] is a sub-blog in the wordpress MU install. If you alter that link to [http://www.silverwarethief.com/essays/] wordpress MU will correctly redirect the browser to the canonical url.
However, this does not work with pages on the root blog. [http://silverwarethief.com/about/] is a page on the root blog. If you go to that link, you will correctly find yourself at the ""About"" page. If you then alter the link to [http://www.silverwarethief.com/about/] you will be redirected to the main page of the root blog, not the ""About"" page.
I have seen this behavior manifested on more than one MU install.
" rundi
Future Releases 13691 Make get_template_part() accept multiple template names Themes normal normal enhancement new 2010-06-02T03:19:34Z 2019-06-04T21:05:47Z "This enhancement allows get_template_part() allows to pass several template names, to work in the same way as: locate_template()
so, you could call,
get_template_part( 'loop', array('category', 'taxonomy', 'archive') );
$names are passed by order of priority." wjm
Future Releases 13779 Preview doesn’t work - WP installed in its own directory SergeyBiryukov General 2.9.2 normal normal Future Release defect (bug) reviewing dev-feedback 2010-06-08T01:32:04Z 2022-07-13T17:21:56Z "1. Wordpress is installed on /wp/ subdirectory.
2. Then it was set up to be visible from the site root according to http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory
3. Site works fine
4. [BUG] Preview for posts & pages isn’t working.
When I press preview it goes to url like:
http://example.com/?preview=true&preview_id=235&preview_nonce=aa28f04
and says ""You do not have permission to preview drafts."".
5. If I type subdirectory name “/wp/” in that url by hands, it shows correct preview: http://example.com/wp/?preview=true&preview_id=235&preview_nonce=aa28f04
6. The situation is getting worse if i'm using permalinks. In that case - there is nothing i can do to see preview.
ps: I’ve tested that on clean install. " antares19
Future Releases 13816 There should be built-in index pages for taxonomies Taxonomy normal normal Future Release feature request new dev-feedback 2010-06-10T12:20:29Z 2023-01-31T20:36:11Z "By default, if you enable 'pretty' permalinks, you get URLs like this for categories and tags: /category/slug, /tag/slug. The same pattern is used when adding custom taxonomy types.
These URLs often suggest to people that it should be possible to go 'up' one level, and access index pages at /category and /tag which list all of the available categories or tags (or maybe just the top x most popular ones for tags).
I'd suggest that we add a new template type of is_archive_index() which uses, in order of preference, taxononmyname-index.php (eg category-index.php), archive-index.php.
Within these templates, the 'loop' should return taxonomy items rather than posts.
This is all possible already using custom templates and get_terms(), but it'd be handy if it was built-in.
" frankieroberto
Future Releases 13926 Adding 'page-attributes' to a custom post type slows down edit screen in the admin Posts, Post Types 3.0 normal normal defect (bug) new 2010-06-16T20:01:17Z 2019-06-04T20:41:18Z "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
Future Releases 14050 shortcode_unautop() should also remove the added after shortcodes aaroncampbell Formatting 3.0 normal normal defect (bug) assigned 2010-06-22T18:15:27Z 2019-06-04T19:43:02Z "Currently `wpautop()` wraps a shortcode in `
` tags as well as adding a ` ` tag after the shortcode. We then use `shortcode_unautop()` to remove the `
` tags, but the ` ` 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 ` `
I'm not a regex expert so someone should probably double check my patch, but it seems to work for me." aaroncampbell
Future Releases 14093 Malformed category hidden from edit-tags, but shows in meta box Taxonomy low normal defect (bug) new 2010-06-25T19:11:49Z 2019-06-04T21:26:33Z "Came from a report in IRC by xomp.
In the following example, category 1's parent is category 2, and vice versa.
{{{
mysql> select term_taxonomy_id, term_id, taxonomy, parent from wp_term_taxonomy;
+------------------+---------+---------------+--------+
| term_taxonomy_id | term_id | taxonomy | parent |
+------------------+---------+---------------+--------+
| 1 | 1 | category | 2 |
| 2 | 2 | category | 1 |
| 3 | 3 | category | 0 |
| 4 | 4 | category | 1 |
+------------------+---------+---------------+--------+
4 rows in set (0.00 sec)
mysql> select term_id, name from wp_terms;
+---------+-----------------+
| term_id | name |
+---------+-----------------+
| 1 | Category 1 |
| 2 | Category 2 |
| 3 | Category 3 |
| 4 | Category 4 |
+---------+-----------------+
4 rows in set (0.00 sec)
}}}
On edit-tags, you'll see only Category 3.
In the hierarchical meta box, you'll see:
{{{
Category 3
Category 1
- Category 2
- Category 4
}}}
If we decide to show corrupted data, we should be consistent. At the very least, edit-tags should reveal more than the meta box, not the other way around." nacin
Future Releases 14142 Custom Walker class for navigation menus Menus 3.0 normal normal Future Release defect (bug) reopened 2010-06-29T14:16:18Z 2019-04-19T18:31:41Z "I have tried to extend the Walker_Nav_Menu class, I just needed to overwrite the start_el method. So i added ""walker""=>""My_Walker"" to wp_nav_menu, I've got an error message, that the method ""walk"" could not be accessed statically. After a short look at the code in ""nav-menu-template"", I realized that in the method ""walk_nav_menu_tree"" the object initializer ""new"" is missing.
My solution can be found in the attached file.
As you can see, I've just added a ""new"" in front of $r->walker
And it works" dennis.winter
Future Releases 14172 Implement $scheme in site info in ms-sites edit site Networks and Sites 3.0 normal normal enhancement assigned dev-feedback 2010-07-01T22:45:33Z 2021-01-05T16:40:51Z "In WordPress 3.0 with Network enabled, if you were to click:
Super Admin -> Sites -> Edit (next to any site) and then change any of the Site Options i.e. wp_2_options the changes don't save.
We're running a secure environment and need Siteurl to be HTTPS instead of HTTP. Changing all the parameters to https and clicking Update doesn't save the changes." firmdot
Future Releases 14201 Canonical redirect kicks in in case of category/tag base containing other chars then a-z, 0-9, _ and - Canonical normal normal defect (bug) new close 2010-07-05T09:03:39Z 2019-06-04T19:21:57Z "'''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 {{{//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: {{{/баба//}}}.
The contents of {{{$_SERVER['REQUEST_URI']}}} are always URL-encoded, so the requested URI is: {{{/%D0%B1%D0%B0%D0%B1%D0%B0//}}}.
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
Future Releases 14215 MultiSite: Add new > different username from blog title Networks and Sites 3.0 normal normal Future Release feature request new 2010-07-06T18:09:37Z 2018-05-07T16:58:46Z "I would like to request that the current system for adding a new blog site be expanded so that as admins, we can specify a different username that's unrelated to the blog title. That is, in '''Site Admin -> Add New''', at the bottom of the page, add a new field specifically for the username. For that matter, it would be useful to also have a field to be able to specify the password, and perhaps a little checkbox that allows you to optionally prevent an email from being sent. These features are really useful when you're manually adding sites for employees, students, and the such.
I had provided a fix for wpmu 2.8.4 at one point (with a better explanation and details), you can see the thread here: http://mu.wordpress.org/forums/topic/12945
An example of the final result: http://img696.imageshack.us/img696/2551/addblogwordpress.png" Person
Future Releases 14331 Tweaks to menu setup page Menus 3.0 normal normal Future Release enhancement new 2010-07-16T21:30:45Z 2020-05-29T19:39:57Z "It would be great if you could select a parent Page and ""Automatically add children"" to the menu.
In a similar fashion, it would be great if the Menu could then automatically add any new children Pages created under that Parent." mrmist
Future Releases 14375 Post pagination should have a show all option Posts, Post Types 3.0 normal normal Future Release feature request reopened 2010-07-21T07:03:29Z 2017-06-12T05:22:35Z When people use the nextpage html comment tag to paginate posts we should also have a show all link displayed to make it easier for people to read the whole content without pagination. westi
Future Releases 14393 Maintenance mode overkill. Please refine usage of it Upgrade/Install normal normal Future Release enhancement new 2010-07-22T22:12:14Z 2017-03-18T14:52:11Z "Though many tickets have been posted about the Maintenance Mode not resolving, I think that the problem is on a different level.
It is unacceptable that even a failed upgrade of an inactive theme can break a complete Site or even Network. Case in point: I just followed the upgrade alert for an inactive theme, hosted on the WordPRess theme repository.
(Apparently it had an error (Incompatible Archive. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature.) But the point is, this should not have put the entire network in maintenance mode for 10 minutes.
Maybe a check can be done for plugins, themes etc: if they are active, then maintenance mode can be used (though I am definitely not a fan of it anyway)." bike
Future Releases 14401 Unable to locate WordPress Content directory (wp-content). Filesystem API 3.0 normal normal defect (bug) reopened 2010-07-23T15:56:19Z 2019-06-04T19:43:05Z "Hi, I encounter this message on one server during plugin install: ""Unable to locate WordPress Content directory (wp-content).""
PHP Version 5.2.0-8+etch1
Another info from Core Control plugin:
Direct Not Available
SSH2 Not Available
PHP FTP Extension Available
PHP FTP Sockets Available
ABSPATH: /home/www/domain.eu/subdomains/www/
WP_CONTENT_DIR /home/www/domain.eu/subdomains/www/wp-content
WP_PLUGIN_DIR /home/www/domain.eu/subdomains/www/wp-content/plugins
DOCUMENT_ROOT (from phpinfo) /home/www/domain.eu/subdomains/www
I tried some hacks in wp-config.php, but I was not successfull.
When I tried ftpsockets, following error appears:
Warning: socket_last_error() expects parameter 1 to be resource, null given in /home/www/domain.eu/subdomains/www/wp-admin/includes/class-ftp-sockets.php on line 59
When I tried direct, following error appears:
Downloading install package from http://downloads.wordpress.org/plugin/wp-memory-usage.zip…
Unpacking the package
Could not create directory. /home/www/domain.eu/subdomains/www/wp-content/upgrade/wp-memory-usage.tmp" pavelevap
Future Releases 14432 Role-based help text garyc40 Help/About 3.0 normal normal Future Release enhancement assigned 2010-07-27T18:53:00Z 2023-08-24T19:54:11Z The text in the Help tab is based on the screen seen by an admin. We should make it so the role of the logged in user determines the text. jane
Future Releases 14493 do_enclose() can ping the same URL many times, can't filter URLs to ping nacin* Feeds 3.0.1 normal normal enhancement accepted 2010-07-31T18:52:01Z 2019-06-04T19:43:08Z "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
Future Releases 14502 Enable /post-type/taxonomy/term/ permalinks Rewrite Rules normal normal Future Release enhancement reopened 2010-08-01T22:57:29Z 2019-06-04T13:51:29Z After we get /post-type/ handled (see #13818), it would be nice if we also had /post-type/taxonomy/term/ mapped to ?post_type=post-type&taxonomy=term scribu
Next Release 14513 Time for a wp_post_relationships table? Posts, Post Types 3.0.1 normal normal feature request reopened 2010-08-03T00:10:30Z 2023-05-30T15:04:16Z "Now that we have custom post types the obvious next step for people using them is to start relating post types using parent-child and/or many-to-many relationships. I've implemented a taxonomy-mirrored-posts plugin but am starting to discover [http://lists.automattic.com/pipermail/wp-hackers/2010-July/033510.html many of the problems that @prettyboymp has pointed out on wp-hackers] and think it might be time we consider adding a new table to allow us to relate post and to allow us to build functionality around this table such as related post pickers, etc.
I'd like to offer a [http://en.wikipedia.org/wiki/Straw_man_proposal straw man proposal] to start discussions of a potential `wp_post_relationships` table added to WordPress 3.1 with three fields: `parent_id`, `post_id` and `term_taxonomy_id.` This allows us to relate any two post records and optionally associate at taxonomy+term to classify the relationship (here's the SQL to create the table):
{{{
CREATE TABLE `wp_post_relationships` (
`parent_id` bigint(20) unsigned NOT NULL,
`post_id` bigint(20) unsigned NOT NULL,
`term_taxonomy_id` bigint(20) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`parent_id`,`post_id`,`term_taxonomy_id`),
KEY `term_taxonomy_id` (`term_taxonomy_id`),
KEY `post_id` (`post_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
}}}
Looking forward to your feedback." mikeschinkel
Future Releases 14558 Separate Database Table Support for Custom Post Types Posts, Post Types normal normal Awaiting Review enhancement reopened dev-feedback 2010-08-07T06:55:07Z 2024-03-04T09:51:27Z "While working on custom post types, I felt need for this enhancements.
This can be achieved by adding an extra argument to the register_post_type function like below...
{{{
register_post_type( 'acme_product',
array(
'labels' => array(
'name' => __( 'Products' ),
'singular_name' => __( 'Product' )
),
'public' => true,
/* Database separation */
'db_tables' => array(
'prefix' => '', //by default, value of $table_prefix will be used. If user sets this value to something, it will be used as prefix for both of following tables
'base_prefix' => '' , //this will control it tables are to be kept sitewide or per blog
'posts_name' => 'acme',
'postmeta_name' => 'acmemeta',
),
);
}}}
This small enhancement (not from coding perspective) will help more plugins authors go for custom post type.
Reasons are - first they will get option to have separate data storage.
Second - if some other badly coded plugin manipulates wp_posts table in some wrong way, it won't have sideeffect on third-party data.
Third - Plugin authors will get more space to experiment as at any time they will be dealing with their own plugin's data.
Of course, one of the goal of this nice feature must be to abstract database layer, but as a developer I feel it would be better if I can have some control over database without loosing power of this new (custom post type) feature." rahul286
Future Releases 14682 Privacy leakage: gravatars leak identity information Privacy 3.0 normal normal Awaiting Review defect (bug) reopened 2010-08-24T14:54:42Z 2020-07-01T19:18:00Z "If a commenter on a blog leaves a comment without having a log in to the site, and the ""Comment author must fill out name and e-mail"" preference is enabled for the blog, the author must provide an email address. The form for this says ""Mail (will not be published) (required)""
It's true that the email address itself is not published, but if the site has gravatars enabled, the persistent identity of the commenter is nonetheless revealed. Together with inspection of other posts where the commenter has chosen to reveal their identity, on the same blog or other blogs, or a brute-force approach taking a known email address to find postings attributed to them (using a global search engine) this results in a complete loss of anonymity.
At the bare minimum, the user should be aware of this, so that they can choose not to comment; preferably, the software should be changed so that gravatars are not used for these sorts of posts (or made configurable, in combination with the user being made aware)." jmdh
Future Releases 14691 Allow commas in tag names Taxonomy 3.0.1 normal normal Future Release defect (bug) new 2010-08-25T09:51:09Z 2023-11-27T09:58:10Z "Adding tags to posts via the web interface involves a lot of what boils down to
{{{
explode( ',', join( ',', array( $tag_name, ... ) ) );
}}}
both in PHP and JS.
We settled on commas so we could have tags with spaces in them (see #10320, for example).
It'd be nice if tags (and other taxonomies) could have commas in them, though. Example use case: normalized locations (""Portland, OR""). Admittedly, commas in tag names is an edge case.
The attached treats tag inputs as ""real"" CSV strings instead of just exploding by commas.
That way, you can enter:
{{{
hello, ""hello, world""
}}}
in the tags input field and the following tags would be added to the post.
* hello
* hello, world
This addresses commas in tag names but makes entering double quotes in tag names more annoying. If you wanted a tag named {{{double""quote}}}, you'd have to enter the following.
{{{
""double""""quote""
}}}
This may also help with #7897." mdawaffe
Future Releases 14757 users with no posts are not exported Export 3.1 normal normal Future Release enhancement reopened dev-feedback 2010-09-01T18:14:31Z 2020-07-06T14:48:39Z 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
Future Releases 14824 WordPress is not updating Theme option after making a theme a child theme by adding the line 'Template' to the child`s css without refreshing Theem activation Themes 3.1 normal normal defect (bug) new 2010-09-09T23:27:35Z 2019-06-04T21:05:56Z "Situation:
If you have 2 Themes on a 2 sites MultiSite install (each site is using one theme) and want to make one of them a child Theme of the other, you will go to one of them and add the line 'Template: NAME OF THE PARENT THEME' and save it.
After doing so the Child Theme will not inherit any Template Files from the parent until you deactivate/activate the Child Theme again.
Although it says in the ""Themes/Appereance"" section of the Child Themes backend 'CHILD THEME NAME uses templates from PARENT THEME NAME. Changes made to the templates will affect both themes.' even before deactivating/activating the Child Theme.
Looks like the template page might be checking the style.css and not update the option." drale2k
Future Releases 14876 wp_get_sidebars_widgets() assumes that widgets are enabled Widgets lowest minor defect (bug) reopened 2010-09-15T02:05:43Z 2019-06-05T06:45:15Z "When a theme does not have any sidebars defined, wp_get_sidebars_widgets() will return the database option anyway.
This reveals a bug where a theme that does not have any widgets may still get the recent comments CSS injected into it. is_active_widget() is returning true because that widget was active when the sidebar option was last used." nacin
Future Releases 14877 Ability to create exclusive custom taxonomies helen* Taxonomy normal minor Future Release feature request accepted 2010-09-15T14:08:25Z 2021-11-20T03:12:10Z "Custom taxonomies should have the option of toggling exclusivity, meaning the user should only be able to select one term at a time.
Currently, developers wishing to implement an exclusive custom taxonomy (and thus would prefer radio buttons rather than check boxes on the add/edit post pages) must remove the existing taxonomy meta box completely and build their own, simply to change the input type. This not only duplicates code and development effort, but has the potential to create security vulnerabilities when plugin developers stray from best practices, for example, when recreating the AJAX add term functionality.
Exclusive taxonomies are not uncommon in every day life and are even more common when one thinks about typical custom post type implementations (e.g., students->school year, employee->department, car->color, ice cream->flavor).
While the best implementation is uncertain, I propose the function register_taxonomy accept an optional 'exclusive' argument (similar to 'hierarchical') that would change the check boxes within the taxonomy meta box to radio buttons and would handle the POST accordingly." benbalter
Future Releases 14902 weblogUpdates.extendedPing does not implement standard josephscott Pings/Trackbacks 3.0.1 normal normal defect (bug) reviewing 2010-09-19T23:35:37Z 2019-06-04T20:41:29Z "When a blog post is published or updated, Update Services are notified if they are listed in the Wordpress Writing Settings panel.
The services are notified by the weblog_ping() function in comment.php
That function first attempts an XMLRPC call to the service's weblogUpdates.extendedPing. If that fails, it attempts to notify weblogUpdates.ping.
{{{
if ( !$client->query('weblogUpdates.extendedPing', get_option('blogname'), $home, get_bloginfo('rss2_url') ) ) // then try a normal ping
$client->query('weblogUpdates.ping', get_option('blogname'), $home);
}}}
'''1) The weblogUpdates.extendedPing does not match the published standard.'''
See:
http://www.google.com/help/blogsearch/pinging_API.html
Where 5 parameters are specified:
* Name of site
* URL of site
* URL of the page to be checked for changes
* URL of RSS, RDF, or Atom feed
* Optional a name (or ""tag"") categorizing your site content. You may delimit multiple values by using the '|' character.
The third parameter should be the page to be checked for changes, and not the RSS feed.
No 4th or 5th parameter is passed.
'''2) The weblogUpdates.extendedPing does not take advantage of notifying the service of the exact page that changed (as is provided in the standard)'''
If implemented correctly, this would allow the receiving service (perhaps a search engine) to come directly to the correct page for re-indexing, instead of trying to figure it out from the RSS feed.
I am unable to find if pingomatic.com publishes a competing version of the standard.
" Scott Schram
Future Releases 14969 "menu element ""all (direct) child pages""" Menus 3.0.1 normal normal feature request new dev-feedback 2010-09-26T20:16:39Z 2019-06-04T20:02:19Z One of the things I am missing in the current menu-system is the ability to assign parts of the page tree to, say, a sub-menu, so, say, all child pages of a parent will be listed instead of having to add them manually to the submenu once the menu has been created. youngmicroserf
Future Releases 14986 Make WordPress roles/capabilities more secure (edit_users related) Role/Capability normal normal enhancement new 2010-09-28T20:39:03Z 2022-12-05T12:09:09Z "We've discussed this before, but after some thought, I think we can do this and make it work.
Right now, the edit_users capability is the key to the kingdom. Anybody with edit_users can change their role to anything, including to something with more capabilities than they already have.
Back in #6908 and #6014, this was thought about in terms of the old user levels system, which of course shouldn't be used and makes no sense.
In #8770, an editable_roles filter was introduced, which allows a plugin to limit the roles that a user can change themselves too. This works for one aspect of the problem, but a) it doesn't solve the passwords problem(1), and b) it assumes that the roles are still only in one chain of command. That is to say, that all the roles have an ordering, where each role has all the capabilities of the role ""below"" it.
To solve these, I think we need a capability comparison system. To wit, code that implements these two rules:
1. No user can change the role of another user to a role that has capabilities that the changing user does not also have.
2. No user can change either the role or the password of another user who has any capability that the changing user does not also have.
For rule 1, this means that if Adam was to try to assign Bob a role, he would only be given the choice of assigning roles that have a subset of the capabilities Adam himself had.
For rule 2, if Adam was to try to change the role or the password of Bob, he would not be able to change either unless Bob already had a subset of Adam's own capabilities.
This makes the roles have a sort of definable hierarchy, where roles with lesser capabilities can be multi-faceted. I can define more than one chain of roles which are ""above"" each other in hierarchy, allowing me to build a tree of groups and users capable of different things.
For things like bbPress-as-a-plugin, this sort of enforcement is going to be a must-have feature.
Note 1: The ""passwords problem"" is that any user who can change another users password can easily change the password of somebody of ""higher"" rank, log in as them, and then have their capabilities. It's detectable, but in some cases, may not be so detectable. Admins who don't log in often, say.
Note 2: We also need role management in core, but that's a topic for a separate day. I'm speaking only of enforcement of a security model here for now." Otto42
Future Releases 15006 Closing tag for empty
tag is removed Formatting 3.0 normal minor defect (bug) reopened 2010-10-01T13:48:12Z 2019-06-04T19:43:16Z "I have a page post that starts like this:
{{{
Text Here
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
Future Releases 15068 merging query objects/arrays Query 3.0 normal normal enhancement new 2010-10-08T04:27:58Z 2019-06-04T20:41:30Z "As multiple post type installations proliferate, I assume more and more people will come across a situation (like me) in which they need to display two (or more) sets of content units, say posts, and post-type ""audio"" in one stream - say on the main blog page. As long as the only condition is the post type itself, that will work fine. However, if those two sets need to be selected using different conditional criteria, say a category in one case, and a custom field in the other, then the current query_posts options will not be sufficient.
While it is possible to retrieve multiple arrays via get_posts and merge them, then sort them using cusomt php, such a solution will break the paged navigation.
If such situations will - as I assume - become more likely as more people use multiple post types and additional variables to specify content, I think it would be useful to be able to combine multiple queries into a meta query that will sort the combined object according to a common sorting variable, say date, and thus preserve the paged navigation.
" youngmicroserf
Future Releases 15204 JavaScript Validation should trim values and set focus on invalid field Taxonomy 3.1 normal normal enhancement assigned 2010-10-24T15:46:28Z 2019-06-04T21:06:12Z "If invalid fields are found after validation, focus should be placed on the first invalid field. Field values should be trimmed to check for truly empty values.
Also worth noting, the (mostly same) validateForm is located in both common.js and wpAjax.js." batmoo
Future Releases 15249 Filtering get_search_sql for advanced queries Query 3.1 normal normal enhancement assigned needs-unit-tests 2010-10-29T07:00:35Z 2019-06-04T20:41:32Z "Currently in the code for 3.1 (trunk) there are no filters running on the new function get_search_sql which would be useful for plugins to perform more complex MySQL functionality on specific columns.
I suggest adding a filter ;)" sc0ttkclark
Future Releases 15317 My Sites limited to 23 sites on Admin Bar morganestes Toolbar 3.1 normal normal Future Release enhancement assigned 2010-11-04T13:35:21Z 2023-03-12T00:01:26Z "I have a test site with 25 sites. I can only access 23 from the My Sites tab on the admin bar.
(This is a minor bug, but I hadn't seen it mentioned.)
Ron
I'm using latest trunk." ronbme
Future Releases 15394 "Ancient ""Are you sure you want to do this"" now confusing" Security 3.1 normal minor Future Release defect (bug) new dev-feedback 2010-11-11T21:51:26Z 2019-05-17T10:48:08Z "The default failing nonce message did not pass the wife test. Asking ""Are you sure you want to do this?"" now that there is no longer ""OK"" and ""Cancel"" buttons is confusing and my wife just asked me ""How do I tell I'm sure?""
Not sure about the best wording, I took the same approach as Twitter's expired OAuth token links with a message that does not let user think there is something to confirm." ozh
Future Releases 15467 Multisite with separate users table Networks and Sites 3.0.1 normal normal feature request reopened has-patch 2010-11-18T09:09:03Z 2024-03-02T16:55:21Z "Hi,
I'm using WP with the network option since 3.0 has been released. I think that is very cool, but I think that the user management is not at a good level.
At the moment, every user must register to the first site and the admin should 'bring' them to the wanted site. Some plugins (I use Multisite User Management) have been created to try to resolve this problem.
My experience in wp-networks teach me that there are two ways to intend a network:
- something like wordpress.com
- a bounch of sites that are together only for administration purpose.
The actual implementation does not respond to any of the previous cases. In fact to be able to use wp-network for the first case, you have to install a plugin that brings your new users across any site of your network, and for the second purpose the actual implementation of wp-network has huge problems.
I think that the best way to resolve this, is to ask the user what he wants. During the creation of the network the system does ask the user if he prefers a sub-domain install rather than a sub-folder install. I think it should also ask the user if he prefers an installation with a single user db or a user db for each site.
I was thinking which was the best way to manage the two things: for the first case, I think, the actual way is very good (it only needs to create the new user on all sites instead of delegating this to the admin/plugin). For the second case, I think, the best way is to have an user db for each site, each one with different values (yes, a person could register himself on site 5 and appear only in the wp_5_users table). As soon as a user is made super-admin he is 'replicated' on each user table. When a new site is created, the user table of that website will be populated only by the super-admins.
I think this would make WP the best CMS/blogging platform ever seen :)" fale
Future Releases 15706 Allow wildcarded domains in multisite limited email domains westi Login and Registration normal normal enhancement reviewing 2010-12-06T18:59:24Z 2019-06-04T20:02:25Z "Here at blogs.law.harvard.edu, we want to allow all harvard.edu subdomains to create blogs in our multisite install. There are hundreds of domains and it would be difficult to get a complete list because of the complexity of our DNS infrastructure.
I propose allowing the inclusion of a single prefix wildcard character in the limited email domains feature. If a limited email domain contains a ""*"", we would create a regex and match that specific entry via a wildcard. So ""*.harvard.edu"" would match ""cyber.law.harvard.edu"", ""fas.harvard.edu"", etc. To match the root TLD, you'd just manually enter ""harvard.edu"".
We have a variant of this applied as a core hack to our wordpress install at http://blogs.law.harvard.edu and it's been working fine for years. I will package it up as a patch if there's interest. Thoughts?
I don't think it'd make sense to allow embedded wildcards (dom*ain.org)." djcp
Future Releases 15760 "LiveJournal Importer mishandles some and expressions" westi Import normal normal WordPress.org defect (bug) assigned dev-feedback 2010-12-10T04:45:17Z 2017-05-23T15:16:47Z "There is a note on plugins.trac ticket 1231 that says this should be handled in core.trac instead, so I'm cross-posting it here. The patch and ticket were originally added by a-bishop:
http://plugins.trac.wordpress.org/ticket/1231
Reproduction steps: 1. Create a LiveJournal? entry that has in it. Note that this is XML-ish 2. Try to use the livejournal-importer on this post.
Bug The gets ignored because the regular expression is too strict.
I've attached a patch that makes LiveJournal? Importer recognize the XML-ish version.
Patch:[[BR]]
http://plugins.trac.wordpress.org/attachment/ticket/1231/livejournal-importer.patch" designsimply
Future Releases 15761 Bulk editing on posts without Javascript enabled results in the post being set to draft garyc40 Quick/Bulk Edit 2.9 normal normal defect (bug) assigned 2010-12-10T09:03:35Z 2019-06-04T21:06:13Z "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
Future Releases 15801 Network Admin: Deactivated / Deleted inconsistency Networks and Sites 3.1 normal normal Future Release defect (bug) assigned dev-feedback 2010-12-13T18:12:54Z 2023-06-10T12:03:52Z "Under the Sites screen, there are distinct inline links for Deactivate and Delete. However, when a site is deactivated, it is referred to as deleted in:
* Sites screen inline status
* Edit Site screen attributes section
* Error page for non-admins visiting the site" kawauso
Future Releases 15833 Script concatenation fails to take external dependencies into account. Script Loader 3.0 normal normal Future Release defect (bug) new 2010-12-15T17:35:17Z 2019-05-21T10:42:05Z "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
Future Releases 15855 Dropdown isn't shown when doing a user 'removal' jeremyfelt Users normal normal defect (bug) assigned 2010-12-16T23:38:12Z 2023-04-09T05:27:14Z "Steps to reproduce:
0. Have a MultiSite install
1. Go to wp-admin/users.php and delete a user
2. A confirmation screen appears, with only a ""Confirm"" button.
Expected behaviour:
The user dropdown is shown, asking to assing the user's posts to a different user.
Currently, you end up with authorless posts." scribu
Future Releases 15861 Sorting users by post count Users normal normal defect (bug) new dev-feedback 2010-12-17T10:21:24Z 2019-06-05T06:37:48Z "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
Future Releases 15865 Make it easy to disable options / user settings Options, Meta APIs normal normal Awaiting Review enhancement reopened has-patch 2010-12-17T17:52:29Z 2023-07-27T18:09:44Z "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
Future Releases 15918 wpautop() breaks inline tags on the same line as block tags dunno Formatting 3.0.3 normal normal defect (bug) new 2010-12-20T16:01:31Z 2019-06-04T19:43:17Z "Hi guys! I've got latest WP installation (3.0.3) and found strange bug in posts parser.
Create article with following HTML:
{{{
but who cares. All seems to be OK.
Create article with following HTML:
{{{
}}}
Browser will get:
{{{
}}}
Now isn't that cool? But check what is even cooler!
Create article with following HTML:
{{{
}}}
Browser will get:
{{{
NO IT’S BUGGY AS HELL
}}}
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
Future Releases 15924 Add 'media_default_link_type' option to parallel 'image_default_link_type' Upload normal normal Future Release enhancement new dev-feedback 2010-12-20T21:12:12Z 2019-05-15T20:48:42Z "It is often recommended that site owners change the 'image_default_link_type' option to ""none"" if they don't plan on linking to full size images often from their posts. The problem is that this also affects the default link type for other media (uploaded zip files, pdfs, etc.) Adding an additional option for 'media_default_link_type' which behaves in the same way would get around this problem.
" goldenapples
Future Releases 15930 Make trashed posts/pages still readable Posts, Post Types 2.9 normal minor enhancement new 2010-12-21T10:32:30Z 2019-06-04T20:41:42Z "I hoped I was able to see the pages which I delete (in the trashbin) but the all stay dark... So I can't view them!
I think it would be a good feature to see them to see if somebody didn't delete the wrong page! Or when you need something form a deleted page that you can still get it without restoring it first" JonezJeA
Future Releases 15955 move_uploaded_file mangles non-ascii characters on Windows platforms SergeyBiryukov* Upload 2.0 normal major Awaiting Review defect (bug) accepted close 2010-12-22T22:15:46Z 2018-07-09T19:14:56Z "The `sanitize_file_name` function is not filtering alot of character entities like the degree symbol, this results in invalid media item paths, see the attached images.
wp-includes/formatting - Line 677
{{{
$special_chars = array(""?"", ""["", ""]"", ""/"", ""\\"", ""="", ""<"", "">"", "":"", "";"", "","", ""'"", ""\"""", ""&"", ""$"", ""#"", ""*"", ""("", "")"", ""|"", ""~"", ""`"", ""!"", ""{"", ""}"", chr(0));
}}}
This array is not dealing with invalid entities that could be used in a filename, and the regular expression further down is not catching these either.
wp-includes/formatting - Line 700
{{{
if ( preg_match(""/^[a-zA-Z]{2,5}\d?$/"", $part) ) {
}}}
See attached images, i used 4 varying names with unusual entities in them(each a copy of a sample jpg image).
Using a filter on the valid chars array results in the extension getting stripped off but the file still makes it through the upload routine however(which is worrying).
I'm no file validation expert, so i'm not sure if this is a critical problem(marked as normal), i'll leave this for you chaps to decide.
'''NOTE:''' Ignore my hostname in the screenies, it's a 3.0.3 installation, i'm just lazy with updating my virtual host settings.
See screenshots for steps to reproduce(just create a file with some dodgy character entities and upload it basically)." t31os_
Future Releases 15971 Add ability to rate and report compatibility of plugins from wp-admin Plugins 3.1 normal normal Future Release feature request new 2010-12-24T08:25:27Z 2019-04-08T19:34:03Z "For the millions of downloads some plugins get there are way to few ratings on them. I think the ability to rate and report the compatibility of plugs from the backend dashboard page would dramatically increase participation in rating.
This could be accomplished most easily placing a link to the ""details"" of a plug-in (like the one that appears while searching for a plug-in) after it is installed on plugins.php.
This could be accomplished even more effectively by showing direct link next to each listing on the plugins.php page link stars/compatibility and link text reading ""rate now or ""report compatibility now""...
For reference I point you to the excellent new to FireFox 4 (beta) add-on compatibility reporting features.
" jb510
Future Releases 15981 Quick edit (and other actions) need to cancel AJAX actions garyc40 Quick/Bulk Edit 3.1 low normal Future Release defect (bug) assigned has-patch 2010-12-26T05:17:36Z 2018-05-14T16:46:46Z "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
Future Releases 15993 Sort arrows improperly wrap on narrow columns Posts, Post Types 3.1 normal normal defect (bug) reopened 2010-12-27T06:14:21Z 2019-06-04T20:41:43Z Specifically, I noticed the 'Posts' column on a taxonomy screen (or 'Links' for link categories, etc). nacin
Future Releases 16001 Invited but not activated users can get lost Users 3.0 normal normal Future Release defect (bug) new 2010-12-27T22:37:15Z 2022-02-09T10:01:31Z "Steps to reproduce:
* In ''Site Admin'', go to Users > Add New
* Add a new user
* You get a message to the effect of, said user needs to respond to an invitation.
Now the user has disappeared. There's no way for a super admin or anybody to search for that user and add her directly, or delete her, or anything like that. If the user doesn't get the email, she's out of luck: that username and email are now reserved for ""a couple of days.""" filosofo
Future Releases 16126 Multisite name conflict check doesn't check for pages. Permalinks 3.0 normal normal defect (bug) new 2011-01-06T19:11:19Z 2019-06-04T20:41:45Z "Running WP 3.1-RC2 I made a page off my main site called foobar.
Then I went in and made a sub-site (using SubFOLDERS) called foobar.
The subsite took precedence and there was NO check or warning.
I was able to reproduce this on 3.0.4
Then I went the otherway. I have a subsite called camels (don't ask). I went to make a PAGE called camels and it also let me. No conflict check.
Basically you have to add the main blog page names into the banned names list manually, which strikes me as a bit odd. I can see why checking that would be onerous if someone had 600 million pages (and we all know they do) but forcing people to do it manually seems like a gap.
Need love! :D
This is minor, since not a lot of people have bitched, so clearly we're not running into it YET." Ipstenu
Future Releases 16147 MT Importer truncates double vertical spaces, munging paragraphs together Import 3.2.1 normal normal defect (bug) reopened 2011-01-07T22:25:47Z 2019-06-04T20:02:27Z "Movable Type 3.x-era exports don't use '''
''' tags. Like TinyMCE (and WordPress), a '''
''' in final rendered code is represented by two '''\n'''s in a row.
The importer strips out double '''\n'''s and replaces with a single '''\n'''. This causes paragraphs to lose their distinction upon import.
It does this because the '''$line''' variable was created by '''$line = $this->fgets($handle)''' (line 339). Then '''$line = trim($line)''' (line 340) strips out several characters, including '''\n'''.
Lines 455 and 456 add back the '''\n''' ''except'' on blank lines:
{{{
if( !empty($line) )
$line .= ""\n"";
}}}
So if a '''$line''' was nothing but a '''\n''', it's stripped by the '''trim''' function and becomes a 0 character line. Then the '''if( !empty($line) )''' declines to add back a '''\n'''.
Somehow this needs to be altered so that successive '''\n'''s aren't stripped. Otherwise paragraphs get vertically munged together." novasource
Future Releases 16230 Category slugs not cut at 200 characters as it should under some conditions Taxonomy 3.1 normal normal defect (bug) new 2011-01-14T14:10:23Z 2019-06-04T21:06:22Z "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
Future Releases 16243 Unhelpful error messages when updating default category Taxonomy 3.0.4 normal normal enhancement new 2011-01-15T12:23:36Z 2019-06-04T21:06:24Z "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
Future Releases 16392 Quick Edit API should allow to pick up custom field values automatically Quick/Bulk Edit 3.1 normal normal enhancement new 2011-01-27T22:22:10Z 2019-06-04T21:06:26Z "Attached are two screenshots of the same plugin in 3.0 and 3.1. The plugin code is unchanged between the two. Only WP gets an svn switch.
I'm investigating where it's coming from, but as you can note from the screenshots 3.0 lists nada for that plugin on the one hand side, while 3.1 lists actual fields and leaves them blank. The latter causes data loss when Quick-Editing a row.
Cross-referencing ticket references:
http://code.google.com/p/wp-e-commerce/issues/detail?id=327
Plugin SVN:
http://svn.wp-plugins.org/wp-e-commerce/branches/3.8-development
" Denis-de-Bernardy
Future Releases 16396 Add a hook to the theme editor page when the write is successful Themes 3.1.3 normal normal enhancement new 2011-01-28T17:29:35Z 2019-06-04T21:06:27Z Add a filter to the end of theme-editor.php's processing when the write is successful. scottconnerly
Future Releases 16404 WordPress Importer fails to import images Import 3.0.4 normal normal defect (bug) new reporter-feedback 2011-01-29T00:42:28Z 2019-06-04T20:02:31Z "WordPress Importer fails to import images and update image src urls when download and import file attachments is checked.
WordPress MS with images in a post via Media using WP image mapping, e.g. image url: http://site.domainname.com/files/2011/01/myimage.jpg
Fails to download, import and update image src url. All image src urls remain intact from the old domain name.
If you change the image source to specific directory rather than the WP uploads directory: e.g. image url:
http://site.domainname.com/images/myimage.jpg
Images are downloaded and imported to media but it fails to update image src url in posts. All image src urls in posts remain intact from the old domain name.
I tested this on clean install of WP 3.0.4 MultiSite with TwentyTen theme and no other plugins activated." wlpdrpat
Future Releases 16413 Settings page needs HTML refactoring and UI improvements joedolson* Administration 3.1 normal normal Future Release enhancement accepted 2011-01-30T20:22:09Z 2023-11-10T16:20:51Z "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
Future Releases 16443 We need a way to programmatically tell if we are in a sidebar Widgets 2.2 normal normal Awaiting Review feature request new dev-feedback 2011-02-02T20:10:28Z 2022-07-15T16:12:27Z There is currently no way to tell if you are in_a_sidebar or doing a widget which makes me a sad stallman lookalike. jorbin
Future Releases 16445 Fix incompatibilities with IDs greater than 2^31 Import 3.1 normal normal defect (bug) new 2011-02-03T01:03:24Z 2019-06-04T20:02:33Z "For various reasons, things go bad when you get a post ID greater than 2^31^. When we're importing content and there's an existing ID, I suggest we ignore it if possible if it's too big.
Tumblr2WordPress for example maintains the Tumblr IDs and causes problems in WordPress." Viper007Bond
Future Releases 16460 Category/tag converter should support all public taxonomies Import 3.0 normal normal Awaiting Review feature request new 2011-02-05T04:56:39Z 2022-07-15T16:27:46Z The category to tag converter should let you convert terms to custom taxonomies, if any are defined. I'm attaching a rewrite of the plugin based on 1.5.2, which included support for post formats. sillybean
Future Releases 16495 Make iso8601_to_datetime a bit more compliant Formatting 3.0.5 normal normal defect (bug) new 2011-02-08T19:37:09Z 2019-06-04T19:43:19Z 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
Future Releases 16600 AdminMenu rendering code chokes on uppercase Posts, Post Types 3.1 normal minor defect (bug) reopened 2011-02-20T02:43:25Z 2019-06-04T20:41:50Z "When registering custom taxonomies for a custom post type, if the post type name contains uppercase letters, the menu items for the custom taxonomies are not shown.
It looks like the post type name is lowercased in some parts of the core code (but no all) and so string comparisons fail.
Just isolated this behaviour, so I'm still not sure how much of the core this affects.
Moreover, when I saved posts with the intended mixed-case name, they have been saved to the DB with lowercased post_type
It it is indeed the intended behaviour, a note should be added to the Codex:
""Custom Post Type names must be lowercase""
The attached sample (real) code reproduces the problem by setting ""post_type_tag"" to ""DomainName"" instead of ""domain_name"". Numbers work properly, however.
Tested with latest SVN (RC4 + r17467)" jltallon
Future Releases 16613 Extend Widget API to allow sidebar/widget manipulation Widgets 3.1 normal normal enhancement new 2011-02-21T22:55:17Z 2019-06-05T06:37:51Z "There is currently no easy way to add a widget to a sidebar using code. We should add methods of doing this.
A good example usage of such an API could be when a new theme is activated, it could add it's custom widgets to it's sidebar.
API should provide support for adding widget X to sidebar Y (or even just the first sidebar) along with setting some options for the widget and where in the sidebar to add it (top vs. bottom)." Viper007Bond
Future Releases 16808 Insufficient permissions for custom post type management and custom role/caps Role/Capability 3.1 normal normal defect (bug) reopened 2011-03-09T19:54:04Z 2023-01-27T05:59:30Z "I asked a question over at [http://wordpress.stackexchange.com/questions/11508/permission-error-on-custom-post-type-add-new-action StackExchange] about this. Went into their chat room to talk to a few people and came to the conclusion I need to post this ticket.
---
When accessing an admin page located at post-new.php with a custom post type on a user that's in a custom role that has the available permission to ""Add New"", you get ""You do not have sufficient permissions to access this page.""
{{{
$post_caps = array( 'delete_post' => 'argus_admin', );
$visitor_caps = $post_caps;
$visitor_caps = array_merge( $visitor_caps, array(
'edit_post' => 'argus_visitors',
'read_post' => 'argus_visitors',
'edit_posts' => 'argus_visitors',
'edit_others_posts' => 'argus_visitors',
'publish_posts' => 'argus_visitors',
'read_private_posts' => 'argus_visitors',
));
$v_args = array(
'labels' => array (
'name' => 'Visitors',
'singular_name' => 'Visitor',
'add_new_item' => 'Register New Visitor',
),
'public' => true,
'publicly_queryable' => false,
'exclude_from_search' => true,
'show_ui' => true,
'show_in_menu' => 'argus',
//'show_in_menu' => false,
'hiearchical' => false,
'supports' => array( '' ),
'capabilities' => $visitor_caps,
'register_meta_box_cb' => array ( &$this, '_wp_visitor_meta_box_cb' ),
);
register_post_type( 'visitor', $v_args );
}}}
I've tested it with 3.0.4 and it worked flawlessly. However, when in 3.1, it doesn't want to work." Genesis2001
Future Releases 16832 Trouble if the slug of a custom taxonomy is the same as the url of page/post Rewrite Rules 3.1 normal normal defect (bug) new 2011-03-11T11:50:43Z 2019-06-04T21:06:35Z "I got some troubles with the 3.1 version of WordPress concerning the slug of custom taxonomy.
'''An example that work in 3.0.5'''[[BR]]
www.example.com/agency (url of a page)[[BR]]
www.example.com/agency/john-smith (url of a custom type's detail)
Apparently having the same ""folder"" 'agency' only works for one or the other url but not both.
Hope I made myself clear." LucasHantz
Future Releases 16838 Excluding Akismet from Future WordPress Releases / Plugin Directory Plugins 3.1 normal normal Awaiting Review enhancement reopened 2011-03-12T02:49:31Z 2024-03-02T21:23:45Z "This issue was more mute prior to the shift in Akismet's 'keying', which previously just required you to have a free WP.com account to hook up to the API. Since Akismet now charges for access, or solicits fees by default for Personal website activations (when you go through the sign up process, it defaults at something like $5 with a slider that lets the person choose how much they want to pay). It's not immediately apparent that 'free' is an option within the slider, but that's not the primary issue here - I digress :)
The issue is that Akismet is no longer free for EVERYONE. It's only an option for Personal sites, and in certain cases. What if someone has multiple personal sites? They click that option and they are categorized into a Professional plan, which has a fee associated to it.
Since the plugin directory itself has officially been described (and in practice) to have a restriction that explicitly prohibits functionality be disabled from a plugin behind a Paywall, why wouldn't that apply in this case?
I certainly don't mean to rock the boat, but this brings up a number of important questions.
The plugin has a potentially confusing signup process that does lead people otherwise categorized as Personal site owners, to pay for the service while it's advertised under the plugin description that it's 'free' for Personal use. This produces a grey area of sorts, which puts this plugin under a sort of Paywall, which could be alleviated in a minor way by modifying the signup process. It still doesn't clear the air on how the Paywall for professional sites can be officially allowed versus a full Paywall. Perhaps someone who officially represents the WP.org Plugin Directory or WP.org can clarify the undocumented (not shown at http://wordpress.org/extend/plugins/about/) Paywall restriction for future reference.
Besides the plugin itself now finding itself in this grey area, it's bundled with WordPress by default and presents what could be described as an unfair market advantage for Automattic's product offering, sort of like anti-competitive business practices. I feel weird saying that, but I'm not throwing stones here. Just saying what it feels like, even if the core developers say it should be included, I'd say it now doesn't cover the 70/30 rule (or whatever the amount is).
If Akismet is allowed to remain in the plugin directory as is, and within WP core, then would other plugins be allowed to be included in the plugin directory that follow the same Paywall model and signup process?" sc0ttkclark
Future Releases 16839 Category Base Should be Slugified SergeyBiryukov* Rewrite Rules 3.1 normal normal Future Release defect (bug) accepted needs-unit-tests 2011-03-12T21:42:52Z 2023-03-02T15:52:09Z "Vanilla install of 3.1. Change category base to Foo Bar. Link generated is example.com/Foo Bar/cat (note the %20/space). Clicking link tries to access /FooBar/cat and 404's.
I see there are a few other tickets regarding categories, including #16662 but no specific mention of custom category base.
" miklb
Future Releases 16853 Error 500 when a user has too many sites Networks and Sites 3.0.1 normal minor Future Release enhancement assigned dev-feedback 2011-03-14T11:15:57Z 2019-04-08T16:52:29Z "'''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@…
Future Releases 16883 "Add check for ""Template Version"" on theme activation" Themes 3.1 normal normal enhancement new dev-feedback 2011-03-18T03:28:36Z 2019-06-04T21:06:36Z "Related: #16395
In addition to adding Template Version to the standard meta information extracted from style.css in `get_theme_data()`, I think that for this information to be useful, a child theme shouldn't be able to be activated unless the template template the child theme uses (parent theme) meets the minimum version requirement identified in ""Template Version"".
A polite and graceful failure, with an error notice, would be preferable :-)
Reason: many times child themes utilize functionality that only exists in the latest version of a parent theme. They're stuck either writing backward compatibility into into their code, or risking whitescreens.
This not only prevents that, but it could be used to gently encourage the user to update the parent theme.
Certainly not a candidate for 3.1.1, but perhaps 3.2?" nathanrice
Future Releases 16910 Lazy evaluation for WP_Query Query normal normal feature request new 2011-03-21T01:04:39Z 2019-06-04T20:41:58Z "Suppose we have a 'city' post type, which is associated with a 'country' post type, such that each 'city' post has a 'country' parent post.
Then the 'country' CPT has a 'language' taxonomy associated to it.
Now, let's say we want to find all the cities which speak a certain language.
Let's assume we already have the `'post_parent__in'` query var: #13927
We could construct a two-step query, like this:
1) Get all the countries with that language:
{{{
$country_ids = get_posts( array(
'fields' => 'ids',
'post_type' => 'country',
'language' => 'french',
'nopaging' => true
) );
}}}
2) Get all the cities belonging to that country:
{{{
$cities = get_posts( array(
'post_type' => 'city',
'post_parent__in' => $country_ids
) );
}}}
No custom SQL queries; fantastic!
But, if you have many many countries (not a good example, I know), you waste a lot of time passing the IDs back and forth from PHP to SQL.
Final query:
{{{
SELECT *
FROM wp_posts
WHERE post_type = 'city'
AND post_parent IN (1, 2, 3, ...)
}}}
It would be a lot more scalable to put the first query into the second, directly, as a subquery.
So, it would now look like this:
1) Get all the countries with that language:
{{{
$country_ids = get_posts( array(
'fields' => 'ids',
'post_type' => 'country',
'language' => 'french',
'nopaging' => true,
'lazy' => true'
) );
}}}
2) Get all the cities belonging to that country:
{{{
$cities = get_posts( array(
'post_type' => 'city',
'post_parent__in' => $country_ids
) );
}}}
$country_ids would now be a WP_Lazy_Query object, which would just contain the subquery SQL. It would be appended to the second query, when needed:
Final query:
{{{
SELECT *
FROM wp_posts
WHERE post_type = 'city'
AND post_parent IN (
SELECT ID
FROM wp_posts
WHERE post_type = 'country'
INNER JOIN wp_terms ...
)
}}}" scribu
Future Releases 16980 Empty Values are ignored by class-ixr.php XML-RPC 3.1 normal normal Future Release defect (bug) assigned needs-unit-tests 2011-03-27T12:34:47Z 2020-09-30T18:41:01Z "I tried to fix the following bug #10599
Found out when you send and empty value via xmlrpc it converts it to null value.
Say you send and array of arguments for mw_editpost, set
{{{
$content_struct[mt_keywords] = '';
}}}
IXR client passes a null value instead of an empty value.
In mw_post method consider this statement
{{{
$tags_input = isset( $content_struct[mt_keywords] ) ? $content_struct[mt_keywords] : null;
}}}
Even if you send an empty value this statement fails because
{{{
$content_struct[mt_keywords]
}}}
is set to null by IXR client." nprasath002
Future Releases 17020 Some comment queries are not filterable Comments 3.1 normal normal enhancement new needs-unit-tests 2011-04-02T16:56:32Z 2019-06-04T19:22:21Z "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
Future Releases 17039 the_excerpt() - handling Formatting 3.1 normal normal defect (bug) new 2011-04-03T22:15:48Z 2019-06-04T19:43:23Z "If a post has a manually inserted ''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
Future Releases 17061 media_sideload_image() allows upload of 301-redirected non-images chriscct7* Media 3.1.1 normal normal defect (bug) accepted 2011-04-06T14:39:09Z 2019-06-04T20:02:39Z "When you give {{{media_sideload_image()}}} URLs that are not images, an error is raised.
If for example I do:
{{{
media_sideload_image(""http://google.com"", $post_id, $img_desc);
}}}
then I get this error:
{{{
Sorry, this file type is not permitted for security reasons.
}}}
And this is absolutely normal and expected.
But there is a case when {{{media_sideload_image()}}} do not detect non-images. This case is when the URL given to the function looks like an image but is redirected by Apache to another place.
For example, on my server, this URL:
{{{
http://coolcavemen.com/e107_plugins/autogallery/Gallery/default.jpg
}}}
redirects to:
{{{
http://coolcavemen.com/photos/
}}}
Now if in some PHP code I do:
{{{
media_sideload_image(""http://coolcavemen.com/e107_plugins/autogallery/Gallery/default.jpg"", $post_id, $img_desc);
}}}
then no error is raised and I end up with the HTML served at {{{http://coolcavemen.com/photos/}}} being uploaded to my WordPress site as-is:
{{{
kevin@kev-laptop$ file ./wp-content/uploads/2011/04/default.jpg
./wp-content/uploads/2011/04/default.jpg: HTML document text
}}}
Of course this upload appears broken in the media manager, as you can see in this screenshot: http://twitpic.com/4hlyks" anonymized_154007
Future Releases 17077 Page parent li elements in nav menus not always given current-page-parent class Menus 3.1 normal minor defect (bug) assigned 2011-04-07T09:53:45Z 2019-06-04T20:02:40Z "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
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
Future Releases 17078 is_active_sidebar() doesn't work with Numeric sidebar ID's Widgets 2.8 normal normal defect (bug) new close 2011-04-07T10:06:54Z 2020-05-20T21:00:56Z "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
Future Releases 17164 More elegant handling of site 'archive' options for MultiSite Networks and Sites 3.1 normal normal Future Release enhancement new 2011-04-18T15:08:50Z 2023-03-22T14:32:22Z "Right now you have a few options with MultiSite blogs
1) Spam
2) Deactivate
3) Archive
4) Delete
Spam is easy to understand, and should be marking the admin and site as spam. Delete ditto, hi.
Deactivate and Archive are weird though and almost seem backwards. Deactivate means to turn OFF (like deactivating a plugin). Archive implies that you're making a site read-only.
Right now, if you change a site to 'deactivated' it actually shows up as DELETED and the front end has the message ""This user has elected to delete their account and the content is no longer available."" Clearly the verbage on the network/sites.php page needs to be updated (and perhaps the front end to 'This site has been deactivated.' to be consistant).
If you 'Archive' a site it kicks it to a paler pink in the sites.php page (though the 'Archived' text is white and nigh impossible for me to read) and the front end says ""This site has been archived or suspended.""
It's rather illogical there. Archive SOUNDS like it should be making things read-only (and turning off commenting and posting if possible). Otherwise it should just be 'Suspend', and at that point, why have two options that pretty much do the same thing from the front-end perspective?" Ipstenu
Future Releases 17255 More statuses (like draft and/or private) for media files Media 3.1 normal normal Future Release defect (bug) new 2011-04-27T11:48:11Z 2023-10-25T15:39:32Z "It's weird that media files don't carry any concept of pub status. If someone wants to upload files (either attached to a post or directly into the library), they should be able to keep them hidden via 'draft' status just like any other content. The fact that people can link to things that haven't been explicitly published is bizarre.
Media files should have a pub status. If uploaded as post attachment, should inherit publish on post publish. Would then need a workflow for if a post becomes unpublished containing media, as it then lives in library for use by other content, so would need to ask if user wants to unpub media files as well. This would be a big shift, so would make most sense as part of a media redux with a long notice period for plugin and theme authors. " jane
Future Releases 17370 Screen options and meta box settings can lose per-blog meta box positions Users 3.1 normal normal Future Release defect (bug) new 2011-05-10T21:13:37Z 2022-10-03T12:10:08Z "User preferences for admin interface appearance of the Dashboard and the Edit/Add New pages are stored in per-user options in `wp_usermeta`: `closedpostboxes_$page`, `metaboxhidden_$page`, `meta-box-order_$page`, and `screen_layout_$page`, where `$page` is one of 'post', 'page', or 'dashboard'. Users can customize the order of the Dashboard and editing meta boxes to better suit their workflow using the drag-and-drop AJAX interface to move the meta boxes into ordered columns and the Screen Options tab to show and hide the boxes. Many plugins add custom meta boxes to the Edit/Add New Post page.
In a multisite installation, with different plugins active on different blogs, users who rearrange an Add New Post page on a blog with a custom meta box and then rearrange it on a different blog without that meta box will lose the position of the custom meta box. Blogs can have different features and workflows implemented, and having per user options for the appearance instead of per user, per blog options limits the ability of a user to customize the interface.
The expected behavior for moving things around is that it changes on one blog, not on all blogs." jmdodd
Future Releases 17374 get_pages() with child_of forgets sort DrewAPicture Posts, Post Types 3.1.2 normal normal defect (bug) assigned dev-feedback 2011-05-11T10:06:17Z 2023-04-18T12:45:36Z "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
Future Releases 17382 XMLRPC wp_getUsersBlogs Scalability XML-RPC 3.0 normal normal defect (bug) new 2011-05-11T20:32:15Z 2019-06-05T06:38:07Z "If there is a root blog with many sub blogs on it and a user that is an admin on each sub blog, then when the when the XML RPC method wp_getUsersBlogs() is called it does not scale very well. My PHP memory_limit setting was 128MB, and the XML RPC request died when a user was a member of 230+ blogs. I noticed that the number of queries made to the database for a single user that has many blogs that they are an admin is very high.
Affected line: http://core.trac.wordpress.org/browser/tags/3.0.1/xmlrpc.php#L443
I don't know exactly how the code would have to change so I am not providing a patch." bmorneau
Future Releases 17394 Network Admin -> Sites -> Users not report correctly Users 3.1.2 normal normal Future Release defect (bug) reopened 2011-05-12T14:10:29Z 2020-09-30T19:43:43Z "The Network Admin -> Sites -> Users screen does not list all users in the site. I see the symptom of this issue has been reported before, but I have found the cause (in my case anyway).
'''Example Scenario:'''
In my set up I have added plugins that add user roles: a registration plugin that adds ""Registration Admin"" and a event management plugin that adds ""Office"" and ""Committee"". I have the registration plugin installed in all sites (root and test), but the event plugin in only installed in the test site.
When I add a user to the root site, I can choose the normal roles or ""Registration Admin"", when I add a user to the test site I can choose the normal roles or any of the 3 new roles that have been added.
'''Problem:'''
When I view the list of users on the Network Admin, not all users are displayed in the list. It appears the Network Admin screen works in the context of the root site, where the event plugin is not installed. As a result, the Office and Committee roles are not available in the root site, and users of the sub-site with the those roles do not show in the user list.
The filters show the correct total number of users beside All, but the additional roles unique to the sub-site are not listed. In the sub-site Dashboard, they show correctly, and if I install the other plugin to add the Office and Committee roles to the root site they will show in the Network Admin -> Sites -> Users screen for the sub-site.
It would appear the user list for a sub-site will ignore users that are assigned a role that doesn't exist in the root site, even though they are assigned a valid role in the site displayed.
This bug is reproducible by adding roles to sub-sites.
I would a happily help with more clarification or resolving this issue as needed. I know it's not critical, but it is very frustrating when administering a large multi-site network." whiteatom
Future Releases 17450 Almost pretty permalinks with non-ASCII characters do not work in Apache westi Permalinks 3.1 normal normal defect (bug) reopened needs-unit-tests 2011-05-16T05:53:14Z 2019-06-04T20:42:05Z Almost pretty permalinks (using PATH_INFO) with non-ASCII characters do not work in Apache; a not found error is returned. The same permalink works in IIS when UTF-8 is used for server variables. It also works when mod_rewrite is used. peaceablewhale
Future Releases 17451 Unify plugin update notices and include changelog data nacin* Upgrade/Install normal normal enhancement accepted dev-feedback 2011-05-16T09:23:25Z 2019-06-04T21:07:00Z "Currently the after_plugin_row hook is only used on plugins.php which is used by the Changelogger plugin to show plugin changelogs inline.
If the hook is also added to the bottom of list_plugin_updates in update_core.php then changelogs could also be displayed on that page too.
It's only a single line change so not sure how/if it's worth me attaching a patch for this?" dempsey
Future Releases 17653 Canonical Redirect when space(s) are used instead of hyphens when requesting a page SergeyBiryukov* Canonical 3.0 normal normal Future Release enhancement accepted 2011-06-02T01:25:08Z 2018-08-19T03:31:39Z "Create a page with a slug that contains a hyphen (eg. /page-name/).
If you then visit /page name/ (ie. use a space instead of a hyphen), WordPress currently manages to locate and display the page-name page. This could cause duplicate content issues.
The same issue occurs if multiple spaces are used instead of a hyphen.
As an example, this is the original page: http://jamesc.id.au/test-page/
This page is accessible via:
* http://jamesc.id.au/test%20page/
* http://jamesc.id.au/test%20%20page/
* http://jamesc.id.au/test%20%20%20page/
* http://jamesc.id.au/test%20%20%20%20page/
and so on.
WordPress should either output a 404 error, or redirect to /page-name/.
Tested using the latest 3.2 trunk (r18110)." jamescollins
Future Releases 17704 Automatically enqueue necessary scripts when custom meta boxes are used Administration normal normal enhancement new 2011-06-06T05:53:43Z 2019-06-04T19:22:32Z 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
Future Releases 17763 comments_popup_link() need a get_* version Comments 3.2 normal normal enhancement new 2011-06-11T06:20:09Z 2019-06-04T19:22:34Z "Currently `comments_popup_link($zero = false, $one = false, $more = false, $css_class = '', $none = false)` has no get_*() version.
Usage situation: Where the link needs to be used within a larger string being concatenated." dd32
Future Releases 17948 Enhancements to the login and registration forms wpdavis Login and Registration 3.2 normal normal Future Release enhancement new 2011-06-30T16:25:01Z 2017-10-06T16:23:13Z "I would like to propose a significant overhaul of the registration and login forms for 3.2, which I'd be happy to take on. A few things that I think would be helpful:
Combine registration processes for multisite and single-user into one form on one page.
Allow the registration and login to be templatized — no reason this should be for MS only.
Standardize filters, actions and variables between MS and single-user when at all possible.
A few related tickets:
#17904
#17306
#17085
#16866
#16411
#17630" wpdavis
Future Releases 18043 Uploaded images disappear after loading if using compression w/Apache Upload 3.2.1 normal major Future Release defect (bug) new dev-feedback 2011-07-08T22:49:15Z 2019-05-15T21:02:03Z "I have found an issue between WordPress (Multisite) + Google Chrome (Mac) which I think appeared on my sever when I enabled compression a few months ago, but could never reproduce because it only happens with images managed by a Multisite WordPress install, not static images.
With images that are static Apache sends the file and calculates the Content-Length its self so these images work fine but if you access a file uploaded to WordPress it uses the .htaccess redirect so the image requests are sent via ms-files.php for what ever reason.
The problem is that WordPress decides to calculate its own Content-Length header in the HTTP Response which means that security conscious browsers like Google Chrome freak out when the data they receive is less than they we're told by Apache and they resultantly disable the image.
The Content-Length calculation comes on line 43 of ms-files.php I don't know why its needed because Apache seems to sort it out automatically if you don't send your own header, in fact most of the file seems like an unnessisary load of processing, perhaps it needs reviewing but this is a major issue as it is a growing browser, on a growing platform.
Here is a great video of it in action: http://www.screencast.com/t/cUYKSegW0N
This issue has been repeatedly reported on the forum:
http://wordpress.org/support/topic/disappearing-images
http://wordpress.org/support/topic/multisite-images-broken
http://wordpress.org/support/topic/image-not-show-in-google-chrome-timthumbphp
Please fix this asap!" ctsttom
Future Releases 18146 Add user-level & front end timezone display flexibility according to a fixed time [GMT:0] Date/Time normal normal Future Release feature request assigned 2011-07-17T06:25:21Z 2023-05-30T04:01:59Z "Timezone can currently only be set on the blog level. This makes sure that the blog displays times in the timezone chosen by the blog's owner.
It would also make sense to add a timezone setting for registered users, so we can show times in their own timezone, or use that setting as a default for new blogs or other features in a multi-site setting." RanYanivHartstein
Future Releases 18161 Bulk action: Add user to multiple sites Users 3.2 normal normal Future Release feature request reopened 2011-07-18T19:07:04Z 2021-04-27T20:01:18Z "Currently, to add a single user to multiple sites, the super admin has to edit each site, add the user to the site, and then go on to the next site.
To improve this workflow, it would tremendously useful to be able to add a single user to multiple sites in the network admin.
This ticket could have scaling problems to solve." danielbachhuber
Future Releases 18264 Future private posts listed as already published with future date specified Posts, Post Types normal normal Awaiting Review defect (bug) new 2011-07-27T00:05:27Z 2019-05-23T19:33:38Z "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: %1$s'); }
}}}
with:
{{{
else if ( 'publish' == $post->post_status ) { // already publicly published
$stamp = __('Published on: %1$s');
} else if ( 'private' == $post->post_status ) { // published privately
$stamp = __('Published privately'); }
}}}" chrisrudzki
Future Releases 18271 Item hierarchy should be maintained when adding to menu Menus 3.2.1 normal minor Future Release defect (bug) new 2011-07-27T20:13:35Z 2023-11-17T10:54:16Z "Situation:
Create a hierarchy of categories or pages and go to create a custom menu. In the meta boxes on the left hand side, the categories and pages are shown in hierarchical arrangement. Select all categories (for example) and add to menu.
Expected behaviour:
All links are added to custom menu and the hierarchy is maintained appropriately
Actual behaviour:
Hierarchy is lost and all menu items are top-level
This was originally raised by Jane in #17029 however the changeset in the ticket only applies to showing hierarchy in the meta boxes and doesn't cover maintaining hierarchy when adding to menu." JohnONolan
Future Releases 18275 Can't get perfect thumbnail sizes with image editor Media 3.2.1 normal normal Future Release defect (bug) new 2011-07-28T02:37:16Z 2017-06-27T16:14:27Z "In the media settings, I have the thumbnail set to a fixed size (218x145), and set to crop to these exact dimensions.
Sometimes the automatic thumbnail crops off people's heads, etc, so I use the Image Editor to manually adjust the thumbnail. I select a rectangle, set the aspect ratio to 218x145, click crop, apply to thumbnail only, and save.
However, sometimes that results in an image slightly off in dimensions - for example, 215x145.
I expect this is a rounding error. However, it happens even if I select an area much bigger than this when cropping in the Image Editor - eg 300x200. After I click crop and see the 300x200 image, I would expect the thumbnail to be automatically be created at 218x145 like it does normally based on this adjusted image - however, it appears the checkbox for using exact dimensions doesn't apply here. (In fact, if I select, say 300x300, it will make my thumbnail 145x145).
This feels like a bug to me, and makes it very hard to generate thumbnails at the size I want." smerriman
Future Releases 18282 Issue with admin page hierarchy in Menu admin Menus 3.2.1 normal critical Awaiting Review defect (bug) reopened changes-requested 2011-07-28T14:38:17Z 2023-08-12T10:15:28Z "Under Appearance > Menus in the left column under Pages, if I have more than 50 pages, the hierarchy view gets messed up. The issue seems to be related to paginate.
If I change the ""50"" on lines 589 and 809 of wp-admin/includes/nav_menu.php to ""955"" the hierarchal admin menu works with 50+ pages.
Attached are two XML files. One contains 50 pages and the other contains 53 pages. I've loaded them into fresh installs of 3.2.1 using the twenty eleven theme and no plugins.
Paginate is great if it works right, if it won't work, just increase the number per page to something very high and people can scroll. I'd rather scroll than not have hierarchy work right.
Link to 50 page XML -- http://cloud.hcc.me/0g3X3O310s3l3i2N363n
Link to 53 page XML -- http://cloud.hcc.me/302e0c391A14193m2V2e
Pastebin of wp-admin/includes/nav_menu.php -- http://pastebin.com/0FRAmMkS" hcceast
Future Releases 18301 Activating a new theme on multisite is very long-winded DrewAPicture* Themes 3.1 normal normal Future Release enhancement accepted 2011-07-30T23:38:48Z 2023-08-29T15:29:18Z "Scenario:
I've just uploaded a new theme to my theme directory and I now want to activate it on a site. I head to the Appearance › Themes menu for that site and, whoops, I forgot to activate it on the network first. Now I need to:
1. Click my name in the header
2. Click Network Admin in the dropdown menu
3. Click Sites
4. Find the site and click Edit
5. Click Themes
From there I can enable the theme.
We're not done yet though. We need to traverse a minimum of two screens to get back to the Themes menu of the site (even more if the admin bar isn't enabled) in order to activate it.
Two things would make this process easier:
1. A link from the Themes screen to the Themes tab of the site in network admin, so five clicks become one.
2. The ability to activate a theme from the Themes tab of the site in network admin.
" johnbillion
Future Releases 18322 The Road to Magic Quotes Sanity jorbin Bootstrap/Load 3.2.1 normal normal Future Release defect (bug) reopened dev-feedback 2011-08-03T20:26:25Z 2023-06-26T20:19:27Z 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
Future Releases 18395 Non-URL GUIDs are stripped on post update Posts, Post Types 3.2.1 normal normal defect (bug) new 2011-08-13T18:31:48Z 2019-06-04T20:42:09Z "The post guid is run through several filters before the post is saved. the esc_url_raw() call will end up setting a GUID to an empty string if the GUID does not begin with a known/accepted protocol.
If a plugin/etc. wants to use the GUID column to store an external ID for an item brought in from another system (say a Flickr photo ID), then updating a post that has the Flickr ID as its GUID through the WP admin will end up setting the GUID for that post to ''.
This would need to be changed if the move was made to UUIDs for GUID values as well. Related: #6492.
A very basic patch for this specific issue is attached, but a larger discussion around how this should work is likely needed. Related: #18315" alexkingorg
Future Releases 18489 Create constants in default-constants.php for the uploads folder to allow better custom uploads location eddiemoya Upload 3.2.1 normal normal Awaiting Review enhancement reopened 2011-08-19T20:11:41Z 2019-05-15T21:10:46Z "There are cases in which a the uploads directory might need to be divorced WP_CONTENT_DIR, currently the only thing we can use is the UPLOADS constant, which works but is relative to ABSPATH and as such limits where the uploads directory can be moved to.
In default-constants.php we have constants for the wp-content, and plugins folder - the uploads folder is a natural addition to this. Currently there is only a poorly documented UPLOADS override in wp_uploads_dir, which can be overridden in wp-config.php. I also think there should be a similar constant for the themes folder, but I would that would be a bit more complex of a change.
I have create a new function in default-constants.php which introduce WP_UPLOADS_DIR and WP_UPLOADS_URL, which are called after wp_plugins_directory_constants() in wp-settings.php - because that function create WP_CONTENT_URL, which is needed in order to create WP_UPLOADS_URL.
It is important to note that I have not changed any of the precedent in terms of what overrides what - the uploads_path option still overrides the default location (or now, the potentially custom location) defined by the new constant, ''the old UPLOADS constant will still override either of them if it is set''. Thats the way it worked before and that behavior has been preserved.
Additionally, I have patched /wp-includes/function.php wp_uploads_dir to make use of these new constants as well as a little clean up of some related logic.
First patch to core - go easy." eddiemoya
Future Releases 18499 User count / roles inconsistency if roles no longer exist but users still do Users 3.2.1 normal normal defect (bug) new 2011-08-23T13:53:43Z 2019-06-05T06:38:18Z "The count_users logic (from line 833 onwards in wp-includes/user.php) is based on user roles.
If the roles were created by a theme or plugin which is then deactivated, wordpress loses count of the users, but still lists them. The behaviour is confusing and inconsistent. See attached screenshot.
1) the user count total at the top (all) ignores the users with no 'active' role, however users are all listed (the users are shown as 'no role' in the list)
2) the old roles are shown in the dropdown selection however are not listed in the totals
Suggestions:
1) the total user count should at the very least be correct wrt to the list.
2) Perhaps a total of 'no role' users could/should be shown (since the users are listed anyway ?)
3) If the old roles are shown in the dropdown, perhaps they should be flagged as inactive in some way?" anmari
Future Releases 18501 plugin_dir_path() returns unsanitized path on Windows installs Plugins 2.8 normal normal defect (bug) new dev-feedback 2011-08-23T18:40:29Z 2019-06-04T20:42:11Z "Currently plugin_dir_path() only returns the result of dirname( $file ), which can produce mixed results on local Windows installations.
Attached patch takes pieces from plugin_basename() and plugins_url() to guarantee a working and accurate plugin directory path is returned in all operating systems.
See #BB1596 (and associated revisions) for back-story." johnjamesjacoby
Future Releases 18523 Can't change page permalink if slug metabox is removed helen Permalinks 3.0 normal normal Future Release defect (bug) assigned 2011-08-26T14:42:56Z 2021-01-07T17:19:03Z "If the slug metabox is removed from the ""Edit Page"" page, it is not possible to change permalinks, using the edit permalink function at the top of the page.
Slug and other metaboxes are removed by the karma theme, in its admin/theme-functions.php (but only if 'ka_hidemetabox' in the wp_options table is 'true'):
{{{
remove_meta_box('slugdiv','page','normal');
}}}
Technically, without the slug box, the ""post_name"" field containing the new slug is not sent with the form data when you click the ""Update"" button.
I believe this is bug was introduced after version 3.1.3. " dankod
Future Releases 18563 Disallowing editing of .php files in the plugin editor blocks access to allowable extensions Plugins 2.8 normal normal defect (bug) new 2011-09-01T04:12:29Z 2019-06-04T20:42:15Z "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
Future Releases 18602 Media Library imported, but all items Unattached Import 3.2 normal normal defect (bug) new reporter-feedback 2011-09-06T10:10:18Z 2019-06-04T20:02:51Z "Export XML file from one site, import into another site. By checking ""Download and import file attachments"", files from wp-content/uploads are downloaded correctly to the new site, and added to Media Library. However all items in the Media Library are now ""Unattached"", and for example posts using [gallery] are broken on the new site. " awallin
Future Releases 18672 "Implement rel=""prev"" and rel=""next"" for archives" joostdevalk Permalinks 3.3 normal normal Future Release enhancement new 2011-09-15T12:37:23Z 2020-02-29T17:21:40Z "As can be seen here:
http://googlewebmastercentral.blogspot.com/2011/09/pagination-with-relnext-and-relprev.html
Google now uses rel=""prev"" and rel=""next"" to navigate paginated archives. As we already do a lot of these types of links (rel=""index"", rel=""start"" etc.) I think we should add these. I'll come up with a first version of a patch." joostdevalk
Future Releases 18743 Persistent redirect_to For Login, Registration, and Lost Password Login and Registration 3.3 normal normal enhancement new 2011-09-22T07:04:39Z 2019-06-04T20:02:54Z "Currently, if redirect_to is passed in to the login screen and then a user clicks Register or Lost Password, the redirect_to gets lost. I think that the redirect_to should be persistent and honored whether the user logs in, registers or gets a lost password.
I've written a hacky filter to do this, but I think this ought to be included in the core. Here's what I did:
{{{
//Keep redirect_to in URL
add_filter('site_url', 'foxyshop_add_registration_redirect', 5);
function foxyshop_add_registration_redirect($path) {
if ((strpos($path, ""action=register"") !== false || strpos($path, ""action=lostpassword"") !== false) && isset($_REQUEST['redirect_to'])) return $path . '&redirect_to='.urlencode($_REQUEST['redirect_to']);
if (substr($path, strlen($path)-12) == ""wp-login.php"" && isset($_REQUEST['redirect_to'])) return $path . '?redirect_to='.urlencode($_REQUEST['redirect_to']);
return $path;
}
}}}
(I know 3.3 is in freeze now, but there wasn't another version option)" sparkweb
Future Releases 18769 Admin should not break if URL changes Administration normal normal Awaiting Review enhancement new 2011-09-24T22:58:42Z 2022-02-06T14:07:17Z "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
Future Releases 18777 Support filtering of domain validation on Add New Site. Networks and Sites normal normal enhancement new 2011-09-26T11:41:32Z 2020-10-16T18:28:34Z "I've a client who wanted to add subdirectory sites in a multisite install e.g.:
example.com/department1/johnjoe
example.com/department2/fredbloggs
etc. But to do this, they had to add the site without the slash, then go back, and edit the sites URL.
So to allow support for this, ( coupled with the obligatory custom sunrise.php ) and to allow error checking ( e.g. not allowing depoortment1, and only allowing a preset number of subfolders ), I added a filter.
You'll find attached a small patch to site-new.php adding this filter" TJNowell
Future Releases 18791 Add custom post type support for Author Template functions Users 3.2.1 normal normal enhancement new needs-unit-tests 2011-09-27T12:32:48Z 2019-06-05T06:38:28Z "Functions defined in `wp-includes/author-template.php` assumes that post type == post. It will be good to enhance them so they will be able to work with specified post type.
At first sight following functions will need update:
{{{
get_the_author_link()
the_author_link()
get_the_author_posts()
the_author_posts()
the_author_posts_link()
get_author_posts_url()
wp_list_authors()
}}}
I suspect there will be other updates needed, to support new `post_type` argument added to author's url." sirzooro
Future Releases 18816 Add 'offset' parameter and 'ancestral' boolean to wp_nav_menu Menus normal normal enhancement new dev-feedback 2011-09-29T16:13:42Z 2019-06-04T20:02:57Z Since we can now call wp_nav_menu multiple times and there is the very useful 'depth' parameter, I believe adding an 'offset' parameter would be very beneficial in many situations. This would allow you to start at the children of the main pages for example and combined with depth it becomes very powerful. An 'ancestral' => 'true' option could output only menu items that the current page is a descendant of. Currently if you want to display a main menu in the header and then a submenu on page.php you either need a tricky custom walker or terrible CSS 'visibility:hidden' or 'display:none' situations. signyourbikeout
Future Releases 18836 ORDER BY RAND() is slow pbearne Query normal minor enhancement assigned has-patch 2011-10-01T16:59:04Z 2024-03-12T17:55:53Z "WP_Query currently accepts 'orderby' => 'rand' which translates to ORDER BY RAND().
This is very slow when you have many posts, since it effectively calls RAND() for each row.
A faster way would be to call RAND() only once and put it in the LIMIT clause.
The only thing is that we have to make sure that the generated number is smaller than (total number of posts - number of posts to fetch).
So, this would require to do an extra query to calculate the total. It should still be faster than the current method.
If we want to get more than one post, we can get them in any order and then call shuffle() on the resulting array." scribu
Future Releases 18842 wp_nav_menu confuses new developers when it falls through to page listing Menus 3.2 normal normal Awaiting Review defect (bug) reopened 2011-10-02T10:54:12Z 2017-09-20T19:42:00Z "It appears that when wp_nav_menu() falls through to a page listing, many menu-specific args are not passed to the page listing, which ultimately confuses new developers.
I seem to answer this at least weekly in #wordpress
One example is the 'container_class' arg, if it falls through to the fallback_cb, the container_class is not applied.
Ideally, template-related arguements should be passed to the fallback (And with pages as the default callback, it should handle these) or wp_nav_menu() should output any extra wrapping divs if appropriate." dd32
Future Releases 18909 Bundled jQuery UI should have CSS External Libraries 3.3 normal normal Future Release enhancement assigned close 2011-10-11T18:53:57Z 2024-03-28T18:55:52Z "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
Future Releases 19031 Category view incorrectly counting custom posts Posts, Post Types 3.2 normal normal defect (bug) new 2011-10-24T02:40:31Z 2019-06-04T20:42:32Z "If you define a custom post-type something like this:
{{{
Array
(
[taxonomies] => Array
(
[0] => category
[1] => post_tag
)
[label] => Book
[rewrite_slug] =>
[query_var] =>
[public] =>
[show_ui] => 1
[show_in_nav_menus] => 1
[publicly_queryable] =>
[exclude_from_search] => 1
)
}}}
Even if the post-type is NOT public or NOT publicly_queriable (see above), the counts of the posts in each category still shows, totally ignoring the settings of the post-type.
== Expected Output ==
I would expect the count to be related to the results displayed. If there are no visible results for that category (i.e. the user can't see them due to public settings), I would expect the count to go to zero.
== Actual Output ==
The count of posts in the given category seems to have nothing to do with the visible results.
This is related to this bug: #18950" fireproofsocks
Future Releases 19307 "Need ability to export ""All content"" but limited to date range" Export 3.1 normal normal enhancement new 2011-11-20T23:19:43Z 2019-06-04T19:43:35Z "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
Future Releases 19493 post and archive pagination don't work with custom endpoints Rewrite Rules 2.1 normal normal Awaiting Review defect (bug) new 2011-12-09T23:55:09Z 2018-01-25T20:22:02Z "Archive pagination and post pagination are not endpoint-aware, so they break when endpoints are added to them.
The following example code creates an endpoint, and then uses a filter to add that endpoint to various links on the rendered page:
{{{
add_action( 'init', function() {
global $wp_rewrite;
add_rewrite_endpoint( 'foo', EP_ALL );
$wp_rewrite->flush_rules(false);
} );
add_filter( 'post_link', 'gist_add_endpoint_to_url', 99 );
add_filter( 'get_pagenum_link', 'gist_add_endpoint_to_url', 99 );
function gist_add_endpoint_to_url( $url_base ) {
$endpoint = 'foo';
$url_parts = parse_url( $url_base );
$url = ( isset($url_parts['scheme']) && isset($url_parts['host']) ) ? $url_parts['scheme'] . '://' . $url_parts['host'] : '';
$url .= isset($url_parts['path']) ? $url_parts['path'] : '';
$url = user_trailingslashit( $url );
if ( '' === get_option('permalink_structure') ) {
$url .= isset($url_parts['query']) ? '?' . $url_parts['query'] : '';
$url = add_query_arg( $endpoint, 'true', $url );
} else {
$url .= $endpoint . '/true';
$url = user_trailingslashit( $url );
$url .= isset($url_parts['query']) ? '?' . $url_parts['query'] : '';
}
$url .= isset($url_parts['fragment']) ? '#' . $url_parts['fragment'] : '';
return $url;
}
}}}
You'll see that it works perfectly using the theme unit test, except that paginated posts produce URLs like this:
http://example.com/2008/09/layout-test/foo/true/2/
...which doesn't work. The inverse -- http://example.com/2008/09/layout-test/2/foo/true/ -- also doesn't work, and produces a 404 on top of it.
Also, the older posts / newer posts produce this format of link:
http://example.com/page/2/foo/true/
.. .which also doesn't work.
If you change gist_add_endpoint_to_url() to add a querystring param, older posts/newer posts links work fine, but post pagination still breaks:
{{{
function gist_add_endpoint_to_url( $url_base ) {
$endpoint = 'foo';
$url_base = add_query_arg( $endpoint, 'true', $url_base );
return $url_base;
}
}}}
If you don't use a permalink structure at all, it works fine, since the pagination params are passed directly in the URL.
I'm not sure if the fix lies in modifying add_rewrite_endpoint() so that it creates pagination urls in wp_rewrite, or modifying the way _wp_link_page() and get_next_posts_link() work. " mintindeed
Future Releases 19572 switch_to_post() stack implementation (similar to switch_to_blog()) Posts, Post Types 3.3 normal normal enhancement new 2011-12-15T21:54:57Z 2019-06-04T20:42:36Z "One of the challenges themes and plugins have is the balance between utilizing the core APIs that rely on global variables, while leaving things in a ""clean"" state for the next worker in the chain.
For example, I might have a shortcode that pulls content from another post, outputs a title or some other data, then needs to restore the previous post environment. The attached patch provides APIs for doing just this - using the same stack approach that switch_to_blog() takes in a multi-site instance.
To set up a post context, call: switch_to_post($post_id);
This can be called multiple times, diving deeper into the stack. Then each process is responsible for restoring the $post context by calling: restore_post();
This goes back to the stack, bumps out the current post and restores the previous post's context.
There is some test code for demonstration here:
https://gist.github.com/1309915" alexkingorg
Future Releases 19590 Warnings when unregistering core taxonomies and post types Taxonomy 3.3 normal normal defect (bug) new 2011-12-17T18:40:49Z 2019-06-04T21:07:20Z "'''number_format_i18n''' (/wp-includes/functions.php, line 155) will raise a warning when the first parameter ''$number'' is not a double/float, which happens when it receives the value 0.
The error only shows up in the dashboard with a locale active (es_ES) in this case, screenshot attached.
The fix would be to cast the received value to float.
Current function,
{{{
function number_format_i18n( $number, $decimals = 0 ) {
global $wp_locale;
$formatted = number_format( $number, absint( $decimals ), $wp_locale->number_format['decimal_point'], $wp_locale->number_format['thousands_sep'] );
return apply_filters( 'number_format_i18n', $formatted );
}
}}}
Fix,
{{{
function number_format_i18n( $number, $decimals = 0 ) {
global $wp_locale;
$formatted = number_format( (float) $number, absint( $decimals ), $wp_locale->number_format['decimal_point'], $wp_locale->number_format['thousands_sep'] );
return apply_filters( 'number_format_i18n', $formatted );
}
}}}
It's the first bug i report here, so correct me if I'm doing it wrong.
" xmarcos
Future Releases 19686 404 - File or directory not found Permalinks 3.3 low normal defect (bug) new dev-feedback 2011-12-29T19:47:45Z 2019-06-04T21:03:41Z "We are running Wordpress using multiuser with Buddypress. Users are getting the 404 error after they click the save button in their settings.
I'm opening this ticket to report the source of the problem.
Wordpress 3.x
Buddypress 1.5
Windows 2008 R2 (IIS 7.5)
Themes installed are all Buddypress compatible and all themes seem to be affected.
All option pages are affected.
Settings are updated when the user returns to the page - despite the error. A screen shot of the error can be seen at http://blogs.cnc.bc.ca/gagel/?attachment_id=38
The source of the problem appears to be in the wp_get_referer() function on line 164 in options.php. With the variables passed to the function it should redirect the user to the page they just submitted when they updated options. Instead they get the 404 error.
The page they're redirected to appears to be the absolute path of the submitted page appended to the absolute path again (minus the domain). So it looks like this:
userblog/wp-admin/userblog/wp-admin/options-general.php?settings-updated=true
When I switch out the wp_get_referrer() function with the variable $parent_page then the redirect worked as expected.
I'm uncertain about leaving it like this as my change may have introduced issues elsewhere...
This issue is discussed at http://wordpress.org/support/topic/recuring-404-file-or-directory-not-found-error?replies=8#post-2527566" kwgagel
Future Releases 19707 admin-ajax.php requests via http regardless of force_ssl_admin() state Administration normal normal Awaiting Review enhancement reopened 2012-01-01T00:53:52Z 2018-03-06T13:31:02Z "Noticing these requests failing:
""NetworkError: 403 Forbidden - http://HOSTNAMEwp-admin/admin-ajax.php""
My server explicitly denies http to wp-admin. SSL only.
Looks like admin_url() is giving http rather than https. I suspect this bug actually lies somewhere in get_site_url(), but I don't have time to triage this right now.
This is technically a security bug since WP should always obey force_ssl_admin(), but I don't think anything is being leaked or compromised. You don't get access to anything, and nothing being sent over the wire is sensitive since it still obeys the rules of the protocol (cookie is secure). It's just a nuisance." robertaccettura
Future Releases 19724 Sites with IDN domains can't be created (bug #15554 continuation) Networks and Sites 3.3 normal normal defect (bug) new 2012-01-03T17:44:08Z 2019-06-04T20:03:05Z "registration of new site with idn domain by unknown/new users themselves is not possible.
(though creation of new site in wp-admin/network/site-new.php page is possible, by patch given in bug #15554 , i have just now tested it.)
also let i mention that site domain is written (and would be requested to enter, if would be fixed without punycode to unicode conversion) in punicode form in wp-signup.php page, that is not acceptable for wordpress.
i have attached differences i made to wp 3.0.4 to make idn domains working and also to show and accept them in human readable format in wp-signup.php page . link to the differences file i attached to/in previous bug report on/to this topic: http://core.trac.wordpress.org/attachment/ticket/15554/diff304-blogo.txt ." qdinar
Future Releases 19747 Roles add_cap should call update_user_level_from_caps() Role/Capability 3.3.1 normal normal Awaiting Review defect (bug) reopened 2012-01-05T11:17:32Z 2022-05-13T22:08:51Z "Hey guys,
I've created a new user role, which didn't appear in the Author drop down list due to #16841. The workaround is to add a level_1 capability to that user, but because wordpress doesn't call update_user_level_from_caps() function when you add_cap, that isn't actually applied to existing users on the role, and you have to move them to a different role and back again if you want to apply the changed user role.
I'd suggest adding a call to update_user_level_from_caps() to add_cap (and remove_cap) to fix this in wp-includes/capabilities.php" lgladdy
Future Releases 19764 Invalid JSON in custom fields meta value after export Import 3.3 normal normal defect (bug) new 2012-01-06T17:13:07Z 2019-06-04T20:03:07Z "Hey there,
I exported a working copy of my online WordPress site to a local copy and noticed that the code gets changed; The backslash is removed which causes the json format to be invalide.
Original code in the custom fields meta
{{{
{""videos"":{""0"":""""}}
}}}
Becomes in the local site after import
{{{
{""videos"":{""0"":""""}}
}}}
" abdessamad idrissi
Future Releases 19834 More Robust Capabilities for Attachments Media normal normal Awaiting Review feature request new 2012-01-15T00:43:40Z 2020-09-10T14:05:33Z "Attachments/files should have their own set of capabilities mirroring those of posts, in addition to upload_files. Specifically:
- read_attachments
- edit_attachments
- edit_others_attachments
- delete_attachments
- delete_others_attachments
Currently, attachments rely on the edit_posts capability, which can create complications if you don't want your users to see the ""Posts"" sidebar item, or don't want them to be able to delete the attachments they upload. " walkinonwat3r
Future Releases 19859 """Bulk Edit"" Missing The Ability To Edit Tags" oglekler Quick/Bulk Edit normal normal Future Release enhancement reopened 2012-01-20T02:56:24Z 2024-02-12T09:21:55Z "Though I can add, remove and edit ""categories,"" I cannot do such actions to ""tags"" inside of /wp-admin/edit.php
So basically, I'm interested in a ""bulk tag editing"" GUI for the WordPress admin.
===
I was hoping to find out the status of this feature (planned, not planned, etc) but it appears that no one has spoken about this feature on the WordPress Trac.
Is there any interest in adding this feature? And could the respondent please provide any details on why or why not?
Thank you for your time." ademos
Future Releases 19867 wp_dropdown_users() still not scalable Users 3.3.1 normal normal Future Release enhancement assigned 2012-01-20T22:04:27Z 2024-03-25T02:34:10Z #14572 made huge improvements to the performance of wp_dropdown_users(), however, on certain sites that have an unusually large set of authors, wp_dropdown_users() still isn't usable. It either causes a memory error on the server, or potentially crashes the client browser due to content size. prettyboymp
Future Releases 19896 Non-WP rewrites not saved on a multisite install Rewrite Rules 3.0 normal normal Awaiting Review defect (bug) new 2012-01-25T16:14:20Z 2017-08-22T14:29:46Z "The following code adds a rewrite rule which is classed as a non-WP rewrite rule because its redirect doesn't begin with `index.php`, and is stored in the `non_wp_rules` member variable of the `WP_Rewrite` class.
{{{
function my_rewrite() {
add_rewrite_rule( 'login/?$', 'wp-login.php', 'top' );
}
add_action( 'init', 'my_rewrite' );
}}}
On a single site install, this rewrite rule gets saved directly to the .htaccess file rather than being added to WordPress' internal rewrite array.
On a multisite install, this doesn't happen and the rewrite rule has no effect (probably because once a site is multisite-d WordPress no longer writes to .htaccess). The rule has to be manually added to .htaccess.
Likely introduced in 3.0, reproduced in 3.3 and trunk." johnbillion
Future Releases 20019 wpmu_validate_blog_signup(): Allow '.' and '-' in blog names Login and Registration 3.0 normal normal enhancement reopened dev-feedback 2012-02-10T23:04:29Z 2019-06-04T20:03:10Z "Canonical uses Wordpress 3.x multisite as part of voices.canonical.com, for employees who do not have or wish to list their personal blog. The code is stock, except for one patch we maintain, which allows blog names (currently in WP as lowercase alphanumeric only) to also include '.' and '-'. This matches our global username format.
Attached is a patch extending wpmu_validate_blog_signup() to allow '.' and '-', with a tweak for the error text. We have been running the patch for awhile, and have not run across any problems with the rest of the code accepting this." fo0bar
Future Releases 20044 Enable search for pages by slug Query 3.7 normal normal enhancement new 2012-02-14T22:17:58Z 2019-06-04T20:42:51Z "Would be nice to be able to search a page by its slug. Might need to be a bit different depending on the permalink-strategy.
Steps to reproduce(with Post name-permalinks enabled):
1. Create a new page with a specific slug
2. Save page
3. Search for the exact slug-name
" ekitomat
Future Releases 20057 Media upload for multi-webserver setups introduces a nasty race condition that could corrupt uploaded files Media 3.3.1 normal normal defect (bug) new 2012-02-17T05:46:40Z 2020-02-26T20:25:24Z "I am in the process of scaling a Wordpress blog with several million monthly pageviews, and I have designed a plan to scale it in the highest availability manner possible.
'''The setup'''
Each web server that hosts HTML/PHP, static files, and uploads will be replicated via rsync from time to time and sitting behind a load balancer. Rsync will run every 5min to 1 hour, and to mitigate the 404s in the uploads, I put together an nginx setup that automatically tries a different upstream server in its configuration when it encounters 404s. This allows any web server to go down at any time, and the system to run as if nothing happened. This also gives me freedom for rsyncing periodically rather than immediately and avoids 404s completely.
'''The problem'''
Now, the bug (note, I'm using Windows Live Writer which automatically names uploads image.png, but I could see this potentially happen without WLW too since WP seems to automatically name files on disk in case of collisions).
Let's say we have server A and B. The site name is foo.com. Let's also say B is out of date by an hour and a bunch of files got uploaded to A that aren't on B. Say, A has image.png and image2.png and B has only image.png.
Now, the issue is that if the load balancer directs the new post uploader (the new post contains a single image) to server B, the file that it will create on disk will be named image2.png rather than image3.png. So now B will have a file that's different from A's but is named the same way.
The main problem is that the file name is given based on what's available on the disk rather than according to the database. It's easy for this race condition (between rsyncs) to destroy the integrity of the files. Furthermore, and I've experienced this first hand), if you delete the attachment from the Wordpress UI, it could actually delete the wrong file from the wrong server as a result.
Seeing this, I can't continue with my scaling plan until file names are assigned by the database rather than the file system or I figure out how to mitigate that. I don't want to force all writers to use only server A for uploads using its direct IP, as I want HA (high availability).
Thank you." archon810
Future Releases 20070 Deprecate Blogger XML-RPC Methods XML-RPC 3.3 normal normal Future Release enhancement new dev-feedback 2012-02-18T18:32:26Z 2020-09-21T19:41:58Z "The XML-RPC API supports the legacy Blogger API methods, but these methods have apparently not been very well tested or maintained.
Given that the `wp.*` XML-RPC namespace now covers everything that the Blogger API does, I suggest the blogger methods be officially deprecated with an eye towards removing them in a future version.
At the very least, the MetaWeblog API should be used by clients instead, as it was explicitly designed to enhance and supersede the Blogger API." maxcutler
Future Releases 20109 Valid htaccess rule causes 404 after upgrade to 3.3.1 Rewrite Rules 3.3.1 normal normal defect (bug) new 2012-02-24T06:26:42Z 2019-06-04T21:07:25Z "On 2/18/2012, I upgraded WP from 3.2.1 to 3.3.1. on www.denverhomevalue.com. I later noticed that Google webmaster tools started reporting 404 errors on lots of pages that were fine before. WP was still returning the proper pages and content, not my custom 404 page, so the issue was not readily apparent except in WMT reports. Running http header response checkers confirmed 404 responses, despite good contents being returned.
Deleting sections of the htaccess file until the problem went away, the issue was isolated to two rules meant to escape following rewrite rules on certain urls:
{{{
RewriteRule ^city(.*) - [L]
RewriteRule ^areas(.*) - [L]
}}}
These were the same family of urls that started returning 404s after 3.3.1 upgrade. These rules were in place since 12/5/2011, with WP 3.2.1 and never caused a problem.
I was able to revert a backup of the site to 3.2.1, on the same exact server environment, and confirm that these same valid htaccess rewrite rules were not a problem in that release." ronnieg
Future Releases 20152 Multisite simplify option name to user_roles Role/Capability 3.3.1 normal normal Future Release enhancement new 2012-03-01T21:44:28Z 2018-09-18T16:24:40Z "Currently each blog in a MS install of WP stores an array of user roles in it's [prefix]_[$blog_id]_options table as an entry with the key [prefix]_[$blog_id]_user_roles
This makes it much harder to migrate MS install of WP to a different db prefix, etc. because not only do you need to change the table prefixes you need to go into each blog's options table and then properly update that option's key.
Because the table itself is sufficiently unique there isn't a need for this. The user roles array could be stored in an option called ""user_roles"" for each blog." colind
Future Releases 20194 Add Description meta to General Settings General 3.3 normal minor Awaiting Review feature request new 2012-03-07T20:59:05Z 2021-08-10T05:46:44Z "Add a description field to General Settings b/c these days with themes doing all kinds of kooky things, the automatic excerpt is often not representative of the site content. All the SEO-lovers will be happy, searchers will get more accurate results, and it's a nice end-user feature without high overhead.
Could have sworn I made a ticket like this once before, but can't find it in search, so if anyone remembers it/is better at searching trac than I just was, go ahead and close this as duplicate." jane
Future Releases 20205 Add the ability to filter wp_get_attachment_image() Media 3.4 normal normal enhancement new 2012-03-08T20:21:16Z 2019-06-04T20:03:15Z "i'm working on a plugin that lets users define any image to serve as the thumbnail for any PDF document. I'm storing the ID of the image as post_meta for the PDF attachment. Instead of showing the default icon with wp_get_attachment_image() I'm quite close to being able to do this by filtering image_downsize.
the trouble is that the image_downsize filter it run ''after''
{{{
if ( !wp_attachment_is_image($id) )
return false;
}}}
so the PDF image fails the test and I never have a chance to run my filter.
" helgatheviking
Future Releases 20214 Pingback discovery doesn't strip fragment identifiers from URL Pings/Trackbacks 3.3 normal normal defect (bug) new dev-feedback 2012-03-11T08:34:46Z 2019-06-04T20:42:58Z "To reproduce:
1. Insert a link containing a fragment identifier into a post, e.g., `http://localhost/wp/helloworld/#comments`.
2. Save post.
3. Observe the URL which !WordPress attempts to retrieve in `discover_pingback_server_uri()` - the requested path contains the `#fragment_identifier`, which it shouldn't, and in most cases will result in a 404, thus the pingback fails." solarissmoke
Future Releases 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 enhancement new dev-feedback 2012-03-22T14:42:36Z 2019-06-04T19:22:53Z "For the sake of Search Engine Optimization it's recommended to set canonical URL inside 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
Future Releases 20289 wp_nav_menu container is not set when menu isn't defined Menus 3.3 normal normal defect (bug) new dev-feedback 2012-03-23T10:27:03Z 2019-06-04T20:03:19Z "When you use wp_nav_menu in your theme, but the actual menu isn't set via the backend menu interface, the container provided in the args is ignored and falls back to 'div'.
Attached diff always uses container provided in args, if 'div' or 'nav' is provided. If no container arg is provided, falls back to using 'div'.
{{{
wp_nav_menu(
array(
'theme_location' => 'main_menu',
'container' => 'nav',
'menu_class' => 'main-menu-navigation',
)
);
}}}
To test this: Use this function in your theme, without assigning a menu to this theme_location." dannydehaan
Future Releases 20325 Menu item parent classes for page_for_posts (home.php) not properly set on single.php Menus normal normal defect (bug) new 2012-03-29T12:50:06Z 2019-06-04T20:03:21Z If one has set page_for_posts (Settings => Read), on single.php wp_nav_menu() will set current_page_parent for the accordant menu item, but it will not set any parent or ancestor classes for its parent menu items as expected. [tested with 3.3.1] ptietz
Future Releases 20368 htmlspecialchars() returns empty string for non-UTF-8 input in PHP 5.4 Formatting normal major defect (bug) new needs-unit-tests 2012-04-05T12:43:23Z 2019-06-04T19:43:43Z "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
Future Releases 20386 "Year permalinks ""win"" against category permalinks" Canonical normal normal defect (bug) new needs-unit-tests 2012-04-07T05:20:55Z 2019-06-04T19:22:56Z "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
Future Releases 20437 WP Upgrader filter to allow plugins to upload to existing directory Upgrade/Install 3.3.1 normal normal enhancement new reporter-feedback 2012-04-13T16:52:30Z 2019-06-04T21:07:27Z "Our plugin for WP uses various elements of the WP upgrader class to manage plugins for our plugin. ;) This has worked great except when we went to extend it further and allow uploading of plugins through the WP Upgrader class much like you can with WP plugins.
The issue is that currently, the WP Upgrader class is coded to expect the upload destination to be empty - EXCEPT if the upload destination (the base directory) is one of these hard coded locations:
in_array( $destination, array(ABSPATH, WP_CONTENT_DIR, WP_PLUGIN_DIR, WP_CONTENT_DIR . '/themes') )
So since our plugin storage location is not one of those, it fails since there may already be some plugins there.
Sure would be nice if that array of locations that does not have to be empty (the important base dirs which allow dropping down a directory level)... a simple filter would accomplish this...
Hope its not too late in 4.3 for a simple filter..." usermrpapa
Future Releases 20438 Custom Post Types with Post Format support aren't registered against post_format taxonomy Posts, Post Types normal normal Awaiting Review defect (bug) reopened 2012-04-13T16:56:40Z 2022-05-13T22:06:11Z "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
Future Releases 20459 Super admin should be able to bypass banned/limited domains when creating users Users normal minor enhancement new dev-feedback 2012-04-16T16:12:25Z 2019-06-05T06:38:31Z "The function `wpmu_validate_user_signup()` is run whenever a new user is created, either through self-registration (wp-signup.php) or through manual user creation by an admin. `wpmu_validate_user_signup()` does two different kinds of validation:
(1) validation that is more or less technically required by WP, like spaces in usernames, email/login uniqueness, etc.
(2) checks against some admin-set membership restrictions, namely, email domain whitelist (limited_email_domains) and blacklist (`is_email_address_unsafe()` and banned_email_domains).
The second kind of validation is problematic in the following use case: An MS install might restrict open membership based on email domains, but the admin might occasionally want to make exceptions to the rule and manually create an account. Currently, there are two ways to bypass the built-in checks: to temporarily remove the domain restrictions at Network Admin > Settings, or to filter `'wpmu_validate_user_signup'` and remove the error messages.
Having to manually change settings for this purpose is pretty hackish. The filter method works, but my experience (from consulting with a fairly large number of MS network admins) is that this is a pretty common use case, so it seems like it should be supported by default.
So I'm proposing that the domain checks be skipped when `is_super_admin()`. Patch attached." boonebgorges
Future Releases 20520 Author Page Pagination Broken When Removing /author/ Slug Rewrite Rules 3.3 normal normal defect (bug) new 2012-04-23T04:16:03Z 2019-06-04T21:07:29Z "WP 3.3.1 Multisite
Permalink setup: /author/post-name
- If the request is ""domain.com/authorname"" the authors page pagination link is broken.
- If the request is ""domain.com/author/authorname"" the authors page pagination link works fine." rbaccaro
Future Releases 20558 allow wp_localize_script data to be added to existing objects Script Loader 3.3 normal normal enhancement new dev-feedback 2012-04-27T16:44:03Z 2019-06-04T21:07:31Z "Re: WP_Scripts::localize() located in wp-includes/class.wp-scripts.php
Currently when `WP_Scripts::localize()` handles the printing of wp_localize_script data to JavaScript, it starts the string with a `var` declaration, like this:
{{{
$script = ""var $object_name = "" . json_encode($l10n) . ';';
}}}
Because this is printed in the global scope, it becomes a global variable regardless of whether it's preceded by `var`. As far as JavaScript is concerned the above string would be equivalent to:
{{{
$script = $object_name . ' = ' . json_encode($l10n) . ';';
}}}
or
{{{
$script = 'this.' . $object_name . ' = ' . json_encode($l10n) .
';';
}}}
or
{{{
$script = 'window.' . $object_name . ' = ' . json_encode($l10n) .
';';
}}}
But I suppose it's possible thru hooks to make it so that the localization data prints outside of the global scope, in which case you might want the `var` to be there (if it we're wrapped in a closure). So I think the '''overall best solution''' would to check if the `$object_name` contains a period `.` character. If it does, omit the `var`. In other words, make it so that:
{{{
wp_localize_script('myplugin', 'myPluginData', $object )
}}}
would print:
{{{
var myPluginData = {...};
}}}
but that:
{{{
`wp_localize_script('myplugin', 'myPlugin.data', $object )`
}}}
would print:
{{{
myPlugin.data = {...};
}}}
By default the localization data runs before any enqueued scripts, in which case `myPlugin` would not yet be defined, but we should leave that for the JavaScript dev work out. My point is that the flexiblity should be there. Another route would be to apply a filter on that line but I don't think a filter is necessary if the above change is made." ryanve
Future Releases 20578 Allow users to delete a plugin without uninstalling Plugins normal normal Future Release enhancement reviewing 2012-05-01T01:18:35Z 2021-08-27T15:40:46Z Sometimes, a user may need to delete plugin files without deleting all the plugin data. scribu
Future Releases 20596 Adding more actions to a widget Widgets normal normal enhancement new dev-feedback 2012-05-02T00:14:28Z 2019-06-05T06:38:33Z "On the Widget UI, there is a ""Close"" button, aside with the ""Delete"" button, and I that developers should have a way to add more of those.
For exemple, I would see as a good use case when you have a way of previewing the widget.
Because right now the only way is by JS which is kinda of lame.
Thanks," webord
Future Releases 20597 Allow WP_Comment_Query::query to filter by category Comments 3.4 normal normal enhancement new needs-unit-tests 2012-05-02T03:35:35Z 2019-06-04T19:23:03Z "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
Next Release 20602 Replace media Media 3.3.1 normal normal enhancement reopened 2012-05-02T13:29:45Z 2023-10-18T23:58:59Z "I have been developing themes for clients lately that require the same image across the theme in varying places. A good example is an event site where the image is a badge/sticker showing the price of the tickets. This gets output on various pages in varying locations.
get_attachment_link is perfect as I can plugin a single ID and use the graphic wherever. However, the ticket prices change as the event gets closer and the graphic needs to be updated which breaks the theme in production when my client does so as a new ID is generated.
This doesn't make too much sense to me. I've worked with and developed CMSs of all kinds and usually the ID is preserved.
I would at least like the option, perhaps a checkbox, to indicate I want to reupload a new image. I think it's more common that an update on a media item would be to modify the same logical graphic rather than just replacing it with something entirely new.
I found the following plugin but I feel this really ought to be core.
http://wordpress.org/extend/plugins/enable-media-replace/
Thanks for your consideration." PorridgeBear
Future Releases 20652 Install plugins with FTP upload, virtual subdomain, bad base dir? dd32 Filesystem API 3.3 normal normal defect (bug) reopened 2012-05-10T12:02:48Z 2019-06-04T19:43:46Z "Hi anybody!
I have problem with install plugins with FTP module in WP.
Everything show as OK, but plugin directory is bad. I have subdomain
sub.something.com - this is virtual subdomain from mod_rewrite
dirs are
/www/something.com/something.com[[BR]]
/www/something.com/sub.something.com - here is WP installation, subdomain is virtual from rewrite in httpd.conf
After install - WP say everything OK - but one thing is bad.[[BR]]
Upload is in bad directory - plugin I can found in[[BR]]
/www/something.com/something.com/plugins[[BR]]
no in /www/something.com/sub.something.com/plugins[[BR]]
Is here some way to fix it automatticaly or I can must edit config and basedir of ftp? Why is here this bug?
Thank you !
Pavel
" rajcz
Future Releases 20739 Improve Excerpt generation for non-english locales I18N 3.4 normal normal Future Release enhancement new 2012-05-23T21:09:45Z 2024-02-28T16:40:01Z "This is a follow on from #16079 to further improve the code.
While we improved it in 3.4 we can do a better job to more fully support the customisation for all different locales.
For known issues see the comments on the previous ticket." westi
Future Releases 20748 Include CPT Posts in Author Count & Archive Page Posts, Post Types normal normal enhancement new 2012-05-25T17:59:48Z 2019-06-04T20:43:09Z "For whatever reason, the default behavior is to only count the number of 'post' that an author has published.
With the advent of custom post types, they should be included as well if the CPT has the 'author' capability.
Currently, the author archive can include CPTs if you manually alter the query - this should be enabled by default if authorship is allowed." iridox
Future Releases 20846 Multisite: Network Users can post comments without being members of the site Comments 3.0 low minor Future Release defect (bug) new 2012-06-05T14:35:41Z 2020-05-05T16:27:27Z "This is probably an 'ever since inception' issue and I can replicate it on 3.4
Setup:
Have a user added to your network but '''not''' to a site (domain.com/test).
Set up domain.com/test to only allow registered users to comment. Remember, we've not added this new user to the site, just the network.
Log in as that user and go to domain.com/test
Oh look! You can comment as a 'registered' user.
This should be check for 'Is this a user ''and'', if multisite, is this user a member of the site?'
It's that or the wording needs to be clearer that anyone registered on the network can comment." Ipstenu
Future Releases 20853 get_post_custom show directly serialized data from the post_meta arrays. Options, Meta APIs 1.5 normal normal defect (bug) assigned dev-feedback 2012-06-06T05:39:23Z 2019-06-04T20:43:13Z "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
Future Releases 20854 PHP warning caused by missing 'spam' and 'deleted' fields in a custom user table Nikolaos Raftopoulos Users 3.3.2 normal normal Future Release defect (bug) reopened 2012-06-06T12:45:29Z 2020-09-30T19:40:38Z "In my network dashboard I get the following error message :
Warning: number_format() expects parameter 1 to be double, string given in /home/tklighth/public_html/wp-includes/functions.php on line 155" leondari
Future Releases 20859 Theme Installer: Preview should be scrollable on iPad and Kindle Fire Themes 3.4 normal normal defect (bug) new 2012-06-06T21:51:09Z 2019-06-04T21:07:35Z "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
Future Releases 20947 feature request: one-click update for core, themes and plugins (all in one) Upgrade/Install normal normal Awaiting Review feature request new dev-feedback 2012-06-13T22:48:50Z 2018-08-13T17:00:35Z I'd love to have the one-click update be truly one-click so that you can click once and update core, themes and plugins all at once as opposed to having to initiate three different updates. jkudish
Future Releases 20977 Add Dynamic Comment Statuses Comments 3.4 normal normal Future Release enhancement new dev-feedback 2012-06-15T17:12:07Z 2020-01-14T02:35:50Z It would be great to add some filters/actions that would allow plugin developers to add additional statuses to comments. supercleanse
Future Releases 21096 Filter on is_front_page return value Query normal normal enhancement new 2012-06-28T10:32:03Z 2019-06-04T20:43:16Z "When you set a page (as 'placeholder' with same slug) as front page which is actually a post type archive to front page, is_front_page() will always return false on that page. The return value of the is_front_page() function is not filterable.
Attached patch adds this filter in the most basic way." CoenJacobs
Future Releases 21132 "List tables' ""select all"" should let you really select all, regardless of screen options" Posts, Post Types normal normal Awaiting Review enhancement new 2012-07-02T04:38:38Z 2017-06-08T06:51:24Z "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
Future Releases 21171 jQuery Events for Metaboxes Administration normal minor enhancement new 2012-07-05T21:35:47Z 2019-06-04T19:23:09Z "Currently, when a plugin adds a metabox with complex objects (like TinyMCE, Maps, CodeMirror etc) care must be taken to refresh the objects when the elements are moved (including hidden/shown).
After some digging, I've found that this seems to works in most cases:
{{{
var context = ""#custom_meta_box_id"";
$( '#adv-settings' ).on( 'click', context + '-hide, ', refresh );
$( context ).on( 'click', '.hndle, .handlediv', refresh );
$('.meta-box-sortables').bind( ""sortstop"", refresh );
}}}
which isn't terrible, but seems fragile if core changes in the future, and there should just be a better way :-)
Two ideas from dev chat are triggering custom events or the (coming soon) ""js actions"" which would be more robust (like php actions)." WraithKenny
Future Releases 21211 Alter how settings_errors are output in options.php Administration 3.4.1 normal normal defect (bug) new dev-feedback 2012-07-10T23:44:37Z 2019-06-04T19:23:12Z "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
Future Releases 21234 Recursive directory creation & get_calendar() for custom post types Posts, Post Types 3.4.1 normal normal defect (bug) new 2012-07-12T12:31:28Z 2019-06-04T20:43:17Z "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
Future Releases 21256 New theme feature - add_theme_support( 'content-width', $defaults ) chriscct7 Themes 3.4.1 normal normal Awaiting Review feature request assigned dev-feedback 2012-07-13T10:08:34Z 2018-11-22T22:16:27Z "Themes use '''$content_width''' variable to set the content area width, they use:
{{{
if ( ! isset( $content_width ) )
$content_width = 500;
}}}
This method has two flaws, it's not flexible and it does not support different sizes for different post-types.
WordPress has to make the content-width to be a builtin theme feature using '''add_theme_support()''', and make it more flexible and easy to update. I want to update this value using the Theme Customizer rather editing the function.php file.
The code needs to be easy to set and to support CPT, some thing like this:
{{{
$defaults = array(
'post' => '500',
'page' => '500',
'attachment' => '650',
'artist' => '300',
'movie' => '400'
);
add_theme_support( 'content-width', $defaults );
}}}
Just an idea for 3.5." ramiy
Future Releases 21352 wp_lostpassword_url() on multisite Login and Registration 3.3 normal normal Future Release enhancement new 2012-07-23T15:58:23Z 2021-10-20T15:03:43Z "The wp_lostpassword_url() function on Multisite outputs the link to the primary domain not the current domain.
Although it works its not what should be expected if a user is registered to use blog ID 2 but not Blog ID 1.
The lost password email generated also links back to the primary domain not the current domain.
" philly max
Future Releases 21374 Add core support for letting custom permalink structure for different post types Rewrite Rules 2.9 normal normal enhancement new 2012-07-25T14:42:15Z 2019-06-04T21:07:39Z "By default, custom post types uses only the'' %postname%'' permalink structure (if using pretty links and not default query variables).
Currently there is no native way to easily have different permastructs for different CPT.
This features should be added to the '''register_post_type()''' function, letting different permalink structure be defined to each post_type being registered.
I sugget adding another new key to the '''rewrite''' array that can be passed to the '''register_post_type()''' function.
i.e. -
{{{
register_post_type('event',array(
......
'rewrite' => array('slug' => 'events',
'permastruct' => '%year%/%monthnum%/%event%'
),
.....
));
}}}
The register_post_type function should be changed, a suggestion for such a change may be that instead of this line in the function - (post.php line#1075)
{{{
add_permastruct( $post_type, ""{$args->rewrite['slug']}/%$post_type%"", $args->rewrite );
}}}
This example could be used -
{{{
if ( $args->rewrite['permastruct'] ) {
$perma_structure = $args->rewrite['permastruct'];
$wp_rewrite->add_rewrite_tag(""%{$post_type}%"", '([^/]+)', ""{$post_type}="");
$wp_rewrite->add_permastruct($post_type, $archive_slug.'/'.$perma_structure, false);
}
else {
add_permastruct( $post_type, ""{$args->rewrite['slug']}/%$post_type%"", $args->rewrite );
}
}}}
In order that the structure can interpret the permastruct tags, I added also this function to filter post_type_link, it is adapted from '''get_permalink''' function in ''wp-includes/link-template.php'' -
{{{
add_filter('post_type_link', 'tc_permalink', 10, 3);
function tc_permalink($permalink, $post_id, $leavename) {
$post = get_post($post_id);
$rewritecode = array(
'%year%',
'%monthnum%',
'%day%',
'%hour%',
'%minute%',
'%second%',
$leavename? '' : '%postname%',
'%post_id%',
'%category%',
'%author%',
$leavename? '' : '%pagename%',
);
if ( '' != $permalink && !in_array($post->post_status, array('draft', 'pending', 'auto-draft')) ) {
$unixtime = strtotime($post->post_date);
$category = '';
if ( strpos($permalink, '%category%') !== false ) {
$cats = get_the_category($post->ID);
if ( $cats ) {
usort($cats, '_usort_terms_by_ID'); // order by ID
$category = $cats[0]->slug;
if ( $parent = $cats[0]->parent )
$category = get_category_parents($parent, false, '/', true) . $category;
}
// show default category in permalinks, without
// having to assign it explicitly
if ( empty($category) ) {
$default_category = get_category( get_option( 'default_category' ) );
$category = is_wp_error( $default_category ) ? '' : $default_category->slug;
}
}
$author = '';
if ( strpos($permalink, '%author%') !== false ) {
$authordata = get_userdata($post->post_author);
$author = $authordata->user_nicename;
}
$date = explode("" "",date('Y m d H i s', $unixtime));
$rewritereplace =
array(
$date[0],
$date[1],
$date[2],
$date[3],
$date[4],
$date[5],
$post->post_name,
$post->ID,
$category,
$author,
$post->post_name,
);
$permalink = str_replace($rewritecode, $rewritereplace, $permalink);
} else { // if they're not using the fancy permalink option
}
return $permalink;
}
}}}
On a basic check this seems to be working, but ofcourse needed to be more deubgged.. I will be happy to here if you think such a feature should be added to core." maorb
Future Releases 21386 XML-RPC needs a user permission method XML-RPC normal normal enhancement new 2012-07-25T18:33:24Z 2019-06-05T06:38:43Z "At this moment when calling a XML-RPC method you will receive a error when the user can't do that method.
What would be better if there is a way an app can retrieve the user permissions and act on that without the need to call the method." markoheijnen
Future Releases 21396 Categories widget reports categories without posts when they have custom posts Widgets 3.4 normal normal defect (bug) new 2012-07-27T02:36:46Z 2019-06-05T06:38:44Z "This problem may be related to #14084, but this report is specific to the behaviour of the Categories Widget.
- Create a custom post type eg. ""Products""
- Create a category eg. ""Photographs""
- Add some posts of type Products, assign them to category Photographs
- go to the blog page and the Categories widget lists Photographs as a category
- click on Photographs
- the ""Nothing Found"" post is shown.
There are no normal posts of category Photographs, but the widget lists a category that returns nothing. I would have expected the widget not to list a category that has no normal posts.
" pkwooster
Future Releases 21432 Deprecate *_blog_option() Options, Meta APIs 3.4.1 normal normal Future Release defect (bug) assigned dev-feedback 2012-07-31T21:53:06Z 2017-06-26T17:58:41Z "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
Future Releases 21520 Prevent recursive script dependencies in wp_enqueue_script Script Loader normal normal defect (bug) new 2012-08-08T17:21:43Z 2019-06-04T21:07:42Z "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
Future Releases 21521 Audit use of set_time_limit() Bootstrap/Load 3.4.1 normal normal enhancement new dev-feedback 2012-08-08T17:28:21Z 2019-06-04T19:23:14Z Core calls this half a dozen times. The call in wp_get_http() interferes with unit tests. Unit tests will terminate 60 seconds after wp_get_http() is called. Let's justify each use of set_time_limit() and remove what we can. ryan
Future Releases 21546 Site Settings page is a hot mess Options, Meta APIs 3.0 normal normal enhancement reopened 2012-08-10T21:44:07Z 2019-06-04T20:43:21Z "I found out just how bad this page is when debugging an issue related to {{{WPLANG}}}. {{{WPLANG}}} is an option for a blog in your network (overrides {{{WPLANG}}} in {{{wp-config.php}}}), but if you delete the option on purpose or accidentally, there is no way of restoring it in the admin.
Site Settings just loads your options table and POSTs back to itself. The only reference to the original options map (the defaults) is in schema, which WP has zero access to outside of upgrade.
I have abstracted the default options and the default ""fat"" options into functions in {{{ms.php}}}. Also, when loading your Site Settings options - if a default option is missing, I display it in the admin so you can save it (it is populated with its default value).
I have also streamlined and condensed some code that was happening in and around {{{populate_options()}}}" wonderboymusic
Future Releases 21573 NOBLOGREDIRECT interfering with 404 errors Bootstrap/Load 3.4.1 normal normal Future Release defect (bug) new 2012-08-14T07:32:06Z 2019-09-07T10:10:12Z When the `NOBLOGREDIRECT` constant is defined, 404 pages on the main site will not work and instead redirect to URL defined in `NOBLOGREDIRECT`. This is the cause of the `maybe_redirect_404` action/function, which is not needed and should be removed. bungeshea
Future Releases 21583 Improve discoverability and visual design of Screen Options and Help Panels Help/About normal normal Future Release enhancement new 2012-08-14T22:34:05Z 2023-12-19T19:25:49Z "The Screen Options and Help panels are not very discoverable and, in part because of this, aren't very helpful to our users.
Here are the problems with them right now:
* Most users are blind to these tabs.
* The labels and positioning give little indication as to what these tabs actually do.
* For a lot of users, Help is not that helpful.
*They’re position in the admin creates yet another point of navigation for users to be aware of (and per #1, most of them aren’t).
* The very wide container for text makes a lot of the help text difficult to read.
Here are some proposals to improve the design and discoverability of these tabs (related images and mockups are here: http://make.wordpress.org/ui/2012/08/06/we-did-some-brainstorming-at-dev-day-today/) :
* Adding icons to these tabs would (hopefully) both make these tabs more visible and give a better indication as to what these tabs too.
* Moving these to the right side of the toolbar would give even more context to what these do, as they would be grouped with other user-specific settings.
* (6) The toolbar dropdown would allow for a slimmer content area for better readability.
* (7) The slimmer content area would let us make screen options read like a list for better scannability.
* (4/5) Putting the gear on the upper right would standardise with several other web apps (Twitter, etc).
Related: #21326" chexee
Future Releases 21627 Filter for custom-background CSS selector peterwilsoncc Customize 3.4.1 low minor Future Release enhancement assigned needs-unit-tests 2012-08-18T11:46:55Z 2021-05-22T17:41:50Z "There should be an easier way for changing the css selector from body to html or any other then making your own callback.
" Horttcore
Future Releases 21666 Customizer Revisions (previously reset/undo/revert) melchoyce Customize 3.4.2 normal normal Future Release feature request assigned 2012-08-23T10:09:49Z 2021-05-24T14:32:56Z "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
Future Releases 21669 "Make ""Home"" option persistent in Pages box on Menus screen" Menus 3.4 normal normal defect (bug) new 2012-08-23T16:57:08Z 2019-06-04T20:03:36Z "If you have some pages, or even a page, then on nav-menus.php in the Pages box, View All, it will display Home as an option. However, if you do not have any pages at all (mostly Blog on front page scenarios), then it just says ""No items."" in the Pages box.
It should always be populated with at least the Home option. Oversight on our part that we didn't uncover this behavior before. " jane
Future Releases 21700 Problem obtaining the Feed of an archive of tag “RSS” Canonical 3.4.1 normal normal defect (bug) new 2012-08-27T10:40:33Z 2019-06-04T19:23:18Z "I'm using RSS as a tag for some of my blog posts, and I was using them without any problem.
'''myblog.com/tag/rss/'''
But I've just realised that Google Webmaster Tools gives me some related errors.
The issue is this: when trying to retrieve the feed of this tag, from
'''myblog.com/tag/rss/feed/'''
it gets redirected to
'''myblog.com/tag/feed/'''
And this gives an error." xavivars
Future Releases 21714 Enable Intermediate choice in UI if Full Size Image is exact match to Intermediate Image Media 3.4.1 normal normal enhancement new 2012-08-28T15:56:09Z 2020-01-15T01:49:54Z "
This is simply a minor usability enhancement for Media Gallery. If an image is uploaded that is exactly the same size as an intermediate image (300x300 = Medium for example) it is not a choice when inserting that image into a post. It would be nice if it was a choice pointing to the full/original image since full is the same size as the intermediate.
It seems to be caused in the image_downsize function in /wp-includes/media.php because image_get_intermediate_size returns false.
I believe image_downsize can be updated as such to provide this enhancement:
Line 162 (if statement) Currently:
{{{
if ( !$width && !$height && isset($meta['width'], $meta['height']) ) {
// any other type: use the real image
$width = $meta['width'];
$height = $meta['height'];
}
}}}
could be updated to read the intermediate width and height and set intermediate to true if it is an exact match to the original image:
{{{
if ( !$width && !$height && isset($meta['width'], $meta['height']) ) {
// any other type: use the real image
$width = $meta['width'];
$height = $meta['height'];
// add check for real image being exact match to intermediate image to enable intermediate choice in UI
if (isset($_wp_additional_image_sizes[$size])) {
$goal_width = intval($_wp_additional_image_sizes[$size]['width']);
$goal_height = intval($_wp_additional_image_sizes[$size]['height']);
} else {
$goal_width = get_option($size.'_size_w');
$goal_height = get_option($size.'_size_h');
}
if ($width == $goal_width && $height == $goal_height)
$is_intermediate = true;
}
}}}
Thanks for considering, and hope I put this in the right place,
Andrew
" andrewteg
Future Releases 21758 Do not require a file in comments_template() Comments 3.4.1 normal normal enhancement new 2012-08-31T20:22:16Z 2019-06-04T19:23:20Z "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
Future Releases 21790 When set a static front page WP main query isn't set correctly SergeyBiryukov Query 3.4.1 normal normal Future Release defect (bug) assigned 2012-09-04T13:50:26Z 2017-05-05T09:34:57Z "In my project I use on several places pre_get_posts filter. When setting a static frontpage and blog page I get several notices on my screen. When I var_dump the main query the only value that is set it the page_id.
Even the post_type isn't set." markoheijnen
Future Releases 21810 Improve intermediate image size handling Media 3.5 normal normal enhancement new 2012-09-05T20:28:14Z 2019-06-04T20:03:44Z "When discussing the new media workflows on #21390, the need to improve our image size API became apparent.
A quick overview of the improvements that should be made:
* All image attachments have an original, or ""golden master"", which is never altered.
* An image size creates a new image and stores all transformations applied to the image as metadata. Transformations are described relative to the golden master. An image size has a unique slug (which means a set of dimensions does *not* have to be unique).
* Image attachments have a ""master"" image size, which is used to create any automatically generated image sizes.
* Automatically generated image sizes can be overridden with manual transformations.
Would love for someone to step up on this ticket, as the media modal editing UI will benefit greatly from these improvements." koopersmith
Future Releases 21859 Import blog and media library is not working Import 3.4 normal normal defect (bug) new 2012-09-10T08:02:25Z 2019-06-04T20:03:47Z "Hi,
I have problems (due to hosting php timeout) to import all my blog at once.
I tried doing it by months, but it's also not working. Blog posts are imported, but nothing of the media library is imported.
I can describe too what happens when trying to import everything at once. I've just 200 photos and every 90 secs the connection is reseted trying to import them. If you try to retry using browser, photos begin to duplicate, or triplicate, or more...
After all this, then you finish, there is no attachments related to their post.
I've tried importing by months, which would not spend more than 60 secs importing photos, but then the photos are not imported.
Please, fix the import/export by months or by splitting files every 10 post (or configurable).
I would suggest too to allow any mechanism to import photos first, doing it in groups of 20 (or by configuration) and later, after that, importing post and attaching files to each post.
I set it as critical as moving a blog it's impossible without a huge amount of work.
I could try to help debugging if needed.
Version 3.4.1 is also affected.
Thanks and regards" don_ousian
Future Releases 21910 wpmu_create_user() standardization Users 3.0 normal normal enhancement new 2012-09-17T18:03:24Z 2019-06-05T06:38:47Z "There seems to be some inconsistencies between wpmu_create_user(), create_user(), and wp_insert_user(). The former two are wrappers, and do different things but potential to consolidate and clean up some old code.
Per Nacin:
>nacin: wpmu_create_user() should probably just go away.
>nacin: fairly useless function
>nacin: by default, it looks like wp_insert_user() would create a role-less user.
>nacin: as would wp_create_user()
Looking at wp_insert_user() it sets the default role if none is provided, where wpmu_create_user() would actually delete the default roles and caps.
Although, I'm not really sure there's a use case where you'd be using both the wpmu_new_user and user_register hooks simultaneously so possibly depreciate the former in favor of the latter.
One real issue with wpmu_create_user is that it returns false instead of the WP_Error object which is probably not desired since the error could be useful. The false return is used in wpmu_activate_signup() to either set the returned ID or create it's own WP_Error.
Lastly... documentation for create_user says it returns the ID, but it looks like it could potentially also return a WP_Error object. Didn't test, but possible documentation fix there.
" ryanduff
Future Releases 21913 Detecting MIME Types in WXR Files Import 3.4.2 normal normal enhancement new dev-feedback 2012-09-17T21:09:07Z 2019-06-04T20:03:48Z "In the process of creating a service to convert TypePad data to WXR formatted files, we've encountered some unique problems with TypePad data. Namely, many TypePad files are saved without file extensions, which prevents the existing importer from importing those files into the wp-content/uploads folder.
In order to import and rename these otherwise ignored files, we've created a patch for the WordPress importer that does the following:
1. If there is an attachment in the WXR and the importer is not able to determine the file type from the file name (ie missing extension), the patched version will make a light (body-less) request to the web server where the file is hosted for information we can use about the file. The things we're interested in are file type, size, and filename.
2. If the importer is processing an attachment under the above situation, and it is able to determine the file type, then it will rewrite the local version of the file to have the appropriate file extension.
This is a simple bit of code, but it makes a huge difference as TypePad saves without file extensions quite regularly.
We've attached our patch and a sample WXR file from ragsgupta.com, the Brightcove co-founder's blog." ReadyMadeWeb
Future Releases 21981 Securing the uploads directory Upload normal normal Awaiting Review enhancement reopened 2012-09-24T04:35:11Z 2023-06-25T07:15:26Z "Look at implementing something similar to an .htaccess file in the uploads directory with:
{{{php_flag engine off}}}
This may not work in every server scenario, but let's open the conversation, and some scenarios is probably better than none anyway." japh
Future Releases 22003 Saving custom fields goes to post-new.php rather than post.php Posts, Post Types 2.5 normal normal defect (bug) reopened 2012-09-26T15:57:01Z 2019-08-09T00:46:50Z "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
Future Releases 22022 Can’t properly add pages of type edit.php?post_type=xxx as submenu items to arbitrary parent menus Posts, Post Types 3.0 normal normal defect (bug) new 2012-09-27T20:22:43Z 2019-06-04T20:43:26Z "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
Future Releases 22037 Customizer: Live preview fetches page but does not display (show error message) Customize 3.4.2 normal normal Future Release defect (bug) new 2012-09-28T15:14:54Z 2021-05-22T18:03:28Z "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.'''
----
Per duplicate #28227:
> When Customizer can't load due to an error, there's no indication as to what's going on. It would be nice if some information was presented instead of seeing a blank screen on the right side." marcoliverteschke
Future Releases 22041 Importer dies silently when multisite upload limit is reached Import normal normal enhancement reopened 2012-09-28T17:58:57Z 2019-06-04T20:03:50Z "The scenario: You're importing a WXR file into a site on a multisite network and the WXR includes a number of large attachments. For whatever reason, the upload capacity for each site is set at 100MB.
If the upload capacity is reached during the import process, the import will look like it's hanging forever. Instead, it would be nice to show an alert that the upload capacity was reached or similar." danielbachhuber
Future Releases 22076 WP Upgrader: update_bulk_plugins_complete_actions and update_bulk_theme_complete_actions should pass information about all plugins/themes to the filter Upgrade/Install 3.0 normal normal enhancement new 2012-10-02T07:56:19Z 2019-06-04T21:07:48Z "In class-wp-upgrader.php, line 1214 there is this line:
{{{
$update_actions = apply_filters('update_plugin_complete_actions', $update_actions, $this->plugin);
}}}
When adding a filter to it like this:
{{{
add_filter('update_bulk_plugins_complete_actions','test_filter',99,2);
function test_filter( $update_actions, $plugins ) {
echo print_r( $plugins, 1);
return $update_actions;
}
}}}
Only the last updated plugin info will be printed. However, it should contain information about all the plugins that were updated (since we are dealing with a bulk upgrade here)." ragulka
Future Releases 22116 bug in dynamic_sidebar function Widgets 3.4.2 normal normal defect (bug) new has-patch 2012-10-06T12:19:48Z 2019-06-05T06:38:50Z "In the dynamic_sidebar function is for displaying the right sidebar, by id, but in the code it is searched by name:
{{{
function dynamic_sidebar($index = 1) {
global $wp_registered_sidebars, $wp_registered_widgets;
if ( is_int($index) ) {
$index = ""sidebar-$index"";
} else {
$index = sanitize_title($index);
foreach ( (array) $wp_registered_sidebars as $key => $value ) {
if ( sanitize_title($value['name']) == $index ) {
$index = $key;
break;
}
}
}
}}}
must be changed to :
{{{
function dynamic_sidebar($index = 1) {
global $wp_registered_sidebars, $wp_registered_widgets;
if ( is_int($index) ) {
$index = ""sidebar-$index"";
} else {
$index = sanitize_title($index);
foreach ( (array) $wp_registered_sidebars as $key => $value ) {
if ( sanitize_title($value['id']) == $index ) {
$index = $key;
break;
}
}
}
}}}
" alexvorn2
Future Releases 22150 Customizer: Remove Image doesn't remove from Media Library Upload 3.4 normal normal Awaiting Review defect (bug) new 2012-10-10T05:35:15Z 2019-05-15T21:12:16Z "After uploading an image using the Theme Customizer, a ""Remove Image"" link appears - this seems to imply that clicking it will cause the image to be deleted entirely, rather than just hidden from the current view.
" pento
Future Releases 22164 "Move comment ""keyboard shortcuts"" setting to comments -> screen options" Comments normal normal enhancement new dev-feedback 2012-10-11T14:14:23Z 2019-06-04T19:23:27Z "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
Future Releases 22192 update_option() strict checks can cause false negatives joemcgill Options, Meta APIs normal normal Future Release defect (bug) assigned needs-unit-tests 2012-10-15T03:19:23Z 2023-10-16T21:22:18Z "Given this:
{{{
add_option( $option_name, 1 );
update_option( $option_name, 1 );
}}}
The update should not work, because they are the same. However, the meta cache will have ""1"" as a string, and then it will strict compare it to 1 as an integer. Thus, an unnecessary update will run.
It is quite common to use integers and booleans directly into these functions. They should be smart enough to recognize that ""1"" == 1 == true and ""0"" == 0 == false, and that any numeric string is also equal to a properly cast integer.
The new changes need unit tests.
Ticket from which this was spun: #22189, saving navigation menus is slow." nacin
Future Releases 22251 Helper function to simplify checking for constants Bootstrap/Load normal normal Future Release enhancement new dev-feedback 2012-10-22T00:32:27Z 2018-05-31T23:46:31Z "Love 'em or hate 'em, WordPress uses lots of constants. As a result, this pattern is all over core and plugins, and occasionally themes:
`if ( defined( 'CONSTANT_NAME' ) && CONSTANT_NAME )`
Right now on trunk, it's used 57 times (excluding 2 in Akismet).
{{{
~/code/wptrunk $ ack ""defined\( ?('|\"")([^'\""]+)\1 ?\) \&\& \2"" -h --ignore-dir=wp-content/plugins/ | wc -l
57
}}}
How about a new function to make that verbose logic a little bit less repetitive.
{{{
function wp_constant( $constant ) {
return defined( $constant ) && constant( $constant );
}
}}}" evansolomon
Future Releases 22261 Recent comments widget makes additional queries when pagination is enabled Comments normal normal defect (bug) new 2012-10-23T14:19:59Z 2019-06-04T19:23:35Z A continuation of #15400. nacin
Future Releases 22279 WordPress Export/Import deletes carriage returns Export 3.4.2 normal normal defect (bug) new dev-feedback 2012-10-25T20:02:42Z 2019-06-04T19:44:09Z "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
Future Releases 22310 wp_insert_user bit ilogical with rich_editing Users 4.9.5 normal normal Awaiting Review enhancement new 2012-10-30T09:08:56Z 2018-05-12T18:51:54Z "when you do wp_insert_user with rich_editing = TRUE it actually set rich_editing to ""1"" what is then interpreted as FALSE. I know (after searching why it does not work for me), that for actually setting true you need to set rich_editing to empty value, but anyway i think it is not optimal" thomask
Future Releases 22328 Pass reset password URI to retrieve_password_message filter Users 2.8 normal normal enhancement new 2012-10-30T23:34:17Z 2019-06-05T06:38:53Z "The arguments for the retrieve_password_message filter are the message itself and the reset key. However the URI requires the user login as well in order to be valid, thus we cannot regenerate the password reset link without it.
Proposed solution - pass the reset URI instead of just the key." ejdanderson
Next Release 22369 get_transient() do not call delete_transient() when deleting one General 2.8 normal normal defect (bug) reopened close 2012-11-06T01:27:01Z 2024-03-18T09:11:56Z "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
Future Releases 22402 Stripping non-alphanumeric multi-byte characters from slugs Formatting normal normal enhancement new dev-feedback 2012-11-10T05:07:10Z 2019-06-04T19:44:12Z "`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
Future Releases 22414 validate_current_theme() should validate cached theme roots Themes normal normal defect (bug) new 2012-11-11T21:57:54Z 2019-06-04T21:07:55Z See ticket:22252#comment:14. To handle edge cases like the same theme being in multiple roots, validate_current_theme() should validate the cached theme roots, and update or delete them as appropriate. nacin
Future Releases 22511 Taxonomy manage screen checks for manage_terms and edit_terms, instead of just manage_terms. Taxonomy 3.0 normal normal defect (bug) new 2012-11-19T23:13:56Z 2019-06-04T21:07:57Z "I'm trying to set up permissions so the Contributor role can add terms but not edit or delete terms. I setup my taxonomy so it looks like this:
{{{
register_taxonomy( 'custom_taxonomy', array( 'post' ), array(
...
'capabilities' => array (
'manage_terms' => 'edit_posts',
'edit_terms' => 'manage_options',
'delete_terms' => 'manage_options',
'assign_terms' => 'edit_posts'
)
) );
}}}
However, when logged in as a contributor I get the error ""You are not allowed to edit this item."" In edit-tags.php there are two checks for caps, one is for manage_terms and one is for edit_terms. I don't believe the second one should be there, because looking at the other code it should be like this:
* User with manage_terms can access the main taxonomy page
* They can also add terms
* There are checks in WP_Terms_List_Table to restrict showing the Edit/Quick Edit/Delete links for users without those capabilities (edit_terms/delete_terms).
* There is even plenty of other checks on edit_terms in edit-tags.php to include/change the content shown to the user.. if the entire page is restricted for users without edit_terms, why are any of those necessary?
Even if I'm wrong on the fact that roles with edit_terms can't add new terms (it's not completely clear anywhere, it seems like manage_terms should be enough), I still think that this page should be viewable at the very least considering the other code in that page and the list table.
Recommended solution: move the edit_terms check back into case 'edit' (line 121 of edit-tags.php in trunk, currently) as it was before [15491].
This was introduced in: [15441] and [15491]. Related: #14343." andrewryno
Future Releases 22530 garbage query strings on URLs are not sanitized or removed General 3.4.2 normal normal defect (bug) reopened reporter-feedback 2012-11-21T15:52:50Z 2019-06-04T19:44:14Z "Here is an interesting problem I ran into, a bug / feature that appears to be used by malicious people to cause Google to see your site as full of duplicate content.
If you visit a wordpress site, and add a garbage query string to the end of the URL, that garbage gets carried forward. Example:
yourblog.here/page/2?ssdlfkjsdlkfjsdfs
When you scroll down, the ""previous"" and ""next"" links will automatically carry that query string forward.
Normally, this would not be a big issue. However, some people appear intent on specifically creating these sorts of links to wordpress sites, and Googlebot is finding those links on remote sites. Those links are followed, and then the ""previous - next"" situation perpetuates the problem through every page on the site. If you have 1000 posts, at 10 per page, Google just indexed 100 duplicate content pages.
So the bug is the following:
Passed query strings need to be sanitized, and junk removed - there is no reason to pass it on. In the case of a junk passed string, there should be an http 301 or 302 reply and the user / bot redirected to the proper page without the query string.
Further, query strings should not be perpetuated forward through the ""previous - next"" links on the pages unless they are relevant to that page change. As an example, a valid search string might be worth moving forward with. Other passed items may not be worth carrying forward.
Potentially, any unsanitized input accepted in a query is a vector for other attacks. Having that query carry forward is a real issue. As an example, full select * from queries are not accepted and not dealt with, and perpetuated forward. No, they are not currently actually causing anything to happen, but a failure to sanitize these inputs suggests a vector for a future attack, such as an input overflow or similar." rawalex
Future Releases 22558 Attachment term counts feels/are inaccurate Media normal normal Awaiting Review defect (bug) new dev-feedback 2012-11-23T16:21:26Z 2021-03-03T17:04:28Z "For posts:
* Assign a term to a post, save as draft. Term count returns 0.
* Publish the post. Term count returns 1.
* Change post status back to draft. Term count returns 0.
For attachments:
* Upload an image, assign a term. Term count returns 0.
* Create a new post and insert the image in a published post. Term count returns 0.
* Create a new post, use the insert media modal and upload an image. Then go the the media edit screen and assign a term to the image. Term count returns 1.
* Change the post status back to draft. Term count returns 1.
* Upload an image, assign a term, attach the attachment to a published post. Term count returns 0.
The default term update callback is `_update_post_term_count`. The function includes a special case for attachments, that's the reason why we have the 1 in step 3.
IMO the term count for attachments shouldn't rely on the parent post status. We should just force `_update_generic_term_count`.
Also noted here: comment:ticket:21391:41" ocean90
Future Releases 22579 Confusion of WP admin Discussion settings Comments normal normal Future Release enhancement new 2012-11-24T20:46:05Z 2019-11-05T13:26:24Z "On the ""Settings>Discussion"" page:
1) ""'''Default article settings'''"" should be replaced by ""'''Default comment settings'''"" (because these important settings do not only apply to posts (''articles'')), but also to pages!
2) ""'''Allow people to post comments on new articles'''"" should be replaced by:
--> ""'''Allow people to post comments'''"" (best option in my opinion)
or
--> ""Allow people to post comments on new pages and posts""
Sorry if this is not the right place to make such suggestions." Lorangeo
Future Releases 22660 "Admin bar in multisite: mobile tap on ""My Sites"" dropdown in back-end doesn't work" Toolbar 3.4.2 normal normal Future Release defect (bug) new 2012-11-30T20:40:17Z 2021-06-14T20:50:25Z "Quick steps here to reproduce an issue where the ""My Sites"" dropdown (multisite networks) will drop down and show the ""Network Admin"" link and the list of your sites. But, clicking on a site (to expand and see ""Dashboard"", ""New Post"", etc.) does not happen. Tapping the blog name just closes the dropdown.
I'm not sure what's different but I can consistently reproduce this when in the admin back-end (but works OK on front-end admin bar when viewing a site):
From /wp-admin/ on a mobile device (tested on iOS 6, iPhone 5, iPad) with a multisite network:
1. Tap ""My Sites"" in admin bar
2. See ""Network Admin"" and list of sites below
3. Tap one one of the site names
Expected: Site name expands to show ""Dashboard"", ""New Post"", etc. (same behavior as front-end when viewing site). Screenshot: http://d.pr/i/reOi
Actual: Tapping site name simply closes the ""My Sites"" dropdown, does not browse anywhere nor expand menu" devinreams
Future Releases 22772 Introduce HOMEPATH Filesystem API 3.5 normal normal enhancement new 2012-12-06T03:05:42Z 2019-06-04T19:44:19Z "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
Future Releases 22798 "Invalid URLs not giving 404 with ""Default"" permalink settings" Rewrite Rules 3.4 normal normal enhancement new dev-feedback 2012-12-06T23:39:35Z 2019-06-04T21:08:11Z "'''Steps to reproduce:'''
- Set up Wordpress with the default .htaccess
- Select the ""Default"" option under Permalink Settings
- Enter an invalid URL eg 'http://blogroot.com/garlbeflax.abc'
'''Expected Behaviour:'''
- 404 page is displayed
'''Observed Behaviour:'''
- No 404 page is ever shown, no matter what the request string is
- Instead, Wordpress behaves as if no path was requested, eg displaying the homepage/posts lists.
- If requested url has any of the standard params in it, those params ARE executed, eg http://blogroot.com/foo?paged=2 would properly show the 2nd page of the posts.
'''Suspected cause:'''
In line 620 of wp-includes/class-wp.php (in WP->parse_request), there is a conditional which means the only time the request can be marked as a 404 error is if the array of rewrite rules is NOT empty:
{{{
$rewrite = $wp_rewrite->wp_rewrite_rules();
if ( ! empty($rewrite) ) {
...
}}}
If the ""Default"" permalink is selected, and no other rewrite rules are set up elsewhere (for reasons I didn't investigate, adding a add_rewrite_rule to the theme didn't affect anything), then the $rewrite array IS empty and the request can not be checked to see if it's a 404. Therefore, execution of the request continues as if no path info were submitted.
This prevents the showing of the theme's 404 page, and can get a website flagged as spam/exploitative in Google's index.
'''Workaround:'''
Define a permalink redirect (eg pick one of the options other than Default).
Server info:
{{{
Apache/2.2.16 (Debian) (w/ mod_rewrite)
PHP Version 5.3.3-7+squeeze3 (mod_php5)
}}}
.htaccess contents:
{{{
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
}}}" vanchuck
Future Releases 22810 Support for theme changelogs Themes normal normal Future Release enhancement new 2012-12-07T14:39:22Z 2022-02-24T03:43:23Z "Plugins' changelogs are shown in the WordPress plugin repository in tabs, eg. http://wordpress.org/extend/plugins/events-manager/changelog/.
Plugins' changelogs are also linked to when viewing available updates in WP-admin, so the siteadmins can know if the update could mess with their customizations.
Theme changelogs are not visible in either place. They should be supported in both places. Also http://codex.wordpress.org/Theme_Review should be updated to reflect that the theme changelogs are much recommended if not mandatory to use and to specify the exact format for them. Currently it uses language that is not clear for those who don't speak English as their first language: ""In lieu of..."" and then ""...Themes are recommended to include a changelog"", which doesn't let the theme author know what format should the changelog be in.
At the moment I've seen changelogs for themes in different formats, but none of them is supported.
Summary of the issues:
1. Add support for theme changelogs on https://wordpress.org/extend/themes/ theme pages in tabs.
2. Add support for theme changelogs in wp-admin theme list views.
3. Clarify Theme Review codex page on the supported format(s) and use more simple English than ""in lieu of""." Daedalon
Future Releases 22837 "WP Needs to Set ""Sender"" and ""Reply-To"" or DKIM/DMARC will not work using wp-mail (via PHPMailer)" Mail 3.4.2 high major Awaiting Review defect (bug) new close 2012-12-09T17:23:48Z 2023-11-28T19:33:30Z "I notice that for DKIM to function (while using DMARC) correctly for outgoing mail the PHPMailer object needs to make sure the Sender and Reply-To fields match the ""From"" field otherwise the ""Return-Path"" header uses the server it is sending from causing a mismatch. When this happens DKIM fails authentication on the receiver side because it is not added to outgoing mail.
I tried adding the reply-to and sender header manually to wp_mail() but it did not work. One had to do the following:
Right now i have to manually modify the /wp-includes/pluggable.php file in the wp_mail() function to include:
{{{
if (strlen($phpmailer->Sender)==0)
{
$phpmailer->Sender = $phpmailer->From;
$phpmailer->AddReplyTo($phpmailer->From);
}
}}}
This resolves the problem and DKIM works again.
" kellogg9
Future Releases 22845 On 32-bit systems, with post IDs higher than PHP_INT_MAX (2147483647) wordpress does not run fine Posts, Post Types 3.4.2 normal normal enhancement assigned 2012-12-10T09:13:01Z 2019-06-04T20:43:30Z "Logging all the MySQL queries I discovered that the queries that should pick my posts were all doing something like this:
SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647)
This 2147483647 number clearly has something in it: it's the PHP_INT_MAX value on 32-bit operating systems, while on 64-bit machines it's 9223372036854775807 http://php.net/manual/en/language.types.integer.php
So, the problem is divided in 2 parts: I run on a 32 bit system, and I have my IDs a bit too high.
I know that 2147483647 is a bit high for a post ID, but I discovered this the hard way.
Now, I would have preferred an error message in the administrator interface. Do you think it's a good idea?" copesc
Future Releases 22869 Large Image Uploads Don't Error Well Media 3.4 normal normal defect (bug) assigned 2012-12-12T05:10:10Z 2019-06-04T20:04:18Z "Related to #22849 but not restricted to the new uploader. Happens on 3.4 and 3.5 in different ways.
To Reproduce: Upload https://objects.dreamhost.com/ipstenu-images/sunset_2_22_11_by_kenshinkyo-d3a6slk.jpeg to your WP install in the media-new.php page
Note: Image is 12600x9450 and 4.9MB
Expected Outcomes:
* Shared hosted without a lot of memory: Failure, not enough memory, no image uploaded.
* VPS/Dedicated with tons of memory: Success
Actual outcomes:
* VPS as expected.
* Shared not so much. You get the errors as expected however the failure is not correct. The image actually does upload, contrary to the errors, however no thumbnails are made, which then causes a memory problem as the full size image shows when you go to any media library view (in lieu of actual thumbnails). This crashed Chrome (as @markjaquith saw when we were testing Monday night) until I deleted the large images.
The actual issue is on thumbnail creation, so the best 'fix' I can think of is if on failed thumbnail gen, it nukes the master image, but I don't know if that would make sense since some of the thumbnail gen might be on extra image sizes set by themes/plugins. Then again, do you want those if all fail? " Ipstenu
Future Releases 22879 Canonical Link Missing on Front Page Canonical 3.4.2 normal normal defect (bug) new 2012-12-12T11:03:05Z 2019-06-04T19:23:43Z "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
Future Releases 22880 Customize Themes without activation Customize normal normal Future Release enhancement new 2012-12-12T11:34:51Z 2021-05-22T18:12:20Z "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
Future Releases 22894 Need WordPress Media Uploader Stop or Cancel Button in WP Version 3.5 Media 3.5 normal normal enhancement reopened 2012-12-12T17:34:01Z 2023-10-18T16:05:38Z "Today I was testing the new media uploader of WP 3.5 from post editor by clicking 'Add Media'. I clicked 'upload files' and I choose a big file from my computer by a mistake. But I did not want to upload that file. Then I wanted to cancel the uploading, but there is no stop or cancel button . Then I close the popup window and open again by clicking 'Add Media' button. I see the previous file is being uploaded yet. I choose another small file and both files upload are running.
[[Image(http://onetarek.com/wp-content/uploads/2012/12/stop-media-uploader.jpg)]]" onetarek
Future Releases 22937 Bulk Actions > Edit could allow batch-assignment of taxonomies to Media following the WP 3.5 media changes Media normal normal feature request new 2012-12-14T13:59:37Z 2023-10-18T15:53:15Z "[First and foremost the media improvements in WP 3.5 are wonderful, thanks to all involved.]
Now that you can assign taxonomies to media easily, it would be extremely useful if you could also use Bulk Actions > Edit (as you can with posts / pages / custom post) to assign them to multiple images more quickly.
Real world case: we added a taxonomy to media yesterday for a client, so they could categorise their ~500 images into sitewide categories, and they immediately replied to ask if there was a way of doing it in batches..." yeswework
Future Releases 22938 Presentation of hierarchical taxonomy in Media modal should be checkboxes rather than comma-separated tag list wonderboymusic Media 3.5 normal normal Future Release enhancement assigned 2012-12-14T14:10:16Z 2018-09-24T08:07:27Z Since 3.5, using register_taxonomy_for_object_type on attachments, if the taxonomy used is hierarchical, whereas in the edit attachment UI you see the normal list of checkboxes, in the corresponding modal it is presented as a comma-separated list of slugs, as if it were a non-hierarchical taxonomy (tags rather than categories). I'm sure this is not a bug / mistake / oversight, but at best it's a little unintuitive (you need to have memorised the category slugs to add new ones) and worst a bit dangerous (risk of adding unwanted categories), and it would be great if in future it was presented here too as a list of checkboxes. yeswework
Future Releases 22940 Adding term checklist to Media modal has undesired results Media 3.5 normal normal defect (bug) new 2012-12-14T14:59:27Z 2019-06-04T20:04:30Z If you use '''attachment_fields_to_edit''' to add a term checklist to the media modal, there is no way to know when a term is unchecked. I propose that when a checkbox is clicked in the compat section, all the checked boxes of the same name are passed in the POST request. jfarthing84
Future Releases 22966 Show admin-cropped thumbnails instead of WordPress-cropped thumbnails Media normal normal Awaiting Review enhancement new 2012-12-16T22:22:59Z 2023-08-29T15:35:39Z "Used to be able to see which images have been cropped (and which ones haven't) in image search results. Now have to click 'edit image' and check the image individually.
It's valuable for the publisher to see what his/her readers will see on the front end of the site when the 'thumbnail' function is called (either publisher's hard-cropped image or full un-cropped image). Useful especially for publishers that are pulling images from a time before 'thumbnails' existed in WP.
Main reason this is an issue is that when an un-cropped thumbnail is selected as the featured image, it will be stretched/distorted to dimensions of thumbnail settings in function.php." beerpulse
Future Releases 22976 Remove reference to category to tag converter from the tools page Import normal normal enhancement new 2012-12-17T16:02:00Z 2019-06-04T20:04:32Z It has been such a long time since version 2.3, does anybody really need a reminder for the existence of this tool on that relatively high profile page? mark-k
Future Releases 23008 Add a Hook To Hide Inactive Widgets Widgets 3.5 normal normal enhancement new dev-feedback 2012-12-19T19:59:12Z 2019-06-05T06:38:58Z "Hello,
This is my first feature request so hopefully I'm going through the process correctly. Onto the request...
Adding a hook to remove or hide the Inactive Widgets sidebar on the WordPress Admin Widgets page would be very useful for developers who don't use the area and want to be able to hide it for better UX.
If this is approved I would love to submit a patch. :)" BFTrick
Future Releases 23023 Touch UI Menu Code doesn't address flyout menus two-levels deep. Menus 3.5 normal normal defect (bug) new 2012-12-20T15:21:17Z 2019-06-04T20:04:37Z "The code we did in #20614 only addressed the single dropdowns you normally see in a single site install.
A multisite install will have flyouts coming out of the dropdowns that we need to account for as well.
Related: http://wordpress.org/support/topic/wp-admin-bar-doesnt-play-well-with-touch-device-in-wp-35" georgestephanis
Future Releases 23050 make_clickable incorrectly formats anchors with URL's and spaces in them in comments Formatting 3.4.2 normal normal defect (bug) new 2012-12-23T00:32:30Z 2019-06-04T19:44:24Z "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! http://wordpress.org is awesome in case you didn't know!
}}}
When viewing the comment, you'll get:
{{{
Hey!
http://wordpress.org is awesome in case you didn't know.
}}}" johnjamesjacoby
Future Releases 23060 Throw 404 if URL Rewriting is Used With Default Permalinks Permalinks 3.5 normal normal Awaiting Review enhancement reopened dev-feedback 2012-12-26T20:54:55Z 2019-04-19T15:21:06Z "Suddenly I discovered that my blog is not returning error 404 page. My blog permalink is set as default style http://test.onetarek.com/?p=123
Now I am trying to create 404 error by using this url http://test.onetarek.com/adsfjkasjdd , it showing home page. Then I tested http://test.onetarek.com/?p=123654 now it shows 404 page.
Then I tried to load a not existing image http://test.onetarek.com/wp-content/themes/twentyeleven/images/headers/not-image.jpg it shows my home page instead of 404 page.
I changed my permalink settings to ""Day and name"" then it show 404 page.
I tested this problem in my another blog, this blog is return 404 page but that is not generated by wordpress. Wordpress 404 theme page is not being loaded. A blank page is being loaded with a message by Apache Server ""Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request....""
So what is the problem with permalink settings and 404 page." onetarek
Future Releases 23117 permalink failed on IIS7 and Reserved Proxy for wordpress 3.5 Permalinks 3.5 normal normal defect (bug) new 2013-01-04T06:30:33Z 2019-06-04T20:43:38Z "it seems to work fine on local but get into a canonical redirect loop when we deploy to production after we upgrade to wordpress 3.5. We did a little debug and found the issue with permalink in file .\wp-includes\canonical.php at line 42 with new coded ""&& !iis7_supports_permalinks()"" added in 3.5.
the issue is iis7 does support permalink and so it go into create and redirect to pretty link which use the website URL in wp-admin settings which is the site URL. when it hits the site URL, our reserved proxy write back to the wordpress site on diff server with port and canonical.php think that's incorrect, so it redirect back to the website URL and the loop go on and on.
we found a temp workaround but not desirable, add this ""remove_filter('template_redirect', 'redirect_canonical');"" in the function.php file in the theme folder you are using. or add a wordpress plugin or simply remove the additional codes in canonical.php file that was added in 3.5. but may cause issue in future upgrade." romeoqngo
Future Releases 23168 Introduce remove_post_status Posts, Post Types normal normal enhancement new 2013-01-10T08:32:49Z 2019-06-04T20:43:39Z Plugins and themes should be able to remove the default post statuses defined by core. kovshenin
Future Releases 23169 Introduce register_post_status_for_object_type Posts, Post Types normal normal enhancement new 2013-01-10T08:35:46Z 2019-06-04T20:43:41Z Similar to what `register_taxonomy_for_object_type` does with taxonomies. kovshenin
Future Releases 23179 New avatar related option - use gravatar only for registered users Comments normal normal enhancement new dev-feedback 2013-01-11T15:40:59Z 2019-06-04T19:23:48Z "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
Future Releases 23188 Hardcoded relative url 'async-upload.php' in plupload/handlers.js Upload 3.5 normal normal Awaiting Review defect (bug) new 2013-01-12T11:47:48Z 2018-01-18T20:34:04Z "On line 127 in plupload/handlers.js you can find relative path to 'async-upload.php'.
It rather should use wpUploaderInit.url (or something like that), so you could use WP Plupload in front-end for example or with your custom uploading scripts.
Now you can write your custom uploader script and provide it via wpUploaderInit, but on that line in handlers.js it is ignored (and if you run it in front-end, bad request to ./async-upload.php is made)." drozdz
Future Releases 23197 wp-activate.php, without explanation, does not load site plugins Login and Registration 3.0 normal normal Future Release defect (bug) reopened 2013-01-14T12:54:26Z 2022-06-14T01:36:09Z "I am the developer of a Wordpress plugin that modifies the Registration process. I am porting my code to Wordpress Multisite and am running into an odd obstacle. During the signup process, I store meta data in the signups table. I intend to restore that data after the user has activated their account using hooks located in wp-activate.php. I learned the hard way that wp-activate is altering the load sequence with the following flag.
define( 'WP_INSTALLING', true );
The preceding comment says ""Define ABSPATH as this file's directory"", which to me does not entirely jive up. Regardless, with this flag in place, when Wordpress would normally determine what plugins to load in wp_get_active_and_valid_plugins, instead it returns an empty array. I do not believe this is the desired behavior.
My solution has to been to create a small ""must-use"" plugin simply for my activation related code. This however, is not a desirable solution since must-use plugins must be manually installed. I cannot determine much of an alternate solution; I cannot modify that flag in a plugin at any level since my plugin would never be loaded for it to get a chance to modify the flag. It is a bit of a chicken and the egg problem." radiok
Future Releases 23221 Multisite in subdirectory with root site address Bootstrap/Load 3.5 normal normal Awaiting Review defect (bug) reopened dev-feedback 2013-01-16T22:48:52Z 2018-01-21T01:31:19Z "I have seem to have found a url bug in the multisite.
= How to replicate =
1. Install WordPress in a subdirectory
2. Change the the url from the subdirectory to the root by adding index.php to the the root and changing the following code.
{{{
/** Loads the WordPress Environment and Template */
require('./subdirectory/wp-blog-header.php');
}}}
3. Change the site url in the settings to the root.
4. Start the process to convert the site to a multisite.
= Affect =
Then it should cause the network dashboard url to be incorrect. You will get http://example.com/wp-admin/network/ instead of
http://example.com/subdirectory/wp-admin/network/.
" grapplerulrich
Future Releases 23229 Pagination Links Broken Permalinks normal normal defect (bug) new 2013-01-17T23:11:04Z 2019-06-04T20:43:46Z "Currently, if the request URL ends with ""page/[\d]+/?"" it will always assume that it is the pretty version of the paged parameter, and rewrite that section of the URL.
This breaks in any condition where a numeric value follows that string at the end of a URL. An example that can be easily reproduced is as follows:
1) Set theme to TwentyEleven
2) Modify the theme to output the results of get_pagenum_link(2) anywhere.
3) Change permalink structure to ""/daily-page/%year%/%monthnum%/%post_id%/""
4) Go to a year archive for the permalink structure above.
5) The result of the get_pagenum_link will look like this: ""/daily-/page/2/"", breaking pagination within this context.
I've attached a patch against current trunk code that addresses this, providing the following features:
1) Pagination links functional in the scenario above, along with custom rewrite rules.
2) Updated to allow numeric post names for hierarchical post types (currently always rewritten with ""-2"")
3) Updated get_pagenum_link filter to include pagenum parameter as it was passed in.
" ssmathias
Future Releases 23243 "wp_mail() not working with ""Name "" format in buggy PHP versions on Windows" Mail 3.5 normal minor defect (bug) new 2013-01-20T15:59:30Z 2019-06-04T20:04:42Z "As a result of ticket #17305, wp_mail() accepts the $to parameter in the format ""Name "".
There exists a PHP bug in versions below 5.2.11 and in 5.3, on Windows. This bug occurs when addresses are passed to the PHP mail() function in the ""Name "" format and prevents e-mails from being sent. I believe this bug in fixed in 5.3.1 and above. (see https://bugs.php.net/bug.php?id=28038)
I don't believe this affects any core functionality, but may affect some plugins which pass $to in the above format.
I tested in PHP 5.2.4 on Windows with the following code:
{{{
wp_mail(""email@ext.com"", ""Test"", ""Test"");
wp_mail(""Name "", ""Test 2"", ""Test 2"");
}}}
The first email is received; the second isn't. When removing error suppression from the mail() calls in class-phpmailer.php, the following warning is outputted:
Warning: mail() [function.mail]: SMTP server response: 501 >: ""@"" or ""."" expected after ""Name"" in C:\xampplite\htdocs\wp-includes\class-phpmailer.php on line 771" bbosh
Future Releases 23257 Add plural versions of Post Format strings Post Formats 3.5 normal normal Future Release enhancement new 2013-01-22T00:59:30Z 2017-07-17T16:37:15Z "To make it easier for theme authors to create meaningful titles for post format archive pages, we could extend `get_post_format_strings()` to also provide a standardized set of plurals.
I'm not entirely sure whether the plurals I used in the diff are the ones we actually want to go with (apparently there is no plural of 'Audio'?), but the change is fairly simple and is backwards compatible.
See [https://github.com/Automattic/_s/pull/137 this discussion] for additional context." obenland
Future Releases 23276 WordPress Importer: Update existing navs instead of new Import normal normal WordPress.org defect (bug) new has-patch 2013-01-23T17:00:06Z 2020-10-01T19:25:32Z "A possible solution (reuses logic present in the code):
{{{
$menu_item_db_id = (int) $item['post_id'];
$original_object = get_post( $menu_item_db_id );
if ( is_null( $original_object ) ) {
$post_parent = (int) $item['post_parent'];
if ( $post_parent ) {
// if we already know the parent, map it to the new local ID
if ( isset( $this->processed_posts[$post_parent] ) ) {
$post_parent = $this->processed_posts[$post_parent];
// otherwise record the parent for later
} else {
$this->post_orphans[intval($post['post_id'])] = $post_parent;
$post_parent = 0;
}
}
// map the post author
$author = sanitize_user( $item['post_author'], true );
if ( isset( $this->author_mapping[$author] ) )
$author = $this->author_mapping[$author];
else
$author = (int) get_current_user_id();
$postdata = array(
'import_id' => $item['post_id'],
'post_author' => $author,
'post_date' => $item['post_date'],
'post_date_gmt' => $item['post_date_gmt'],
'post_content' => $item['post_content'],
'post_excerpt' => $item['post_excerpt'],
'post_title' => $item['post_title'],
'post_status' => $item['status'],
'post_name' => $item['post_name'],
'comment_status' => $item['comment_status'],
'ping_status' => $item['ping_status'],
'guid' => $item['guid'],
'post_parent' => $post_parent,
'menu_order' => $item['menu_order'],
'post_type' => $item['post_type'],
'post_password' => $item['post_password']
);
$menu_item_db_id = wp_insert_post( $postdata, true );
if ( is_wp_error( $menu_item_db_id ) ) {
$post_type_object = get_post_type_object( $item['post_type'] );
printf( __( 'Failed to import %s “%s”', 'wordpress-importer' ),
$post_type_object->labels->singular_name, esc_html($item['post_title']) );
if ( defined('IMPORT_DEBUG') && IMPORT_DEBUG )
echo ': ' . $post_id->get_error_message();
echo ' ';
}
}
$id = wp_update_nav_menu_item( $menu_id, $menu_item_db_id, $args );
}}}" WraithKenny
Future Releases 23309 Not all WP_Query::query_vars get updated during WP_Query::get_posts() Query normal normal defect (bug) new needs-unit-tests 2013-01-28T15:40:56Z 2019-06-04T20:43:47Z "There is a lot of logic within the WP_Query::get_posts() method that fills in missing query vars with defaults and manipulates others based on the rest of the query. However, some of the final states for many of the variables aren't updated in the WP_Query::query_vars array. For example, the post type is lost as a local variable and post_status is used for building compiling mysql expressions, but never directly updated.
The result is that any plugins that want to recreate the query for another system, (ie, an external search provider) must directly copy much of the business logic that WP_Query::get_posts() has embedded in it in order to fill in for the incomplete query_var array.
" prettyboymp
Future Releases 23318 Plugins Admin Showing Details for Wrong Plugin Plugins normal normal WordPress.org enhancement new 2013-01-29T22:41:54Z 2022-08-23T17:46:47Z "I just set up a new site with some plugins, none of them activated yet. The plugins screen says:
""There is a new version of Google XML Sitemaps available. View version 4.1 details or update now.""
I know for a fact there is no such version of this plugin. When I click details link, it tells me to install some other plugin called page-list?!" miqrogroove
Future Releases 23336 Sticky Posts lack sanity bounding. If used too much, can severely degrade performance. Query normal normal defect (bug) reopened 2013-01-31T05:09:37Z 2019-06-04T20:43:50Z "Came across an issue where a site was using sticky posts for a slider on the front page. The rest of the front page used custom taxonomy queries. As such, they'd mark items as sticky, have the slider grab the first three. Over years, they accumulated thousands of sticky posts, which, as you can imagine, made the front page of their site absurdly slow, as it was querying those thousands of posts every time.
Should we establish some sort of sanity limit here, to keep people from shooting themselves in the foot? I found this a REALLY hard issue to diagnose. Even with debug bar, there is no indication that sticky posts are being queried. There's just a giant WP_Query call that does a giant `IN()` query.
Something like a limit of 100 with FIFO would keep things from getting too crazy, without restricting people too much. If you have a need for more than that, you need to be using a taxonomy query." markjaquith
Future Releases 23361 "Deleting a user in Network Admin still defaults to ""Delete all posts""" Users 3.5 normal normal Future Release defect (bug) new 2013-02-01T19:02:55Z 2021-09-17T12:53:27Z "Background: #20045, #23224
We should either do what those tickets suggested in Network Admin as well for consistency, or redo/remove the form, since the attribution only works for the main site, as noted in [comment:ticket:20045:14]." SergeyBiryukov
Future Releases 23391 User in contributor role can add images to post only via the text editor Role/Capability normal normal Awaiting Review enhancement new 2013-02-05T07:34:26Z 2018-10-03T12:18:01Z "1. Create a user with contributor role
2. start new post with it
3. notice there is no ""add media"" button anywhere
4. switch to text editing
5. use the img button to insert a URL to a valid img on the web
6. request approval for the post
7. let admin/editor approve it
8. go the the post's URL and notice that the image is shown
So, it is not that contributors are not allowed to use images, it is just that WP makes it hard to do so.
Either HTML needs to be sanitized and have all img tags removes for contributors, or access to the media library should be allowed for contributors denying only access to uploading. I vote for the second option." mark-k
Future Releases 23413 Provide query result data to custom user columns Users normal normal enhancement new dev-feedback 2013-02-07T15:22:53Z 2019-06-05T06:39:04Z "When the filter manage_users_custom_column is triggered, it sends an empty string for the value field.
Since it's easy enough to extend the WP_User_Query with extra fields, it would be good to have those fields passed through if they exist to save having to requery the database with the user_id parameter to get the data.
I have attached a patch to show what I mean." JohnC28
Future Releases 23422 Add query filter argument to register_taxonomy Taxonomy normal normal enhancement new needs-unit-tests 2013-02-08T12:38:35Z 2019-06-04T21:08:16Z "Following on from the #21240 ticket which introduced the show_admin_column functionality I would like to suggest an additional argument to easily add the select list query filter for a taxonomy to the post-type list.
Currently a taxonomy query can be added via the 'restrict_manage_posts' action and 'parse_query' filter.
It would be useful to add an additional register_taxonomy argument of 'show_column_filter' to define a standard select option list of the taxonomy terms. Things like default option and hierarchy could be optional settings is an array is passed instead of boolean.
" tifosi
Future Releases 23423 sanitize_title() in dynamic_sidebar() restricts the use of specific characters for sidebar IDs chriscct7 Widgets 2.2 normal normal defect (bug) reopened needs-unit-tests 2013-02-08T13:25:00Z 2019-06-05T06:39:05Z "In the dynamic_sidebar() function in wp-includes/widgets.php uses sanitize_title() on the given index when it looks for a sidebar with a name that matches the index. After that it leaves the index value sanitized making it impossible to use characters not allowed by sanitize_title() in a sidebar ID.
By not overwriting the given index value with the sanitized version it would still be possible to use any character for the ID. To achieve this, lines 847-853
{{{
$index = sanitize_title($index);
foreach ( (array) $wp_registered_sidebars as $key => $value ) {
if ( sanitize_title($value['name']) == $index ) {
$index = $key;
break;
}
}
}}}
should be replaced with
{{{
$sanitized_index = sanitize_title($index);
foreach ( (array) $wp_registered_sidebars as $key => $value ) {
if ( sanitize_title($value['name']) == $sanitized_index ) {
$index = $key;
break;
}
}
}}}" paulvandermeijs
Future Releases 23424 WP_Image class for handling images from the media library Media 3.5 normal normal enhancement new dev-feedback 2013-02-08T15:41:24Z 2019-06-04T20:04:57Z "Since 3.5 we have the class WP_Image_Editor. This needs a file path to be able to manipulate an image. Currently you would have to use something like wp_get_image_editor( _load_image_to_edit_path( $post_id ) ). What is wrong since you are using a ""private"" function.
Currently I'm working on this idea and you can find the code here https://github.com/markoheijnen/WP_Image/blob/master/wp-image.php. What it does now is getting the filepath, be able to get the image editor, add an image size on the fly and getting/updating the metadata.
We really miss something like a WP_Image class in WordPress. However I'm not sure what kind of functionality is needed for it. I like the current class mainly because it gives you the power to create an image size for a specific media image and stores it in the sizes array. When a user removes the media image then also the custom sizes will be removed." markoheijnen
Future Releases 23432 "Review usage of target=""_blank"" in the admin" sabernhardt* Administration 3.2 normal normal Future Release task (blessed) accepted 2013-02-09T15:26:25Z 2023-11-17T17:54:28Z "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
Future Releases 23436 Media Gallery - Cropping Image and then Cropping a thumbnail from that crop doesn't work. joedolson* Media 3.5 normal normal Awaiting Review defect (bug) accepted close 2013-02-10T17:20:00Z 2022-12-07T16:05:48Z "'''A recipe for repeating the bug behavior:'''
Navigate to Library in the admin sidebar.
Click ""Add new"".
Drag the 800x480 copy of this or any image to the drag and drop area:
http://en.wikipedia.org/wiki/File:Cheese_platter.jpg
(I suggest this image for ease of recipe duplication and best explanation.)
After the blue status bar has completed, ""Edit"" to bring the media edit window up in a new tab.
Click ""Edit Image"" below the actual image.
Drag anywhere inside the image to create a cropping box.
In the ""Image crop"" pane, set the crop area to 500px width, 100px height.
Drag the cropping box so that the fancy toothpick is as far left as possible along the horizontal axis of the cropping box, but centered vertically.
Click the ""Crop"" icon. Click ""Save"". Click ""Update"".
Click ""Edit Image"" once again.
Drag inside the newly-cropped image again to create a new cropping box.
In the ""Image Crop"" pane, change the cropping dimensions to 150 x 100.
Drag the box so the fancy toothpick is somewhere in the left third within the crop boundary.
'''Important:''' In the thumbnail settings pane, set ""Apply Settings to:"" '''Thumbnail'''.
Click the ""Crop"" icon. Click ""Save"". Click ""Update"".
Click ""Library"" in the admin sidebar.
The newly preferred thumbnail for our previously-cropped image does not save. Thumbnail remains default, based on center of previously-cropped image. Instead, you will see a small wheel of cheese sliced into six wedges with garnishes for the thumbnail, even though we chose the part with the fancy toothpick." gr33nman
Future Releases 23464 WXR importer: Poor UX when creating new user to import to Import normal normal enhancement new 2013-02-13T07:05:33Z 2019-06-04T20:04:59Z "When importing WXR you are prompted to assign a user to which of the existing users the imported content will be assigned, but it is also possible to provide a name of a new user which will be created and the content then will be associated with it.
The new user functionality sucks
1. No email or password is required therefor the user for a while is missing data which is assumed to always exist for a user. In the end of the import there is a small notice about updating the user data, but it gets lost in all the output being generated during import
2. Processing does not stop if user creation had failed (I used hebrew characters for user name) and the imported content is assigned to the current user. WTF?
" mark-k
Future Releases 23483 Incorrect image URL for subsites when using UPLOADS constant on multisite subdirectory installation Upload 3.5.1 normal normal Awaiting Review defect (bug) new 2013-02-15T18:56:54Z 2017-07-08T00:41:31Z "If the UPLOADS constant is used on a Wordpress Multisite installed to subdirectory, using subdirectory mode, then image URLs for subsites are incorrect.
Example:
* WP MS installed to www.domain.com/wordpress, subdirectory not subdomain
* UPLOADS set to 'assets'
Main site uploads images to /wordpress/assets/... [[BR]]
Main site image URL is www.domain.com/wordpress/assets/...
1. Create subsite called 'subsite';
2. Subsite uploads images to /wordpress/assets/sites/2/...
3. Subsite image URL is www.domain.com/subsite/assets/sites/2/... when it should be www.domain.com/assets/sites/2/...
This is because wp_upload_dir() uses get_option('siteurl') to derive the URL. It is probably right for subdomain multisite but wrong in this use case." creativeinfusion
Future Releases 23487 is_blog_installed gives erroneous result on moved database Upgrade/Install 3.0 normal normal defect (bug) new dev-feedback 2013-02-16T13:11:37Z 2021-03-30T14:02:15Z "I resently moved my blogs to a new database, but when I tried it out, on of the blogs wanted a new install. Of course I did not want to do an install and overwrite my blog.
I indirectly found the reason in is_blog_installed, which suppresses database errors. Thus I did not see this error.
SELECT command denied to user 'techblog'@'localhost' for table 'wp_options'
Of course it was my fault, but I virtually had to take the wordpress code apart to find out why my migration failed.
Of course this is not a big problem on new installs, but very likely to happen on moving databases.
" Kjeld Flarup
Future Releases 23562 Using Speech Recognition Software with the Add Media Panel joedolson* Media 3.5.1 normal normal Future Release defect (bug) accepted reporter-feedback 2013-02-20T16:06:02Z 2023-08-24T13:36:57Z "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
Future Releases 23602 "Incorrect canonical redirect if p=123 query argument present in ""paged"" archives" Canonical 3.5 normal normal defect (bug) new needs-unit-tests 2013-02-25T08:34:19Z 2019-06-04T19:23:57Z "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
Future Releases 23616 General Handler for Whitelisted Options' Submissions Options, Meta APIs normal normal feature request new 2013-02-26T03:06:55Z 2019-06-04T20:43:51Z As stated over on #18285 WordPress should move away from posting to options.php. In order to do that, the Settings API needs a general purpose function that can be safely called on all Settings Pages that can handle posts to itself (generally referred to as 'take_action' in various places) and can handle what options.php currently does. WraithKenny
Future Releases 23637 wp-signup.php has overly aggressive CSS Login and Registration 3.0 normal normal Future Release defect (bug) new 2013-02-27T14:33:46Z 2020-03-04T06:25:13Z The CSS added through wp_head by wp-signup.php stops Multisite form fields from being styled through inheritance. Allowing inheritance will result in more consistent styling with the active theme (for example, field font-size). kwight
Future Releases 23709 Relax wildcard restrictions for populate_network() when installing in subdomain mode Upgrade/Install 3.5 normal normal enhancement assigned 2013-03-06T20:03:49Z 2019-06-04T21:08:25Z "I ran into the issue while trying to use wp-cli install-network command with --subdomains support.
Underlying core issue is that populate_network is trying to check if wildcard subdomain is accessible. This makes sense for large networks, but might not work with certain setups, or not needed for small sites.
Proposed solution is to add extra arg for populate_network() $wildcard_check with default to true. See attached patch" rinatkhaziev
Future Releases 23845 Install new theme via FTP failed Filesystem API 3.5.1 normal normal defect (bug) new 2013-03-22T12:19:03Z 2019-06-04T19:44:34Z "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
Future Releases 23857 Delete User Should Delete Comments Users 3.5 normal normal enhancement new 2013-03-25T07:10:55Z 2019-06-05T06:39:10Z The delete user function should also delete that user's comments or attribute that users comments to the person specified. That way, deletion of accounts goes a lot smoother. jamcat22
Future Releases 23863 Post Formats: allow filtering content_width per format in wp-admin Post Formats normal normal defect (bug) new dev-feedback 2013-03-25T20:55:33Z 2019-06-04T20:43:59Z "On front-end a theme can filter {{{$content_width}}} like so:
{{{
function twentythirteen_content_width() {
if ( has_post_format( 'image' ) || has_post_format( 'video' ) ) {
global $content_width;
$content_width = 724;
}
}
add_action( 'init', 'twentythirteen_content_width' );
}}}
But ... functions called in wp-admin that use the global {{{$content_width}}} variable won't be changed.
For example, using trunk and Twenty Thirteen theme:
1. Create a new post, set to Image post format
2. Click Add Media to insert an image
3. Upload an image at least 800 px wide
4. You'll see in ""Attachment Display Settings"" that width for the ""large"" size to insert to the post is 604 pixels and not 724.
Also, even if detecting a Post Format this way worked correctly on edit, it wouldn't work on first post creation because of how the UI uses JS to switch between the formats." lancewillett
Future Releases 23866 WordPress xmlrpc wp_getPosts filter for slug XML-RPC 3.4 normal normal enhancement new dev-feedback 2013-03-26T20:09:31Z 2019-06-05T06:39:12Z "When using the Wordpress xmlrpc, it is sometimes very useful to get posts based off of slugs rather than post id.
A use case for this would be synchronizing or migrating two Wordpress sites with the same posts, but with different databases and post ID's.
" SunWaves
Future Releases 23867 add_rewrite_endpoint causes front-page.php template to be ignored Rewrite Rules 3.5.1 normal normal defect (bug) new reporter-feedback 2013-03-26T21:49:18Z 2019-06-04T21:08:27Z "I have a front-page.php template in my theme folder, as per the template hierarchy this is used regardless of whether I am showing posts or a page as the front page.
However, when I add a rewrite endpoint (on the init hook), index.php is used for the front page template when I add my query var to the URL. It makes no difference if I set the front page to show posts or a page. If I do not add the query var, front-page.php is correctly used.
i.e. http://domain.com correctly uses front-page.php, http://domain.com/nl wrongly uses index.php
This happens whether I use EP_ALL or EP_ROOT as the places parameter.
All other template files are fine, it's only the homepage with the problem as far as I can see." lumpysimon
Future Releases 23909 Widgets settings loaded and instances registered unnecessarily Widgets 3.5.1 normal normal defect (bug) new 2013-03-30T16:02:05Z 2019-06-05T06:39:14Z "The settings for all registered multi-widgets get loaded with each request in `widgets_init`, and all widgets get registered even if they are never used (e.g. inactive ones). As the total number of inactive widgets tend to grow over time, the result is slower and slower page loads across all of a WordPress install.
Ideally only the widgets returned by `wp_get_sidebars_widget()` would only get loaded and registered, though this would have an impact on how the widgets in the Customizer work." alex-ye
Future Releases 23915 discover_pingback_server_uri cases an error when discovery URI sets multiple Content-type headers dd32 Pings/Trackbacks 2.7 normal normal defect (bug) assigned needs-unit-tests 2013-04-01T14:25:25Z 2019-06-04T20:44:00Z "Line 1673 in wp-includes/comment.php uses preg_match() on the output of wp_remote_retrieve_header(). When multiple headers are set of the same name, wp_remote_retrieve_header() returns an array.
Thus occasionally the following error occurs:
PHP Warning: preg_match() expects parameter 2 to be string, array given in xxxxxxx/wp-includes/comment.php on line 1673
I have no idea how to make pingbacks happen so to reproduce, add this line to functions.php: discover_pingback_server_uri('http://localhost:8080/');
And in a terminal window run this (you may need to install the netcat-openbsd package in Debuntu):
`while true; do echo -en 'HTTP/1.1 200 OK\r\nContent-type: text/html\r\nContent-type: text/plain\r\n\r\n' | nc -lp 8080; done`
Then visit your WP installation and you shall get the aforementioned error message." tomdxw
Future Releases 23922 make_clickable() breaks when colon in hash Formatting normal normal defect (bug) new 2013-04-03T00:41:39Z 2019-06-04T19:44:36Z "`make_clickable()` doesn't like this string:
{{{
http://en.wikipedia.org/wiki/URI_scheme#tel:
}}}
It results in this HTML:
{{{
http://en.wikipedia.org/wiki/URI_scheme#tel:
}}}
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
Future Releases 23931 wp_insert_comment should require comment_post_ID Comments 2.0 normal normal defect (bug) new close 2013-04-03T18:41:58Z 2023-02-21T20:07:06Z "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
Future Releases 24026 No /themes/ folder causes strange behaviour Themes 3.1 normal normal defect (bug) new 2013-04-10T07:05:04Z 2019-06-04T21:08:29Z "I know, that it's a tricky behaviour, but the problem exists.
1. Unzip WordPress files to appropriate place
2. Go to /wp-content/ and delete /themes/ folder
3. Install WordPress using it's wizard (ignore error in Dashboard that no theme activated)
4. Go to Plugins page in admin area
5. Install BuddyPress (this plugin register the theme BP Default that is situated in plugin folder - '''this is very important''')
6. Activate BuddyPress and complete its wizard to make BP functional
7. Go to Themes page in wp-admin
8. You will now see BP Default Theme. Try to activate it
9. Ta-da! You've just unlocked a new badge for catching an error." slaFFik
Future Releases 24143 When define('WP_CONTENT_DIR', 'your-dir') twentythirteen - The theme directory does not exist. Themes 3.4 normal normal defect (bug) reopened needs-unit-tests 2013-04-20T10:08:16Z 2021-04-20T06:02:42Z "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
Future Releases 24251 Reconsider SVG inclusion to get_allowed_mime_types Upload normal normal Awaiting Review enhancement reopened dev-feedback 2013-05-02T19:36:57Z 2023-03-27T19:24:23Z "There are some who think SVG should be included in core as an allowed mime type. Makes fine enough sense to me, since there is a good argument for it, and we have support for WordPerfect documents...so there's that.
Related: #20990" JustinSainton
Future Releases 24283 is_active_widget() incorrect logic Widgets normal normal defect (bug) new dev-feedback 2013-05-08T07:07:41Z 2019-06-05T06:39:17Z "`is_active_widget()` only returns 'true' only if widget used inside sidebar.
But there is a provision to use widget directly using `the_widget()` function. I believe there is a need of alter the logic of just checking inside sidebars." valllabh
Future Releases 24386 Make _pad_term_counts work for non-post type objects and attachments Taxonomy normal normal enhancement new needs-unit-tests 2013-05-22T18:23:31Z 2020-11-05T15:55:22Z "If you register a hierarchical taxonomy against a non-post object (such as users), or attachments that aren't associated with another post, _{{{pad_term_counts}}} does bubkus, due to the INNER JOIN on {{{$wpdb->posts}}}, and the check for 'publish' status (which is relevant for attachment post types).
I'm suggesting an alternative approach would be to use $term->count, and eschew going back to the database altogether." TomAuger
Future Releases 24415 The 'show_in_admin_all_list' argument for the 'register_post_status' function is ignored when the argument 'public' is set to 'false' Posts, Post Types 3.5.1 normal normal defect (bug) new dev-feedback 2013-05-25T00:06:51Z 2023-05-24T16:08:16Z "Hello,
I stumbled upon a bug in the admin section of WordPress. I'm currently running the latest release (3.5.1) without any third-party plugins.
After creating some custom post statuses via the 'register_post_status' function, I noticed that posts with them do not appear in the default (all) post listing in the admin section, despite me setting the 'show_in_admin_all_list' argument to 'true'.
I narrowed this problem down only to the 'public' argument of the same ('register_post_status') function: if the 'public' argument of custom post status is set to 'true', then everything works as expected and the posts with a custom post status appear in the default (all) post listing in the admin section — but this also makes posts with that custom post status appear to the regular users, making them public, hence the name of the argument.
It's worth noting that the 'public' argument has no such buggy effect on the 'show_in_admin_status_list' argument of the same ('register_post_status') function: it doesn't matter to what the 'public' argument is set — the links to the appropriate post statuses are showed at the top of the post listing only based on the 'show_in_admin_status_list' argument, just like it should." XyntaMan
Future Releases 24447 Avoid losing data after nonces expire iseulde Administration normal major Future Release defect (bug) assigned early 2013-05-29T07:55:35Z 2020-05-14T19:23:54Z "Happens when an admin page containing a form is left open for more than 24 hours and the user decides to submit the form. This is quite rare for most admin pages as the users typically spend short time there. However this can happen on the Edit Post screen too despite that we refresh the basic nonces every `wp_nonce_tick` (12 hours):
- The user starts new post.
- At some point the Internet connection is lost.
- The user decides to finish later and puts the computer to sleep (closes the laptop, etc.).
- The user decides to continue writing more than 24 hours after that.
At this point all nonces have expired and cannot be updated as we've missed the previous nonce_tick update." azaozz
Future Releases 24552 Taking over a locked post does not always load the most recent revision Autosave 3.6 normal major defect (bug) new 2013-06-10T10:33:44Z 2019-06-04T19:24:06Z "Steps to reproduce:
1. Open up a post for editing, and make some changes to it. Do not save the changes.
2. Open up the same post for editing using a different user account (in a different browser![1]) and click the 'Take over' button when you get the post lock modal.
3. Note that the post that loads is not the most recent autosave of the post, but equally importantly you are not shown the message stating this.
4. Reload the editing screen and you'll be presented with the ""There is an autosave of this post that is more recent than the version below."" message.
Related: #23697
----
![1] The simplest way to do this is to use an Incognito browser window (and [http://wordpress.org/plugins/user-switching/ User Switching]) so you can be logged in as two accounts simultaneously. " johnbillion
Future Releases 24567 Add help to media modals Help/About 3.5 normal normal Awaiting Review enhancement new dev-feedback 2013-06-12T08:06:29Z 2023-03-12T18:17:27Z They are far from simple screens but there is no help available for them. mark-k
Future Releases 24572 Should be able to unlock a post outside of ajax handler Posts, Post Types normal normal enhancement new dev-feedback 2013-06-12T20:28:37Z 2019-06-04T20:44:25Z "Right now you can programmatically lock a post for editing using wp_set_post_lock, but you can't unlock it in a similar fashion. The only unlocking code is found in the ajax handler wp_ajax_wp_remove_post_lock.
I've created a function wp_unset_post_lock in the style of wp_set_post_lock that unlocks a post with a given ID. I've also refactored wp_ajax_wp_remove_post_lock to use this function.
The only resulting difference is that we use the current user's ID instead of the one supplied in the ajax call, but since we're unlocking the post instead of locking it, it doesn't really matter who's ID is in the meta.
This change was requested by Joey Kudish of the VIP team." bbrooks
Future Releases 24579 Add Drag'n'Drop UI to plugin and theme manual uploaders Upgrade/Install normal normal Future Release enhancement new 2013-06-14T17:03:38Z 2023-12-18T16:24:54Z "We have this nice looking easy to use drag-n-drop UI for our media, is there anything stopping us from having it for our plugin and theme uploaders? I know most people use the search that goes through the .org repo, but it's foolish to think that's the only place people ever get their products. This would help facilitate a consistent user experience throughout the entire WP Admin.
Edit:
If possible, support multiple uploads too." tw2113
Future Releases 24672 Remove final from WP_Post class Posts, Post Types 3.5 normal normal Awaiting Review enhancement reopened dev-feedback 2013-07-02T03:48:03Z 2018-04-18T19:44:22Z "After discussing it with stephdau and reading through #21309, I think a discussion should be had on the validity of using the final keyword on the class.
While I agree that a decorator pattern is probably best for building the class, there is still no reason for the keyword to be used. If someone wants to extend the class then they should be allowed to do so." carlalexander
Future Releases 24766 Title attributes galore. They serve no useful purpose. sabernhardt* Administration normal normal Future Release task (blessed) accepted 2013-07-16T00:29:25Z 2024-02-14T19:05:13Z "This is a full list of methods, including what files they're from, where HTML title attributes are in use.
The title attribute provides a tooltip on certain browsers. Other than that, it is essentially useless. As provided in WordPress, the title attribute is both redundant and useless, because in most cases, it is a complete duplicate of the link's text. Therefore the tooltip provided is of no value whatsoever.
For users of assistive technologies, the title attribute is useless at best and sometimes an annoyance. Users of text-to-speech software who have configured their software to do so will hear the title attribute twice.
Essentially the extensive use of title attributes throughout WordPress Core amounts to unnecessary code bloat.
I recommend eliminating the title attributes from all of the methods below:
{{{
// user.php
wp_authenticate_username_password()
// post-template.php
wp_page_menu()
wp_get_attachment_link()
// media.php
get_image_tag()
// media-template.php
wp_print_media_templates()
// link-template.php
edit_term_link()
edit_post_link()
edit_comment_link()
edit_bookmark_link()
get_adjacent_post_rel_link()
the_shortlink()
// default-widgets.php
widget()
// comment-template.php
comments_popup_link()
comment_form()
// class-wp-theme.php
markup_header()
// class-wp-editor.php
wp_fullscreen_html(). There is one title attribute here on what I think is a TinyMCE button. If that looks like a button, it should actually be a button.
// class-wp-customize-section.php
render()
// category-template.php
get_category_parents()
get_the_category_list()
wp_generate_tag_cloud()
start_el()
// bookmark-template.php
_walk_bookmarks()
// author-template.php
get_the_author_link()
the_author_posts_link()
wp_list_authors()
// rss.php
wp_rss()
get_rss()
// general-template.php
get_calendar()
// class-wp-admin-bar.php
_render_item()
}}}
* Note:
Ignored: All Third party classes
" karlgroves
Future Releases 24776 Need Filter Hooks on Creating Slug - Check Availability of Slug if That is Used for Post, Page, Taxonomy or any Plugin Permalinks normal normal Awaiting Review feature request new dev-feedback 2013-07-16T21:06:09Z 2022-02-14T05:01:30Z "I did not find any '''filter hook''' for choosing slug for any object. I have a plugin that creates its own URLs. eg. example.com/my-campaign . If someone hits on this url then he will see my plugin generated page. But if there is already a page ""'''My Campaign'''"" then WP is unable to show that page because that '''permalink''' already taken by my plugin. So Before creating my plugin slug I need to check '''WP posts, pages and taxonomies''' if any of those already used my slug. I also need to check Root directory of WordPress installation if there is a '''directory with same name''' of my slug.
WP Core checks available slug in its own database and reserved words. But it doesn't check slugs those are used by any plugin. If there is a post name ""'''my-campaign'''"" then my plugin don't let to chose this slug but If my plugin took this before and user want create a page ""my-campaign"" then WordPress will take the same slug. And here is the main problem.
In the same way my plugin is conflicting with other plugins. My plugin can check WordPress core slugs but not other plugins.
""'''Pretty Link'''"" is one of the most popular plugin. It also creates its own url. It also checks available slug in wordpres db but not in other plugin.
Any plugin may have custom rewrite rule, then my plugin can not handle that.
So I think we need a standard rule that will be followed by WordPress core and all plugins.
I have three different plugins those need own slugs. I made a universal process that I am using in all of my plugins.
I am explaining my process bellow.
I am using a filter hook ''''onetarek_is_slug_available'''' all of my plugin use this filter before choosing a slug.
MY CODES:
{{{
get_var($wpdb->prepare(""SELECT post_name FROM {$wpdb->posts} WHERE post_name=%s LIMIT 1"",$slug));
$has_taxonomy = $wpdb->get_var($wpdb->prepare(""SELECT taxonomy FROM {$wpdb->term_taxonomy} WHERE taxonomy=%s LIMIT 1"",$slug));
if( $has_postname or $has_taxonomy )return false;
#Check if any same named file or directory exists in the root of wordpress installation
$root_directory = opendir(ABSPATH);
$slug_lower=strtolower($slug); #we consider wp-content and Wp-ContENT and WP-CONTENT are same.
while (($file = readdir($root_directory)) !== false)
{
$filename = strtolower($file);
if($filename == $slug_lower) return false;
}
#Check same slug is exists in click jacker database.
#if same slug exists and associate for given id then return slug . We allow this
if($id){$id=intval($id);}
if($id)
{
$SQL = $wpdb->prepare(""SELECT slug FROM "".CLICK_JACKER_CAMPAIGN_TABLE."" WHERE slug=%s AND id =%d"", $slug, $id);
$has_slug = $wpdb->get_var($SQL);
if( $has_slug == $slug ){return $slug;}
}
#if same slug exists and no id given then we don't accept this.
$SQL = $wpdb->prepare(""SELECT slug FROM "".CLICK_JACKER_CAMPAIGN_TABLE."" WHERE slug=%s"", $slug);
$has_slug = $wpdb->get_var($SQL);
if( $has_slug == $slug )return false;
return $slug;
}
add_filter('onetarek_is_slug_available', 'otk_filter_available_slug', 10, 2); ?>
}}}
I am calling above filter where I need
{{{
}}}
My technique is limited.
In my filter function I run 2 SQL query to check WP slugs , but that is limited. WordPress has reserved words also, those are not being checked in this process. And my other 2 plugins also run the same. Now if any website uses my 3 plugins then same process will be run 3 times and 6 SQL query will be run to check WP slugs. My function is unable to check the slug of ""Pretty Links"" plugin.
But if '''WORDPRESS core''' would have a '''FILTER HOOK''' and run a function with this filter to check any kind of WP slugs then my plugins would search only its own database once. AND other plugin developer would attach a function with this filter. And they would check only their own database. Plugins don't need to check WP slugs because core function already fired with this FILTER HOOK.
In the same way WP core should respect other plugin slugs and '''custom url rewrite rules'''. When WP check available slug for post, page, taxonomies then it should use this FILTER also.
I THOUGHT THIS WAY BECAUSE I DON'T FIND ANY WAY. IF ANYTHING ALREADY EXISTS IN WP PLEASE LET ME KNOW.
Regards
Jahidul Islam (oneTarek)
[http://onetarek.com]
" onetarek
Future Releases 24780 Use error handlers rather than the error suppression operator Filesystem API normal normal Future Release defect (bug) new 2013-07-17T01:14:56Z 2023-09-07T09:39:17Z "In various places in core (and included libraries, such as pclzip, FTP and phpass), the error suppression operator is used to suppress warnings and notices. However, this also suppresses fatal errors, which makes it a huge pain for debugging.
The big one here is `fopen`, where it is used to suppress warnings when opening a handle fails. For normal files, this is fine since the only errors generated are warnings. When using streams and custom stream handlers, these can generate errors which are really hard to find with this.
(I ran into this with the App Engine plugin, where the SDK method generates a fatal error if the mode is `a`, which is used with error suppression in `win_is_writable()`.)" rmccue
Future Releases 24791 Map audio/video shortcode IDs on import Import normal normal task (blessed) new 2013-07-17T21:39:47Z 2019-06-04T20:05:43Z See #24458. nacin
Future Releases 24844 get_theme_mods doesn't return the theme customizer preview's new values. Customize 3.5.2 normal normal Future Release defect (bug) new 2013-07-26T13:41:52Z 2017-02-14T18:44:32Z "Using the theme customizer API, you can call get_theme_mod($option) to return the value for a specific theme option.
In the case of the user interacting with the theme customizer, if they have changed an option, the theme customizer replaces the saved option with the previewed / new setting by hooking onto the {{{theme_mod_$name}}} filter applied in {{{get_theme_mod}}}.
However, should the user need or desire to retrieve all theme mods at once, the filter is not applied, and the new settings are never injected into the saved settings array.
There's a workaround to simply loop through the settings and manually apply the filter, but it would be better if {{{get_theme_mods}}} had an argument like {{{$use_filter}}} and could add the filter in the core functionality.
{{{get_theme_mods}}} is in [source:tags/3.5.2/wp-includes/theme.php#L746 wp-includes/theme.php] on line 746.
{{{get_theme_mod}}} is in [source:tags/3.5.2/wp-includes/theme.php#L776 wp-includes/theme.php] on line 776.
{{{theme_mod_$name}}} filter is applied in [source:tags/3.5.2/wp-includes/theme.php#L780 wp-includes/theme.php] on lines 780 and 785.
{{{ theme_mod_$name}}} filter is added in [source:tags/3.5.2/wp-includes/class-wp-customize-setting.php#L72 wp-includes/class-wp-customize-setting.php] on line 72." nessworthy
Future Releases 24846 Usage of a shortcode disables wpautop filter Formatting 3.6 normal normal defect (bug) reopened 2013-07-27T12:28:03Z 2019-06-04T19:44:48Z "In WP3.6 RC1 when I do this:
{{{
Some text. Some text. Some text. Some text. Some text. Some text. Some text.
}}}
it works just fine. It creates a paragraph.
But when I do this (both in ""Visual"" and ""Text"" editors):
{{{
[symple_highlight color=""gray""]Some text[/symple_highlight]. Some text. Some text. Some text. Some text. Some text. Some text.
}}}
it doesn't wrap the text in anything. Paragraph is skipped.
The plugin that was used: http://www.wpexplorer.com/symple-shortcodes/ (but I bet it isn't plugin's bug)." Looimaster
Future Releases 24853 Add endpoint support to CPT archives Rewrite Rules normal normal enhancement new 2013-07-28T19:25:06Z 2019-06-04T21:08:52Z #16303 aimed to introduce an endpoint mask for CPT archives. However, the way that CPT rewrite rules are set up means that there isn't actually support for endpoints. duck_
Future Releases 24865 Allow plugins to hook into autosave and include field data from the autosave with the package. Autosave normal normal enhancement new 2013-07-28T22:55:43Z 2019-06-04T19:24:10Z "== Why? ==
Autosaves currently only save ""blessed"" data (post_title and post_description?). Plugin authors may want to add their own data in the autosave package so if they hook into `save_post` they can handle/save that data as needed.
== How this works ==
Metaboxes are generated with an id already on the page. So what we do is add an extra parameter to the `add_meta_box()` function (`do_autosave` bool) so that when a plugin uses add_meta_box() they can set that flag.
We set a javascript object that contains the ids of the metaboxes that have had that flag set and then `wp.autosave.getPostData` in `autosave.js` has been modified to loop through the metaboxes matching those ids and return the fields in those metaboxes as an object attached to the data param.
Added a new jquery plugin (serializefullarray) as it will handle nested pseudo arrays set as the ""name"" values in inputs (i.e. somedata[one][two]) and create proper objects from them. " nerrad
Future Releases 24867 Feeds for custom posts type can not be set independently of has_archive and supports => comments nacin Posts, Post Types 3.8 normal normal defect (bug) assigned 2013-07-29T00:12:27Z 2019-06-04T20:44:35Z "I was testing the patch for ticket (Feeds or Feed - add_permastruct missunderstanding: #23302) and discovered a few things (I'm using trunk rev 19712).
Turning of feeds for custom post types only works if supports feeds & has_archive are set to either false or true.
If you, e.g. set the argument feeds in rewrite to true and has_archive to false then the rewrite rules for feeds do not get created (some happens of you switch true & false around in both arguments).
This happens due to this condition in /wp-includes/post.php, line 1242:
{{{
if ( ! isset( $args->rewrite['feeds'] ) OR ! $args->has_archive )
$args->rewrite['feeds'] = (bool) $args->has_archive;
}}}
Another problem I run into is that:
With the patch for ticket (#23302) you can not enable/disable the comments feed independent of the main feed of the custom post type. It also does not get disabled if you do not enabled comments via supports. Rewrite rules for feeds seem to always get created.
I've attached an example to showcase what I wrote above." marcosf
Future Releases 24879 Sourcemaps should be provided for use with minified javascript libraries Build/Test Tools normal normal Future Release enhancement new dev-feedback 2013-07-29T15:49:33Z 2017-02-19T10:42:42Z "Sourcemaps make it possible to debug minified files.
Supported in Chrome:
https://developers.google.com/chrome-developer-tools/docs/javascript-debugging#source-maps
Landing in Firefox in v23:
https://wiki.mozilla.org/DevTools/Features/SourceMap
When this feature is enabled, the Chrome console currently shows a 404 when the script specifies a sourcemap file and it isn't found." jblz
Future Releases 24888 In image editor, cropping scale gets applied off by 0.4% Media 3.5 normal normal defect (bug) new 2013-07-30T13:55:51Z 2019-06-04T20:05:48Z "When you scale the crop preview, the editor does not keep the right ratio.
To reproduce this error:
- Upload an image with 4608 x 3072
- On the crop feature, create an selection with 1680 x 560
- Hold shift and scale to fit all image width (4608px)
- The height result was 1544px, that is wrong, the correct is 1536px.
" diegomarangoni
Future Releases 24925 Improve no disk space error handling when updating plugins Filesystem API normal minor Awaiting Review enhancement new dev-feedback 2013-08-02T11:25:24Z 2021-07-20T23:02:17Z "I received the following uninformative error message when trying to update a plugin (roughly translated from Finnish):
{{{
Error on updating BulletProof Security. Cannot create folder. /[WPDIR]/wp-content/upgrade/bulletproof-security.tmp.
}}}
The error was caused by not having enough disk space. The plugin update should check if that's the reason for the error and then display a more informative error message." Daedalon
Future Releases 24934 More flexible response reporting in wp-plupload.js Upload 3.6 normal normal Future Release enhancement assigned 2013-08-03T00:30:06Z 2019-05-15T21:13:41Z "The wp-plupload.js wrapper to the plupload library only returns server responses to bound callbacks in the case of a well formed error (the server responds with {{{ { success: false } }}}).
Sometimes it may be useful to receive additional information from the server on ''successful'' upload. I have prepared a patch that allows for the {{{success}}} and {{{error}}} callbacks to receive server responses." ippetkov
Future Releases 24963 IIS Multisite, Suspected bug in web.config code for URL Rewrite (404 wp-login) Rewrite Rules 3.5 normal normal Future Release defect (bug) new has-patch 2013-08-06T06:17:40Z 2017-10-06T14:58:07Z "Hello.
I believe I've found a bug in WordPress 3.52 and 3.6 (and possible older versions, but these are the versions I've used).
I'm running a WordPress Multisite website in a Windows IIS environment (yes, I'm a minority!).
The issue is with the web.config code which WordPress provides to configure the URL Rewrite module, specifically with rule 4:
{{{
}}}
I believe that the last line should say {R:2}, not {R:1}.
With the web.config file configured as documented, I am unable to access the dashboard for any sub-sites, and no styling loads for the sub-sites either (presumably it cna't find it's CSS and other associated files).
I've had this working without issues previously (last year), so I dug up an older web.config file. There were two differences. The first was that the newer file does not have a line referencing ms-files.php (I'm guessing it's been obsoleted), and the second change was that this rule used to say {R:2} (which works), while it now says {R:1}.
WordPress provides the code for the web.config file in the Settings > Network Setup Page.
Hope this helps :)." ShaunLeeClarke
Future Releases 24995 Importer does not check to see if DOM is available Import 3.6 normal normal WordPress.org defect (bug) new 2013-08-08T20:55:34Z 2017-02-21T09:11:58Z "I have a WordPress network with many blogs. I exported a few posts from one blog (export file attached with some details sanitized). I then imported the posts into another blog.
Not only does the import probably do nothing, the '''/''blogname''/wp-admin/import.php''' page stops rendering after:
{{{
Import WordPress
}}}
That is, if you do a view source on the page, the above '''h2''' element is the last thing you see.
Expected behavior: execution does not stop mid-page, and if there is an error, it is displayed for logged-in administrative users.
I am logged in as a network administrator." novasource
Future Releases 25006 Display date pages from categories with permalinks Permalinks normal normal feature request new close 2013-08-10T00:46:10Z 2019-06-04T20:44:39Z "When permalinks are not set up we can view posts from a specific category from a specific year (date), but if the permalinks are set up we can view only date pages or category pages.
This works:
`site.com/?cat=1&m=201307` (works)
This does not work:
`site.com/category/uncategorized/2013/07` (does not work)" alexvorn2
Future Releases 25016 "XMLRPC method ""wp.getUsers"" not working correctly in Multisite" XML-RPC 3.5 normal normal defect (bug) assigned 2013-08-12T18:53:13Z 2019-06-05T06:39:20Z "Hi,
I have been testing some functionality in our app which uses XMLRPC, and it appears that I've found a bug with how the ""wp.getUsers"" method works on WordPress.com blogs.
Basically, the blog I'm testing this on has 3 administrators. Regardless of which one of those administrators' credentials I use, whenever we call the ""wp.getUsers"" method we ONLY get details for the SAME user back. So, if we have 3 admins ('admin1', 'admin2', 'admin2'), whenever 'admin1' queries for all users, they only get back 'admin1'.
I also tried adding a different type of user, specifically an author, and then used any of the above-mentioned administrator credentials to try and retrieve info on that author, but nothing is returned.
It should be noted that all the above functionality works as it should on self-hosted blog, just NOT on WordPress.com blogs.
" dinomic
Future Releases 25037 XML-RPC : Can't remove all the categories from a post by using metaWeblog.editPost XML-RPC 3.6 normal normal defect (bug) assigned 2013-08-14T17:41:00Z 2019-06-05T06:39:22Z "Seems that you can't remove all the categories from a post by calling mw_editPost.
I tried both passing an empty array, or skipping the entry 'categories', in the content struct, but none of them worked. The post still has the previous categories attached to it." daniloercoli
Future Releases 25076 CSS issue with native video player and flash fallback on full screen wonderboymusic Media 3.6 normal minor defect (bug) assigned 2013-08-18T21:02:34Z 2019-06-04T20:05:52Z "Hi,
I noticed there's a bug with the CSS and the new native video player introduced in v3.6.
This is how it looks when not using full screen:
[[Image(http://img11.imageshack.us/img11/1374/g0n.png)]]
And this is how it looks when using full screen:
[[Image(http://img823.imageshack.us/img823/7278/qna.png)]]
It automatically changes the color of the bar.
This is the shortcode I'm using to show the video:
{{{
[video src=""video.mp4"" width=""640"" height=""360"" autoplay=""true"" loop=""true""]
}}}
I tested this on a fresh WP 3.6 installation with Twenty Thirteen theme. This is the CSS:
{{{
.mejs-container, .mejs-embed, .mejs-embed body {
background: #464646;
}
.mejs-controls .mejs-time-rail .mejs-time-loaded {
background: #21759b;
}
.mejs-controls .mejs-time-rail .mejs-time-current {
background: #d54e21;
}
.me-cannotplay {
width: auto !important;
}
}}}
I also tested it on a post and on a page, happens the same on both." leandroprz
Future Releases 25103 Submit buttons on form fields in the Add Media panel joedolson* Media 3.5 normal normal Future Release defect (bug) accepted 2013-08-20T21:23:11Z 2021-05-21T15:57:23Z "Splitting this out from #23561
There is no Go or Search button available to trigger the action for the search and filter input fields in the Add Media screen - both of which change the content of the panel below. For accessibility reasons the user should be in control of triggering the filtering." johnbillion
Future Releases 25106 web.config for multisite configurations on IIS7 Rewrite Rules 3.5 normal normal defect (bug) new needs-unit-tests 2013-08-21T00:43:28Z 2019-06-04T21:08:57Z "The code that WordPress gives me for the web.config is incorrect. I downloaded the new 3.6 and this issue happened. I found the issue and solved it but wanted to let you know of this error as not many people run multisites on IIS7. So the rewrite code that was the issues is the following and was Rule 2
{{{
}}}
what i can tell this is trying to do is if a user types in just ""domain.com/wp-admin"" that it would redirect them to ""domain.com/wp-admin/"" but the desired results did not happen. the above code would redirect you to ""domain.com/domain.com/wp-admin/"" which obviously would cause issues after the user logs in as the redirect_to would point to http://domain.com./domain.com/wp-admin/ which would cause an endless loop. To fix this problem you need to add a / to the beginning of the rewrite like so
{{{
}}}
that extra / before the wp-admin/ forces it to the root of the site.. now i am not sure what this would do to a site in a sub directory but im not in a sub directory so not an issue for me." mrevets
Future Releases 25113 non-latin CPT rewrite slugs fail `wp_safe_redirect` Posts, Post Types 3.6 normal normal defect (bug) new 2013-08-21T20:37:36Z 2019-06-04T20:44:40Z "If you localize your custom post type rewrite slugs in non-latin language and pass it to `wp_safe_redirect` it will strip all non-latin characters and attempt to redirect to stripped location.
This can be easely reproduced if your custom post type supports comments and you submit a comment from post type single page as `wp_safe_redirect` is called after comment submission." entr
Future Releases 25122 First nav menu automatically adds all pages (including sub pages) but doesn't preserve page hierarchy nacin Menus 3.6 normal normal enhancement reopened 2013-08-23T06:20:33Z 2020-10-20T04:59:46Z "When you first visit {{{/wp-admin/nav-menus.php}}} in WordPress 3.6, if you don't already have a menu defined it automatically creates a new menu with all published pages in the menu.
On sites with many published pages and particularly sites with multiple levels of pages (child/parent pages), all of those pages are added as top level nav menu items.
(After the first menu is created, subsequent new menu requests create empty menus with no menu items in them).
The functionality was introduced in [23441].
Previous versions (such as 3.5) didn't automatically create a new menu.
Instead, when the first nav menu is automatically created I think we should either:
1. only add all top level pages by default, or
2. add all pages (including sub pages) but preserve the page hierarchy into the nav menu.
My preference would be option 1." jamescollins
Future Releases 25180 Make it possible to select only posts with comment_count > 0 Query 3.6 normal normal enhancement new 2013-08-29T17:03:00Z 2019-06-04T20:44:44Z May need this when #11398 goes in. wonderboymusic
Future Releases 25190 Improve name/pagename query variable mapping Query normal normal enhancement new needs-unit-tests 2013-08-30T08:12:13Z 2019-06-04T20:44:46Z `WP_Query` performs some mappings from custom query variables to `pagename` and `name` for custom post types. This could be improved so that `pagename` is not used for hierarchical post types when a top-level item has been requested. We could also do some mappings between `pagename` and `name` in case the incorrect query variable was used (see #16323). duck_
Future Releases 25192 Leverage signup_id when working with $wpdb->signups Login and Registration normal normal enhancement new 2013-08-30T14:32:59Z 2019-06-04T20:06:00Z Followup to #15004 — we should leverage the new primary key where possible, when working with $wpdb->signups. nacin
Future Releases 25219 DISALLOW_FILE_MODS shouldn't remove update notifications Upgrade/Install normal normal Future Release enhancement new 2013-09-02T20:09:11Z 2019-05-27T16:43:23Z "I think there are valid use cases where an admin would want to set `DISALLOW_FILE_MODS`, but still want to get the notifications when core/plugins/theme updates are available.
Instead of using the built-in updater, some installs are setup to use svn:externals (or Git submodules) for updates, and others prefer to use wp-cli. In those cases, it's still very useful to get the notifications, because without them an admin has to remember to manually check for updated. That inevitably leads to situations where important security updates are missed for weeks or months, which makes the site vulnerable.
I understand the logic behind removing the notifications -- because the admin can't actually take action on them through WordPress -- but I think that incorrectly assumes that the notices have no purpose if they can't be acted on from inside WordPress. The notifications are still very useful, even if the admin chooses a different method of actually installing the updates.
My proposed solution is to introduce new meta capabilities for `view_core_updates`, `view_plugin_updates`, and `view_theme_updates`. This would add some granularity to the current approach, so we could distinguish between being able to ''know'' that updates are available, and being able to ''install'' them.
The new meta caps would default to `manage_options`, so that all administrators could see them, regardless of `DISALLOW_FILE_MODS`. If that's undesirable, though, then they could map to their corresponding meta caps (`update_core`, etc) instead (and then be overridden via the `map_meta_cap` filter in order to enable the notifications)." iandunn
Future Releases 25338 Comments of password-protected posts should not be shown to logged-in users without edit capability Comments normal normal enhancement new 2013-09-17T02:30:31Z 2019-06-04T19:24:16Z "Currently, if an user creates a password-protected post, Authors and lower roles cannot view the post neither on the front end nor in the backend, unless it was their own post (or they have the password).
However, they can see comments of those posts while viewing edit-comments.php.
Suggested that comments of password-protected posts should not be displayed to users without ability to view/edit the post in the admin." kraftbj
Future Releases 25471 Allow wp_link_dialogue to open in contexts outside of the editor Editor 3.6.1 normal normal Future Release enhancement new 2013-10-02T22:35:38Z 2019-06-05T07:08:55Z "I use wp_link_dialogue within metaboxes to provide a nicer way for users to enter URL's. Its handy for say slideshows, or profiles that point to external sites.
wp_link_dialogue works perfectly on pages where an editor instance exists, but on pages that don't have editor instances it fails due to wplink.js looking for the global wpActiveEditor var, which of course doesn't exist as there is no editor. Aside from the js error, invoking the dialogue on pages with no editor involves calling _WP_Editors::wp_link_dialog(); directly to output the required html which isn't ideal, or calling wp_editor and using css to hide it, which just seems lame.
Ideally wp_link_dialogue should function independently of the editor.
Approaches
1. Amend wplink.js to allow wpActiveEditor to be undefined and pass in a seperate value for textfield to the open method. Con is that wp_link_dialog() still has to be invoked with a call to _WP_Editors::wp_link_dialog()
2. Move wp_link_dialog into a seperate class, amend _WP_Editors to call this class and allow for a user defined textfield within wplink.js
" we_tell
Future Releases 25493 Sorting posts in ascending order of date at admin side wonderboymusic Posts, Post Types 3.1 normal normal defect (bug) reopened 2013-10-06T08:57:14Z 2019-06-04T20:44:49Z Posts are displayed in descending order of date in the admin side but if we click on date column header to sort it then again it is sorted in descending order of date instead it should be sorted in ascending order of date. vinod dalvi
Future Releases 25585 Arabic stopwords comparison I18N 3.7 normal normal Future Release enhancement reopened needs-unit-tests 2013-10-13T14:49:30Z 2024-02-28T16:39:42Z "WordPress uses simple string comparison in WP_Query->parse_search_terms() function, which is fine for many languages but Arabic need more than that to provide a really smart search!
There are some chars need to removed before the string comparison, like:
Hamza
http://en.wikipedia.org/wiki/Hamza
Diacritics
http://en.wikipedia.org/wiki/Arabic_diacritics
Tāʼ marbūṭah
http://en.wikipedia.org/wiki/Taw
If this cannot be in core, Could you at least add some filters to do it ?!" alex-ye
Future Releases 25616 Add a content length filter to wp_dashboard_recent_drafts() Administration normal normal enhancement new dev-feedback 2013-10-17T01:41:34Z 2019-06-04T19:24:26Z It would be nice to be able to change the length of the recent drafts content via a filter. The fixed value of 10 is too short for character count based users. tenpura
Future Releases 25666 Pass perpetrating $handle to enqueue_script's _doing_it_wrong() call Script Loader normal normal enhancement new 2013-10-22T21:15:03Z 2019-06-04T21:09:11Z So the debug message for enqueueing resources at the proper time is helpful, but finding out which one of a site's plugins or theme can be a tedious task. I suggest we pass the $handle that triggered the warning to the output, so we know exactly where to look (since it references back to wp-includes/functions.php). bigdawggi
Future Releases 25693 blog_charset should be checked for null values Charset 3.8 normal major defect (bug) new 2013-10-25T04:10:29Z 2019-06-04T19:24:29Z "We've encountered an error wherein a blog in a multisite network's `blog_charset` was nuked. This led to posts entered from the editor (visual and text) having random bits eaten. This was particularly pronounced when using text copied from Word documents. This is related to #23688, I think.
It seems as though PHP 5.4 makes some weird assumptions when you have a blank/null charset. Suggest we check for null values and fall back to, say, UTF-8 if none is found.
@grantlandram, @dkotter and I found this one under duress." ZaMoose
Future Releases 25714 Notices with translation upgrade Upgrade/Install 3.7 normal normal defect (bug) new 2013-10-26T15:51:56Z 2019-06-04T21:09:22Z "Hello,
There are some php notices when WordPress tries to upgrade translations if the file does not exist. As a result, the upgrade fails.
{{{
Warning: copy(/volume1/web/screenfeed/wp-content/languages/themes/twentyeleven-fr_FR.po): failed to open stream: Permission denied in /volume1/web/screenfeed/wp-admin/includes/class-wp-filesystem-direct.php on line 217
}}}
In this case, these are the upgrades for TwentyTen and TwentyEleven: while the themes exist in the folder ''wp-content/themes'', the .po and .mo files in the folder ''wp-content/languages/themes'' don't.
Regards.
Greg" GregLone
Future Releases 25741 Broken WP_Filesystem methods Filesystem API normal normal defect (bug) new 2013-10-28T03:18:03Z 2019-06-04T19:44:55Z "The following methods of WP_Filesystem do not work as intended, as they're called with absolute paths, and fail to find those absolute paths within the relative paths returned from the listing functions:
* WP_Filesystem_FTPext
* owner()
* getchmod()
* group()
* WP_Filesystem_ftpsockets
* owner()
* getchmod()
* group()
It's worth noting that the following FTP methods are available but don't actually hit the filesystem, and are just there to match the `WP_Filesystem_Direct` methods:
* is_readable()
* is_writable()
* atime()
* touch()
Attached is a patch I had locally from during 3.7 development, not thoughly tested, I believe WP_Filesystem_FTPext::owner() at least needs extra work.
The patch also removes the above methods from the FTP classes and relies upon the `WP_Filesystem_Base` versions - as a result, the is_writable() and is_readable() methods changed to assume things are readable/writable." dd32
Future Releases 25765 Directory of users, listing with the role Users normal normal enhancement new 2013-10-30T00:35:07Z 2019-06-05T06:39:33Z It took me a list of users, with a large site with many levels to know what are administrators, a simple list and still continue seeing the other functions. valeriosza
Future Releases 25785 Unexpected Paragraph Formatting Within a Div Container Formatting 3.7 normal normal defect (bug) new needs-unit-tests 2013-10-31T02:01:15Z 2019-06-04T19:44:59Z "Though HTML mode in WordPress allows for the user to add in their own CSS styling and HTML content formatting if necessary, its normal behavior also makes it auto-format paragraph breaks without the user's input of paragraph tags. This is EXPECTED behavior.
I have discovered that in this specific manner of formatting when writing a post or page (note the LACK of spacing between the div tag and the content and the multiple paragraphs):
{{{
Insert FIRST PARAGRAPH here.
Insert SECOND PARAGRAPH here.
}}}
The end result (both visually and looking at the source code) is that there is a MISSING opening paragraph tag at the beginning of the first paragraph right after the opening div tag.
IF the user adds their own spacing between the divs and the content, paragraph formatting with happen on its own, but if the user doesn't add in the spacing and starts the paragraphed content right after the div like in the example above, the first paragraph tag isn't automatically added in.
For a screenshot of the end result source code that is generated (with the missing opening paragraph tag), please see the attached file.
Cheers!" EMG
Future Releases 25798 Certain single CPT items result in 404 since 3.7 Posts, Post Types 3.7 normal normal defect (bug) new needs-unit-tests 2013-11-01T14:58:10Z 2019-06-04T20:45:08Z "Related: #25749
The changes in [25182] to the query_var mapping of hierarchical post types have broken single permalinks in some cases, when Permalink setting is set to ""Post name"". To reproduce:
1. Register a post type as follows:
{{{
register_post_type( 'bbg_test', array(
// ...
'hierarchical' => true,
'public' => true,
'rewrite' => true, // any value other than false
'query_var' => false,
// ...
) );
}}}
2. Set permalink settings to ""Post name"" (and flush)
3. Create a new post of the type above, and attempt to visit at the url `http://example.com/bbg_test/foo` (or whatever). Result: 404.
4. Change to any other permalink setting. Result: page loads as expected.
Cause: When the CPT is registered with `'rewrite'` other than `false`, it passes the test at http://core.trac.wordpress.org/browser/tags/3.7/src/wp-includes/post.php#L1275. When it's hierarchical, it passes the test at line 1293. When, because `'query_var'` is set to `false`, the rewrite tag set on line 1294 is of the form 'post_type=bbg_test&pagename=foo' (instead of 'bbg_test=foo'). Then, when an item is loaded, during `WP::parse_request()`, it passes the `preg_match()` test here http://core.trac.wordpress.org/browser/tags/3.7/src/wp-includes/class-wp.php#L198, but a page (ie, an item with `post_type` 'page') is not found by `get_page_by_path()`, and as a result the correct rewrite rule is not matched.
As noted, this is a regression in 3.7 [25182], before which `preg_match( '/pagename=\$matches...` wouldn't have matched.
Obviously it's an edge case that (a) a post type is hierarchical AND has query_var set to false, and also (b) permalinks are set to ""Post name"", but it is a change in behavior that broke one of my plugins, and has been a bit of a bear to track down :) I'm going to set `query_var` to true for my purposes (no harm done on my end) but that may not be possible for others." boonebgorges
Future Releases 25819 """ms_files_rewriting"" site option is not created during upgrades" Upgrade/Install 3.5 normal normal defect (bug) new 2013-11-04T20:04:24Z 2019-06-04T21:09:27Z "While testing an upgrade for a MU era multisite install from 3.1.4 -> 3.6.1 I discovered that the ""ms_files_rewriting"" site option was not being created.
The attempt in `upgrade_network()`...
{{{
if ( $wp_current_db_version < 21823 )
update_site_option( 'ms_files_rewriting', '1' );
}
}}}
... is failing. I believe this has gone unnoticed since the default value is forced to `true` in wp-includes/ms-default-filters.php:
{{{
// If the network upgrade hasn't run yet, assume ms-files.php rewriting is used.
add_filter( 'default_site_option_ms_files_rewriting', '__return_true' );
}}}
" gradyetc
Future Releases 25820 [embed] shortcode can't be escaped like others Shortcodes normal minor defect (bug) new 2013-11-04T21:36:58Z 2019-06-04T21:09:30Z "WordPress allows the use of double brackets to escape shortcodes, so that entering `[[foo]]` in your page or post displays `[foo]`. This works great for most shortcodes, and is used in the following way on enclosed shortcodes: `[[foo]Hello![/foo]]`
However, this feature fails when trying to use it with core's 'embed' shortcode.
To replicate:
Enter the following in a page or post:
`[[embed]http://www.youtube.com/watch?v=YLO7tCdBVrA[/embed]]`
What I expect to see:
`[embed]http://www.youtube.com/watch?v=YLO7tCdBVrA[/embed]`
What I really see:
`(null)`
(Apologies for the weird mix of [, ], and special characters here. had a hard time with getting the markup to render as I wanted.)" MadtownLems
Future Releases 25851 post_content lost when inserting Posts with large base64-encoded images Formatting 3.8 low critical defect (bug) new 2013-11-06T18:15:11Z 2019-06-04T20:01:31Z "post_content will be silently blanked-out during a wp_insert_post() call that contains large base64-encoded images within Post HTML content.
I've found the source of this problem to be the wp_pre_kses_less_than() function. In the scenario described above, the call to preg_replace_callback() fails, causing a NULL to be returned from wp_pre_kses_less_than(), instead of a string. In this case preg_replace_callback() returns NULL because of a PREG_BACKTRACK_LIMIT_ERROR.
The error can be worked around by setting a higher pcre.backtrack_limit in php.ini, but I still consider this to be a bug because the wp_pre_kses_less_than() should at least emit a warning to the debug.log informing someone that there was an internal PHP error (silent in this case, regardless of error_reporting settings).
Beyond this, the function should check the return value of preg_replace_callback(), and if it is NULL, perhaps consider returning the original string as it was passed by the caller, so the caller does not end up with unexpectedly empty post_content.
Another option would be to look in to tweaking the regex so that it does need exceed the default resources as configured by pcre.backtrack_limit, which is 100000 by default.
More info: http://www.php.net/manual/en/pcre.configuration.php#ini.pcre.backtrack-limit
I have attached a file that shows how to re-produce this bug. Run the file via WP-CLI like so:
wp eval-file wp_pre_kses_less_than_bug_repro.php
I'm setting the Severity of this bug to critical, since it results in unexpected data loss." ctayloroomphinc
Future Releases 25856 debug of wpautop function with Unit Tests Formatting 3.8 normal normal enhancement new 2013-11-07T03:04:23Z 2024-03-20T17:54:47Z "== Cleanup / Refactor of wpautop function ==
Upon review of the WordPress Trac needs-unit-test filter I saw that the wpautop function was needing both cleanup and unit tests. I have created a comprehensive test suite for the function that covers in my opinion the full breadth of use cases for the function. During this process I have been working on modifying the wpautop function to resolve out open defects and remove ''fix'' code that was placed to resolve an issue without resolving the underlying cause of the error.
I've attached the following files for support of the changes.
''autop-20622.out'' --> OUTPUT from running the unit tests against current code base (revision 20622)
''autop-diff.out'' --> OUTPUT from running the unit test against modififed wpautop function as given in the diff.
''Autop.diff'' --> diff of changes made to the Autop test class :: Unit Tests
''formatting.diff'' --> diff of changes made to the formatting.php function file :: wpautop changes
''As a note I've added a trim call to the end of wpautop as it was always appending a new line, which I did not think was needed. This causes a good amount of test cases to fail as the expected output is not containing the additional new line given by current implementation.''
----
== Enhancements / Fixes to wpautop function ==
1. Corrected core logic to identify when double new lines wrap open or close block element tags due to nested block level elements. Original Logic adds \n\n before open tags and \n\n after close tags which allows for output of
TEXT that is not correct, and had several patches implemented to attempt to fix.
*Fixes :: Formatting of Lists, Nested Lists, orphaned
tags
2. Added logic to not add tags after comments
3. Added logic to not convert \n for svg, math, style, select or script codes
4. Added logic to not format audio, video or object elements. This is implemented as the elements are in-line but can contain block level content for displaying in browsers that don't support the HTML5 elements.
5. case insensitive recognition of block tags
6. inclusion of variable re-naming as outlined in #25516
----
== Overview of Tickets reviewed and covered by the Unit Tests ==
Ticket : Current Status : Summary
#6877 : Closed : large posts causes empty return
#3476 : Closed : Improper formatting of Object elements, additional and no ending
#3669 : Closed : Don't insert
tags inside of block elements that only contain inline elements/text
#6809 : Closed : wpautop correctly handles auto
of basic text
#11024 : Closed : Incorrect handling of div tags with nested inline tags
#1305 : Closed : Handling of blocks>
#1706 : Closed :
tags with attributes introduce additional
#2285 : Closed : Strip excessive in content
#2813 : Closed : elements added instead of
#3007 : Closed : Spacing of text in block elments reveals improper handling of nested elements
#3035 : Closed : Extra tags introduced in Object tags.
#3238 : Closed : Dangling
tags, no closing
#3621 : Closed : Don't format new lines in Script and Object tags
#3854 : Closed : Don't format new lines in Script and Style tags
#3935 : Closed (wf) : Erroneous
tags added to the content '''has fix'''
#3952 : Closed : Don't autop hr tags
#5250 : OPEN : incorrect handling of lists + nested Lists '''has fix'''
#7937 : Closed : incorrect handling of inline tags
#7988 : Closed (wf) : incorrect handling of nested tags '''has fix'''
#8644 : Closed : HTML5 block elements
#10033 : OPEN : autop does not handle Comments '''has fix''' *also contains wptexturize details that I am not sure are fully closed out.
#11257 : Closed : autop errors out on large content
#11678 : OPEN : autop does not recognize upper tags '''has fix'''
#13340 : OPEN : nested MATH tag handling '''has fix'''
#2833 : OPEN : No formating Style and Script tags '''has fix'''
#4298 : Accepted : handling of tags with attributes on new lines '''fix already existed'''
#3833 : OPEN : incorrect
tags in block elements (explicitly blockquote) '''has fix'''
#6041 : Closed : incorrect handling of DL lists and DT,DD elements
#9437 : OPEN : dont modify SVG content '''has fix'''
#10247 : Closed : no new lines in Video, Audio, Source
#4857 : OPEN : incorrect autop logic '''has fix'''
#15918 : OPEN : incorrect handling of nested tags '''has fix'''
#16456 : Closed : input is not block level
#3054 : Closed : input is not block level
#16790 : Reviewing : functional specifications '''can close'''
#18534 : Closed : noscript are block level
#20444 : OPEN : Single line handling (nested block level issue) '''has fix'''
#18136 : OPEN : extra tags being added due to white space '''has fix'''
#23135 : OPEN : block element filter '''close as won't fix'''
#18807 : Closed : samp is not block level
#25516 : OPEN : variable name changes '''changes included'''
#9305 : Closed : handling of empty content
#6218 : Closed : handling of empty content
#11947 : Closed : no formating of select options '''has fix'''
#12335 : Closed : HTML5 Block Elements
== Tickets concerning ShortCode handling ==
Ticket : Current Status
#12061 : OPEN
#6984 : OPEN
#21689 : OPEN
#24085 : OPEN
#24846 : OPEN
''Currently the wpautop function does not concern itself with shortcodes. I suggest that 12061 remain open as a future enhancement and that other tickets can be closed referending 12061 unless there is issues with '''shortcode_unatop''' or other functions used.''
== Tickets Reviewed but Ignored/ Not Tested/ Duplicate ==
'''Ticket''' : '''Current Status''' : '''Summary'''
#11249 : Closed : standalone function
#10490 : Closed : Duplicate of #10082
#9218 : Closed : Duplicate of #4298
#19934 : Closed : Duplicate of #16456
#18330 : Rejected : Enhancement
#18514 : Rejected : Enhancement
#23858 : Closed : Duplicate of #18807
#23375 : Closed : Duplicate of #18807
" mdbitz
Future Releases 25886 Sortable items gets stuck when dragging over TinyMCE Editor normal normal Awaiting Review defect (bug) new 2013-11-08T22:37:45Z 2020-11-24T06:09:01Z "When dragging a metabox over an active TinyMCE instance in a post/page edit screen, the metabox can get ""stuck"" (i.e., it stopping moving with the mouse). This only happens with TinyMCE and not the ""Text"" textarea.
'''To reproduce:'''
1. Uninstall plugins
1. Install a default theme (I used Twenty Thirteen)
1. Go to ''Pages > Add New''
1. If it is not activated already, click the ""Visual"" tab to activate the TinyMCE instance
1. Grab the featured image metabox to activate the sortable (i.e., drag and drop) functionality
1. Move the box over the TinyMCE area
1. Continual movement over the area will cause it to get stuck
The following screen grab shows how the cursor separates from the metabox as it gets stuck:
[[Image(http://f.cl.ly/items/0j2s0f2f2D3M2e393P3K/Screen%20Shot%202013-11-08%20at%202.33.36%20PM.png)]]
It's kinda hard to understand it with that image, so here's a movie that shows the issue:
http://f.cl.ly/items/1B151E3N0i3j092Z062m/broken-drag-and-drop.mov
I have tested this in Safari, Firefox, and Chrome on OS X. All browsers produce the same issue. The issue persists with MP6 as well." tollmanz
Future Releases 25927 Remove the theme information from style.css and add a theme manifest file Themes 3.7.1 normal normal feature request reopened dev-feedback 2013-11-12T17:31:31Z 2019-06-04T21:09:32Z "Currently the metadata related to a theme is store in a comment at the top of style.css.
I argue this is not a clean separation of concerns, yes .css files can contain semantic information to help the reader navigate the file, but using it to store metadata is bad practice.
I propose creating a theme manifest file that sits at the root of the theme directory and contains all the metadata related to the theme that's currently at the top of style.css, things like the name, author, etc. but it could also contain a file list for the theme with a few lines about the files usage.
Externalising the metadata and adding more contextual information will greatly improve developers ability to hack on top of others themes and understand their rationale for certain decisions." jolyonruss
Future Releases 26050 Continual Admin Page POST (HeartBeats?) Can Cause SQL Connection Issues Administration 3.6 normal normal defect (bug) new 2013-11-15T19:14:10Z 2024-03-20T21:04:50Z "The admin pages (/wp-admin/widget.php, /wp-admin/index.php, etc..) will continually POST to admin-ajax.php ever 2.5-3 min. If multiple admin pages are open for long periods of time(ex. over night) the SQL Connections associated with the POSTs will begin to progressively have longer sleep times. I have seen MYSQL Connecitons Sleep upwards of 45 seconds from these POSTs.
This ultimately cause my Server/Account to be shutdown by my host due to the long sleep time taking up connections for no reason.
I wouldn't expect the Connections to progressively sleep longer. I was surprised to find that the pages were Sending POSTs even when they were not being used(before I knew about the heartbeat api).
Is this the expected experience/results? Should there be a sleep setting on these POSTs to stop after a given time frame? Or can all of these be rolled into 1 POST?
To Reproduce:
Open up the following in their own tabs: /wp-admin/widgets.php, /wp-admin/index.php, /wp-admin/theme.php, /wp-admin/theme-edit.php, /wp-admin/plugins.php, /wp-admin/post.php
Verify they are making post requests ever 2.5-3min, I use Tamper Data add-on for firefox, but fiddler or any other http collector will do.
In MYSQL watch the connections by using the command: show full processlist;
run the SQL command as soon as you see the POST occur in tamper data or fiddler. Notice the Sleep and time is 0 for the POST request. you might not see it in the process list at first since it is so quick.
Once POSTs are occuring ever few min and MySQL is setup to view processes/connections leave the pages open over night.
Then test again in the morning by viewing the processlist once you see a POST submitted. It usually easiest to see when post are submitted around the same time. You will notice the sleep time has increased and you will also notice that the response times for the POSTs have increased.
I reproduced this on twenty-thirteen theme with all plugins deactivated and using firefox." optimized-marketing.com
Future Releases 26112 Available widgets drag-and-drop causes trouble on touch devices Widgets normal normal enhancement new 2013-11-19T15:57:32Z 2019-06-05T06:39:35Z "Now that we have click-to-add for available widgets, I think it makes sense to disable the drag-and-drop for available widgets on touch devices. The interaction tends to cause troubles on touch devices when you intend to scroll through the list of widgets, and instead initiate the draggable.
Since active and inactive widgets don't have any alternative for reordering, we can keep the draggable interaction there on touch devices — but maybe we should think of a new way of reordering these widgets without requiring drag-and-drop." shaunandrews
Future Releases 26113 Create a WordPress-specific, dependable reference to the WP-bundled jQuery object. Script Loader normal normal defect (bug) new 2013-11-19T16:46:11Z 2019-06-04T21:09:37Z "When enqueueing jQuery for use on the front end of a site in a plugin or theme, a common concern is that the theme or another plugin has injected its own version of jQuery (probably an older version). This causes no end of support headaches for me as a plugin author.
I've recently taken drastic measures in one of my plugins:
I'm hooking in to `wp_enqueue_scripts` at -9999 and starting a buffer, then collecting it at `wp_head` 9999. I'm looking for the WP-included jQuery script tag, and then inserting this immediately after it:
``
Then in my JS, I do:
{{{
;(function (w) {
var jQ = w.jQueryWP || w.jQuery;
// my jQuery code here, using jQ
})(window);
}}}
I think that having a dependable reference to WP's jQuery object would be quite useful. One way to solve it would be to just add the line to our copy of jQuery. But that will cause issues with people who use well-behaved CDN plugins to swap out WP's jQuery for a Google-hosted copy of jQuery (note: THE SAME VERSION). So maybe a better way to do it would be to create a way to append inline JS code immediately after the inclusion of a particular script handle. We could then do what I'm doing in my plugin, but without the nasty PHP output buffers.
" markjaquith
Future Releases 26247 Importer fails when importing from a server on a private network Import normal normal WordPress.org defect (bug) new 2013-11-25T22:18:00Z 2018-03-02T17:08:23Z "WordPress import (using the wordpress-importer plugin) does not work correctly if both machines are on the same private network. Text content imports, but all media imports fail. I have traced the problem down to a test that is done in wp-includes/http.php. Though i am not deeply familiar with the WordPress code base, the test seems unnecessary to me, and if it is commented out then the import function will behave as expected.
I have included a patch against WordPress 3.6.1 that demonstrates where the problematic test is and resolves the issue." dramaley
Future Releases 26311 Updated (responsive) Tools -> Export admin screen Export 3.8 normal normal Awaiting Review enhancement new 2013-11-29T05:02:40Z 2019-02-26T02:25:27Z "Updated Tools -> Export admin screen
Switched from un-ordered lists based html to tables based HTML based on Permalinks admin screen.
''No javascript was harmed in this patch...''
" netweb
Future Releases 26318 XMLRPC wp.uploadFile fails to place media in sub blogs XML-RPC 3.7.1 normal normal defect (bug) new 2013-11-29T12:02:39Z 2019-06-05T06:39:38Z "Using an XMLRPC call to mw_newMediaObject, uploaded files do not land in the media library of the target blog, for example blog_id 2. The uploaded files always land in the wp-content/uploads/yyyy/mm folder. And they also appear in the media library for that blog too, via the UI.
If you trace the blog_ID to class-wp-xmlrpc-server.php you can see the method is receiving the correct value (eg. 2) at that point.
This affects (at least) a subdomain-type of installation. The htaccess is standard from the WP codex.
Occurs when blog_ID is passed to the rpc thus:
{{{
require_once 'IXR_Library.php';
$client = new IXR_Client('http://my-site.com/xmlrpc.php');
$params = array('name' => 'imgfile.png',
'type' => 'image/png',
'bits' => new IXR_Base64($bits),
'overwrite' => false);
$client->query('wp.uploadFile',2, 'admin', 'password', $params);
}}}
The xmlrpc returns a packet containing this data:
{{{
array (
'id' => '30',
'file' => 'test2_889047515_2.png',
'url' => 'http://my-site.com/wp-content/uploads/2013/11/imgfile.png',
'type' => 'image/png',
)
}}}
" daki-san
Future Releases 26409 Non-Editors can create (non-hierarchical) terms even though they can't manage_terms Taxonomy 3.0 normal normal Future Release defect (bug) new 2013-12-04T20:44:05Z 2018-02-03T13:38:48Z "When a taxonomy is registered, the `$default_caps` are:
{{{
'manage_terms' => 'manage_categories',
'edit_terms' => 'manage_categories',
'delete_terms' => 'manage_categories',
'assign_terms' => 'edit_posts',
}}}
This should mean that Authors and Contributors should not be able to create new terms because they (normally) do not have the `manage_categories` capability. For hierarchical taxonomies (like categories), the UI for creating new terms is removed from the metabox. However, for non-hierarchical taxonomies (like tags), the UI does not change based on whether the they can `manage_categories` or not: they can still enter arbitrary terms and add them, and when saving the post, the new terms get created. This seems wrong.
There should be `current_user_can( $taxonomy->caps->manage_terms )` checks done when saving a post, and the UI should be updated to prevent new terms from seeming to be accepted. The `ajax-tag-search` could be used to determine if the entered tag exists, and only allow it to be added if it does." westonruter
Future Releases 26474 Add Filter to Username/Password Fields on Login Form? Login and Registration 3.8 normal normal Awaiting Review enhancement new dev-feedback 2013-12-07T18:06:49Z 2017-05-13T21:39:09Z "As a state institution, we are required to remain PCI-compliant. One of the areas we've been dinged in scans in the past, albeit an area that they consider ""low risk"", is the fact that the username and password fields allow autocomplete.
I understand that it's probably not preferable for everyone using WordPress to have autocomplete turned off on those fields, but it would be nice if it was simple to at least filter those fields to turn it off (or, at the very least, add that as one of the ""args"" that are used when the form is built).
This should obviously be used both in wp-login.php and in the `wp_login_form` function within wp-includes/general-template.php
I'm happy to work up a patch for this if this is something that might be supported. Thanks." cgrymala
Future Releases 26504 Semantic elements for non-link links joedolson* Administration 3.8 normal normal Future Release task (blessed) accepted 2013-12-09T14:29:18Z 2024-01-30T15:12:56Z "Using the [http://heydonworks.com/revenge_css_bookmarklet/ revenge.css bookmarklet] on the dashboard gives a very [http://d.pr/i/yVYh clear indication] that some of the links on there are semantically incorrect - they should be buttons, even if they should look like links.
The Actual Buttons Are Actual section of this [http://coding.smashingmagazine.com/2013/08/20/semantic-css-with-intelligent-selectors/ article] sums it up nicely why.
Unless the accessibility team have indicated otherwise, each of the 74+ occurrences (only counting PHP files, more in JS files) of links with `href=""#""` should probably be a `
}}}
I did some tracing and found out that it was `wpautop` fault. Even though `WP_oEmbed::_strip_newlines()` was successfully stripping the new lines from the returned oEmbed HTML, something was adding an extra newline before the `\s*|', '', $pee );
}
}}}
Now the oembed is fully functional and doesn't have that unclosed `
` tag:
{{{
Lisbon with #WordPressVIP @ Terreiro do Paço http://instagram.com/p/vGw5IchocB/
}}}" vaurdan
Future Releases 31706 wp_list_categories for hierarchical taxonomy return wrong tree if orderby clause is used General 4.1.1 normal normal defect (bug) new reporter-feedback 2015-03-20T11:11:52Z 2019-06-04T19:48:23Z "My taxonomy is e.g.
{{{
-term 1
--subterm 1.1
---subterm 1.1.1
--subterm 2.1
--subterm 3.1
-term 2
-term 3
}}}
and lets say i am on the 'term 1' page and i want to return all suterms. But when i run
{{{
$args = array(
'style' => 'list',
'title_li' => '',
'echo' => 0,
'hierarchical' => true,
'depth' => 2,
'taxonomy' => 'my_taxonomy',
'orderby' => 'count',
'order' => 'DESC',
'show_option_none' => ''
);
$args['child_of'] = $current_term->term_id;
}}}
it return only
{{{
Subterm 1.1.1
}}}
Problem is that
{{{
'orderby' => 'count',
'order' => 'DESC',
}}}
when i put it out, it works as expected
BTW IMO wp_list_categories() need some bigger rewrite - it is probably the oldest code in WP :-). No filters, strange classes etc. especially comparing to similar wp_nav_menu. E.g. there is no class to parent LI (and it is often need to change e.g. for Bootstrap), nor any action or filter, the only way are some non-trivial preg_match on the full results or replacing the whole Walker, what is not optimal for forward and plugin compatibility " thomask
Future Releases 31728 Search bug (Cyrillic) Permalinks 4.1.1 normal normal Awaiting Review defect (bug) new reporter-feedback 2015-03-22T15:03:14Z 2020-07-20T12:52:35Z "There is a bug, when I search something in my WordPress site.
The correct search link should be: {{{http://site.com/search/word}}}.
When I type something in English, the link is correct: {{{http://site.com/search/word}}}.
But when I type something in Bulgarian language (Cyrillic), the link is different: {{{http://site.com/?s=абвгд}}}.
The structure of my WordPress permalinks is: {{{http://site.com/%post_id%}}}." kazumy
Future Releases 31744 All PHP files in the root should be dummy files, pointing to wp-includes versions Upgrade/Install normal normal Awaiting Review enhancement new dev-feedback 2015-03-24T01:25:03Z 2017-02-06T12:33:46Z "I'm proposing that all of our PHP files in the WordPress root should be moved to `wp-includes`, and dummy versions put in the root that include the `wp-includes` versions of them.
This will make things cleaner, and will open the door for us to do things like install a new version of WordPress in `wp-includes-8fb24cd9`, and pass a `?use-wp-includes=8fb24cd9` switch that loads that version. We could test the updated version of WordPress without touching the old version, and if it fails (WSOD, etc), we don't even have to roll back, because we haven't put the new version in `wp-includes` yet." markjaquith
Future Releases 31751 Using PgDn and PgUp keyboard keys in the editor scrolls both post edit box and the whole viewport Editor 4.1.1 normal normal Awaiting Review defect (bug) new 2015-03-24T16:42:26Z 2020-11-24T06:13:57Z "The editor in WordPress 4.1 is great, and the whole sticky sidebar is a great improvement, but editing using Page Down and Page Up keys as part of the workflow is some of the most frustrating experience one can have because they control both the cursor in the post edit box and the page itself.
For example, if I go into a short post, put the cursor at the beginning of the post, and press Page Down, I'm going to end up with this: [[Image(http://i.imgur.com/CZr3FXQ.png)]]
At this point, I can only see a tiny sliver of the post because the page has scrolled too.
This is similar to #30919, except I'm not talking about the distraction-free mode, which I almost never use.
Windows 8.1 on Chrome 42 beta, but this behavior has been the same for as long as I can remember." archon810
Future Releases 31778 Opening the collapsed admin menu doesn't close toolbar submenus General normal normal defect (bug) new 2015-03-26T20:31:38Z 2019-06-04T19:48:36Z On a narrow touch device, toolbar dropdowns only open one at a time, but opening the admin menu does not close any dropdowns and is shown behind any open dropdowns, making it impossible to get to any of the higher items. This is particularly bad because you can't always close the submenu (see #29906). Opening the admin menu should close any other toolbar dropdowns - it's fine to continue to have toolbar dropdowns open over the admin menu if it's already open. helen
Future Releases 31818 Uniform Search Form Display/Experience joedolson* Administration 4.2 normal normal Future Release enhancement accepted 2015-03-31T11:05:37Z 2023-04-28T15:20:54Z "In our recent testing of the search functionality we've found that there are currently five different search types across the admin.
A full description of what the tests entailed, their results, and a link to the Slack discussion can be found here: https://make.wordpress.org/accessibility/2015/03/30/usertest-the-search-functions-in-the-admin/
To summarise, these are the five that we've found:
* Search input without submit button, no live search (need to press Enter)
* e.g. Media Library list mode
* Search input without submit button, live search fires “as you type”
* e.g. Media Library grid mode, Themes (add new, wp.org API), Network Themes (add new, wp.org API)
* Search input no submit button, live search fires “as you type” (more a “filter current collection” than a search)
* e.g. Themes (installed themes), Customizer add widget, Plugins (installed plugins)
* Search input with hidden submit button, press Enter or tab and submit the hidden button (after the search, the “typeselector” select appears)
* e.g. Plugins (add new), Network Plugins (add new)
* “Classic” search: search input with submit button, press Enter or submit button
* e.g. Posts, Categories, Tags, Pages, Comments, Users, Network index: search users, Network index: search sites, Network Sites, Network Users, Network Themes (installed), Network Plugins (installed)
What we'd like to propose is to bring this down to two and ensure they work well. This could then be used as a launchpad to further unify the search experience and use a single type across the board.
The lucky two would be:
* the classic one, the same for every search, with visible submit button (already commonly used)
* the dynamic one, with some improvements like adding wp.a11y.speak to show the results count, and making sure focus doesn’t change dynamically
" Cheffheid
Future Releases 31830 Hard coded wp-login.php url in string Login and Registration 3.0 normal normal Future Release defect (bug) reopened 2015-04-01T06:53:58Z 2023-09-18T20:38:16Z "Hi.
I noticed that in
[https://core.trac.wordpress.org/browser/trunk/src/wp-includes/ms-functions.php?rev=32064#L1446 wp-includes/ms-functions.php] (`wpmu_welcome_notification`)
the login url is hardcoded (wp-login.php) into the string.
This will create a problem if a multisite developer has chosen to change the login page url (for security reasons).
Thanks in advance
Lena" lenasterg
Future Releases 31839 Setting error reporting level for wp_debug_mode Bootstrap/Load 4.1.1 normal normal enhancement new dev-feedback 2015-04-01T16:25:34Z 2023-12-12T20:27:56Z "Since PHP 5.4.0 `E_STRICT` errors appear as part of `E_ALL` and headers cannot be sent sometimes - stuff that can lead to a whole set of problems. For me, they are useless and annoying - but for others they can be useful.
I just want the possibility to set the `error_reporting` level used in `wp_debug_mode()`. I have applied a small patch to `load.php` as shown below.
I have defined a `WP_DEBUG_LEVEL` constant in `wp-config.php` like so: `define( 'WP_DEBUG_LEVEL', E_ALL & ~E_STRICT );` because I do not want to see the `E_STRICT` warnings.
Afterwards I modified the `wp_debug_mode` function like so:
{{{
#!php
function wp_debug_mode() {
if ( WP_DEBUG ) {
if( !defined( WP_DEBUG_LEVEL ) )
define( 'WP_DEBUG_LEVEL' , E_ALL) ;
error_reporting( WP_DEBUG_LEVEL );
if ( WP_DEBUG_DISPLAY )
ini_set( 'display_errors', 1 );
elseif ( null !== WP_DEBUG_DISPLAY )
ini_set( 'display_errors', 0 );
if ( WP_DEBUG_LOG ) {
ini_set( 'log_errors', 1 );
ini_set( 'error_log', WP_CONTENT_DIR . '/debug.log' );
}
} else {
error_reporting( E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_ERROR | E_WARNING | E_PARSE | E_USER_ERROR | E_USER_WARNING | E_RECOVERABLE_ERROR );
}
if ( defined( 'XMLRPC_REQUEST' ) )
ini_set( 'display_errors', 0 );
}
}}}
Here's the [https://gist.github.com/AlexandruIfrim/8e3626f27344f8f28a87 gist] of it." aifrim
Future Releases 31902 Shiny Updates: Language packs updates Upgrade/Install 4.2 normal normal enhancement new 2015-04-06T10:25:26Z 2023-07-09T16:13:52Z "Installing or updating plugin
WP 4.1: There is also language packs update triggered and users are notified what was updated.
Current trunk: There is only message ""Updated!"" and nobody knows if language packs update was also triggered and which languages were updated?" pavelevap
Future Releases 31970 Live Preview header image crop is not correct size Customize normal normal Awaiting Review defect (bug) assigned 2015-04-14T15:51:37Z 2017-03-21T18:34:08Z "Steps to reproduce
- Activate Twenty Fifteen
- Live Preview Twenty Eleven
- Add new header image and crop it
- See that the image is large and distorted
When you first select a new header image and are choosing where to crop it, everything looks good. Once you click crop and it shows the live preview, you can see that the image is the incorrect size." MikeHansenMe
Future Releases 31980 Customizer Theme Switcher Details Modal: previous/next/close buttons require double taps on IOS Customize 4.2 normal normal Future Release defect (bug) new reporter-feedback 2015-04-15T14:33:53Z 2021-05-22T20:12:17Z "Per comment:34:ticket:31794, there's an issue where double taps are required to trigger the previous/next/close buttons in the theme details modal.
" DrewAPicture
Future Releases 32048 Uploaded file reserves a name, page can't be named it. Permalinks 4.1.1 normal normal Awaiting Review defect (bug) new 2015-04-22T03:51:57Z 2017-03-09T01:04:29Z "1) Upload a file-name.png file to media library.
2) Publish a page named ""file-name"".
3) Note that (if site is set to post-name permalink) the page is now file-name-2
4) Try to rename the attachment and then give the page the natural name, and it still doesn't work.
This might have a similar root cause as bug #13459." programmin
Future Releases 32067 Remove inline javascript from WP-Core to allow CSP protection Security normal normal Future Release feature request assigned 2015-04-22T20:24:31Z 2020-09-28T13:47:13Z "To avoid catastrophic effects of XSS, it would be safe to allow user to add a Content Security Policy (CSP) header.
To be effective, a CSP must at least disallow inline javascript." tdelmas
Future Releases 32097 Extra margin in `post_submit_meta_box()` on non-public post types Administration 4.2 normal normal defect (bug) new 2015-04-24T06:04:39Z 2019-06-04T19:28:37Z "If you're editing a published or scheduled post in a post type registered with `public => false`, there's now some extra space above ""Status.""" dlh
Future Releases 32117 wp_get_attachment_metadata sizes array file misses path if using year/month organizing Media 4.2 normal normal Awaiting Review defect (bug) new 2015-04-24T15:58:51Z 2017-08-14T13:15:29Z "wp_get_attachment_metadata returns array like this:
{{{
[""metadata""]=>
array(5) {
[""width""]=>
int(3072)
[""height""]=>
int(2304)
[""file""]=>
string(25) ""2015/03/GC702D01_high.jpg""
[""sizes""]=>
array(4) {
[""thumbnail""]=>
array(4) {
[""file""]=>
string(25) ""GC702D01_high-200x150.jpg""
[""width""]=>
int(200)
[""height""]=>
int(150)
[""mime-type""]=>
string(10) ""image/jpeg""
}
}}}
as you can see, ""file"" in the first level of the array contains year and month (as i do have turned on organizing in year/month structure for uploads), but ""file"" in the second level for (e.g. in this case) the thumbnail size is only the file name, without the path.
This is at least confusing, make it difficult to get the URL of the file - each size need to be then requested separately by wp_get_attachment_image_src function.
IMO optimal solution would be to use full path in both `$metadata['file']` and `$metadata['sizes'][$size]['file']` so the same name would have the same structure. But i do not know if it wouldn't have some compatibility issues.
Less optimal imo would be to add there also the path - it can be there only once in the top level, as all sizes are currently always in the same folder, but i think this could lock us from possible changes / plugin modifications etc. E.g. I think that it would be great, if it would be possible (and even default) to have size name, as a folder, so that we would have thumbnails in uploads/thumbnail, medium size in uploads/medium ... - this would highly reduce the number of images in one folder in default settings and would reduce the problems with displaying them on most systems. And also if we would want to delete some defined size, we could simply delete one folder and save space.
So the second optimal would be to show the path in `sizes[$size]` subarray, e.g.
{{{
[""metadata""]=>
array(5) {
[""sizes""]=>
array(4) {
[""thumbnail""]=>
array(4) {
[""file""]=>
string(25) ""GC702D01_high-200x150.jpg""
[""path""]=>
string(25) ""2015/03/""
}
}}}" thomask
Future Releases 32143 wpLink function getAttrs() missing link-text Editor 4.2 normal normal Awaiting Review enhancement new reporter-feedback 2015-04-27T07:04:06Z 2020-11-24T01:38:12Z "After last update to 4.2 wpLink() was renewed and the title-input was replaced.
Instead of title, you can now insert/change the link text.
https://core.trac.wordpress.org/browser/trunk/src/wp-includes/js/wplink.js?rev=32017
But in function getAttrs() the val of link-text was forgotten.
Therfor I proporse to add this line in getAttrs():
linktext: $.trim( inputs.text.val() ),
Also it would be nice to populate the link-text field with the document title of a chosed intern element, like it was made with the old title-field before.
" xwolf
Future Releases 32183 Widget ID auto-increments conflict for concurrent users westonruter* Widgets 2.8 normal normal Future Release defect (bug) accepted 2015-04-29T09:20:46Z 2017-06-07T00:20:40Z "Each WP_Widget 2.0 “multi-widget” gets an index number associated with each instance of a give type. When you add a widget, this number gets incremented (`widget.set( 'multi_number', widget.get( 'multi_number' ) + 1 );`). The initial multi-number is calculated from the `next_widget_id_number()` function which takes the max number currently used, and increments it by one. The same approach is used in the widgets admin page and the Widget Customizer.
For frequently-used widgets, the above problem will happen frequently where two users will try to add the same widget at the same time, and thus they will start out with the same initial `multi_number`, resulting in the same widget ID. When they both save their changes, one user's widget will override the other user's widget: whoever saves last. Likewise, it is possible for multiple widgets to be deleted in one session (from the widgets admin page, since Customizer only removes widgets by moving them to the Inactive Widgets sidebar) then new ones added back in other sessions and the initial `multi_number` will not be consistent. In other words, the `multi_number` for each widget type needs to be synced across each Customizer session along with the actual setting values.
For concurrent editing of widgets, see:
#31436: Handle conflicts in concurrent Customizer sessions
#12722: Concurrent editing of widgets (on admin page)" westonruter
Future Releases 32234 Streamline parameter order of get_user_option() Users 4.2.1 normal normal Awaiting Review enhancement new 2015-05-02T09:23:52Z 2018-02-19T18:37:09Z "`get_user_meta()` expects `$user_id`, followed by `$meta_key`. So do `update_user_meta()`, `delete_user_meta()`, `update_user_option()` and `delete_user_option()`.
`get_user_option()` sticks out in that it expects these parameters in reversed order, which just caused me some major frustration even though I had looked it up before.
To enable backwards compability, we could test which of the two parameters is an integer and then swap them if necessary (unless of course meta keys can be integers too, I have not checked that, but it seems unlikely)." mechter
Future Releases 32306 wp-cron throws 500 errors for SSL enabled sites Cron API 4.2.1 normal critical Awaiting Review defect (bug) reopened reporter-feedback 2015-05-08T07:49:05Z 2017-11-14T14:01:53Z "I have several WP installs that are throwing 500 error codes when calling wp-cron.php after a pageview. The error is not consistent - it will sometimes return 200, and sometimes 500. All the installs I see this on use SSL with properly signed certs with SNI in use on the server under Apache. Instances on the same server where do not use SSL have not shown this issue at all.
I have managed to reproduce this on a clean WP install running twentyfifteen with no plugins installed so it doesn't appear to be plugin related.
Oddly, I don't get any PHP warnings when it happens (though I've tested that if I force a php script in the same pool to throw an error, it does get captured) - I do get the following recorded in the Apache Virtualhost error log (redacted):
[Fri May 08 08:29:34.479946 2015] [core:error] [pid 13870:tid 140644332824320] [client xxxx:xxxx:x:xx:xxxx:xx:x:x:57492] AH00524: Handler for fastcgi-script returned invalid result code 32
Apache access log (redacted):
xxxx:xxxx:x:xx:xxxx:xx:x:x - - [08/May/2015:08:29:26 +0100] ""POST /wp-cron.php?doing_wp_cron=1431070166.8151741027832031250000 HTTP/1.0"" 500 4066 ""-"" ""WordPress/4.2.2; https://www.domain.com""
System config is as follows:
* Fully patched Debian Jessie running on amd64 arch with kernel 3.16.0
* Webserver: Apache/2.4.10 (Debian), mod_fastcgi/mod_fastcgi-SNAP-0910052141, mod_fcgid/2.3.9, mod_python/3.3.1, Python/2.7.9, OpenSSL/1.0.1k
* MySQL 5.5.43-0+deb7u1
* PHP 5.6.7+dfsg-1 running under PHP-FPM (seen with and without opcache in place)
* Wordpress 4.2.2 fresh install (also seen on 4.2.1) with all plugins removed.
The server listens both on IPv4 and IPv6 - I've tried forcing wp-cron to use IPv4 by setting the hostname in /etc/hosts but that makes no difference.
Refer also to :
https://wordpress.org/support/topic/wp-cron-throwing-500-errors-on-ssl-sites?replies=9" coatesg
Future Releases 32318 Upload fails, wp_insert_attachment returned 0 Upload 4.1.5 normal normal Awaiting Review defect (bug) new close 2015-05-08T22:34:11Z 2022-10-19T15:47:53Z "One specific mp3 file was failing to attach, and it seems wp_insert_attachment is breaking with 0 returned, breaking update-attachment-metadata:
wp-admin/includes/media.php, line 360:
{{{
// Save the data
$id = wp_insert_attachment($attachment, $file, $post_id);
if ( !is_wp_error($id) ) {
wp_update_attachment_metadata( $id, wp_generate_attachment_metadata( $id, $file ) );
}
}}}
id = 0, caused by these lines in wp-includes/post.php, around line 3351:
{{{
if ( false === $wpdb->insert( $wpdb->posts, $data ) ) {
if ( $wp_error ) {
return new WP_Error('db_insert_error', __('Could not insert post into the database'), $wpdb->last_error);
} else {
return 0;
}
}
}}}
In this case the documentation is wrong, it didn't return the post id." programmin
Future Releases 32326 Improve Support for Structured Data Themes normal normal Awaiting Review enhancement new 2015-05-09T14:50:00Z 2019-10-13T00:52:06Z "There has been discussion before on various types of structured data. WordPress has limited support for microformats and it is a long-standing part of WordPress.
New standards for structured data continue to appear, and there have been some proposals in support. However, different people want support for different things. I think there is a solution with more general appeal.
body_class and post_class add classes to the body and post containers.
What if they were superseded by two new functions with a broader scope?
body_attributes and post_attributes which could add any attribute from a provided array into the body and post containers? Most of the structured data works on an attribute of the tags it is attached to, be it class or property or otherwise.
The body_class and post_classes continue to work as they always have.
Newer themes could use the attributes function, which could remove hentry adding by default, for example, and transfer control of structured data back to the theme.
There is also the possibility, if it isn't going too far, of adding a similar function for the content container.
" dshanske
Future Releases 32386 Draft's Last Modified date incorrect if it is Scheduled obenland Date/Time 4.2.2 normal normal Future Release defect (bug) assigned 2015-05-14T10:03:41Z 2020-10-07T16:59:10Z "Once a Draft is Scheduled, the date of it its most recent revision is not shown under the Date column at Posts > All Posts.
Instead, the Draft's scheduled publication date is shown in the Date column, alongside the label 'Last Modified'.
Steps to recreate:
1) Create and save a Draft
2) Set a scheduled publication date and time for the Draft
3) Save the Draft
4) Check the 'Date' column at Posts > All Posts
If you schedule a Draft for the future, for example, a Last Modified date from the future is shown under Date." lastnode
Future Releases 32452 Cache optimizations Cache API 4.1 normal normal defect (bug) new 2015-05-20T23:54:50Z 2019-06-04T19:28:59Z "Hi,
I've recently been making some custom modifications to wordpress core that reduce the resource load on our object-caching system.
I cannot see any drawbacks to these modifications, but I have to defer to the wp-core development team on this one and therefore assume I've missed something.
I want to know if there is anything I overlooked while making these modifications.
If there are no drawbacks, then perhaps the changes could be rolled into wp-core officially (and then I won't have svn showing files as modified all the time)
Explanation: (broken down into sections)
1) I noticed a huge amount of 'extra' queries to the object-cache.
Many of them originating from calls to wp_load_alloptions()
I believe with my modifications wp_load_alloptions() only needs to be called in one place instead of many, and that is within the definition of the object-cache itself.
2) I've also reduced redundant queries by changing the assumption that a key doesn't exist to a key does exist. Check the cache for the key first instead of checking the 'negative' cache for the key first.
3) Some minor fixes in options.php
---- removed untrailingslashit on line#109 // function does not yet exist if called from within functions.php
---- added ! $result == 0 line#288 // if a database update effects zero rows the cache should still be updated
---- pre-emptively negatively cache (into notoptions) the just deleted option line#477
All file changes (from svn diff) available at this link:
http://pastebin.com/5vPGCCt7" Relevad
Future Releases 32545 "Adding actions before and after ""Add New"" button" Posts, Post Types 4.2.2 normal normal Awaiting Review enhancement reopened dev-feedback 2015-06-01T05:33:27Z 2019-05-30T00:04:12Z "We need a proper action to add new customs options (button, link, information) before and after the ""Add New"" button of post pages.
Such as http://stackoverflow.com/questions/29811433/wordpress-add-custom-button-on-post-type-list-page
on #wp-admin/edit.php line 281
on #wp-admin/edit-form-advanced.php line 395
This is just a addition of actions to make wordpress more customizable and modular.
Few use-case scenarios
[[Image(screenshot1.png)]]
[[Image(screenshot2.png)]]
'''Solution'''
We can use the following sample code to solve the problem.
{{{#!php
/**
* Fires before the Add New button is added to screen.
*
* The before_add_new- hook fires in a number of contexts.
*
* The dynamic portion of the hook name, `$pagenow`, is a global variable
* referring to the filename of the current page, such as 'edit.php',
* 'post.php' etc. A complete hook for the latter would be
* 'before_add_new-post.php'.
*/
do_action('before_add_new-'.$pagenow);
if ( current_user_can( $post_type_object->cap->create_posts ) )
echo ' ' . esc_html( $post_type_object->labels->add_new ) . '';
/**
* Fires after the Add New button is added to screen.
*
* The after_add_new- hook fires in a number of contexts.
*
* The dynamic portion of the hook name, `$pagenow`, is a global variable
* referring to the filename of the current page, such as 'edit.php',
* 'post.php' etc. A complete hook for the latter would be
* 'before_add_new-post.php'.
*/
do_action('after_add_new-'.$pagenow);
}}}
" vivekbhusal
Future Releases 32558 More compact handling of the filter bar on small screens General normal normal enhancement new 2015-06-03T01:50:09Z 2019-06-04T19:49:22Z "The ""filter bar"" takes up a lot of vertical space on narrow screens and ends up becoming a point of focus when it is more typically secondary navigation. It's used for theme install, plugin install, and both views of the media library. For themes, it is especially bad because the search input separates the feature filter toggle from the filter controls themselves.
Screenshot:
[[Image(http://s.hyhs.me/baAS/image.png)]]" helen
Future Releases 32602 View Details links for plugins on individual sites on a Multisite Network use the network admin URL Plugins 4.0 normal normal defect (bug) new 2015-06-09T21:05:31Z 2019-06-04T20:50:34Z "To duplicate, make sure you allow the plugins.php page to show on subites. Have (at least) one plugin that is ''not'' network activate and go to an individual site's plugin.php page.
The URL for ""View details"" will be for the network admin, not the site. With WP installed at example.com:
example.com/subsite/wp-admin/plugins.php links to example.com/wp-admin...
subsite.example.com/wp-admin/plugins.php links to example.com/wp-admin...
mappeddomain.com/wp-admin/plugins.php links to example.com/wp-admin...
This is problematic when you have admin over HTTPS and the cross-site-scripting sanity check stops the view-details page from loading.
`/wp-admin/includes/class-wp-plugins-list-table.php` line 628 has `network_admin_url()` in there, which is why it's defaulting to the network domain.
https://core.trac.wordpress.org/ticket/17902#comment:31 and https://core.trac.wordpress.org/changeset/29595 appear to be where this issue stems from.
To quote @jjj ""It probably just needs a series of `is_multisite()` and `is_plugin_active_for_network()` checks.""
The URL should probably just default to whatever the URL of the current site is, to prevent cross-site shenanigans." Ipstenu
Future Releases 32622 Make the text of the Image delete AYS dialog clearer Media 4.3 normal normal Awaiting Review enhancement new 2015-06-12T02:30:01Z 2017-06-15T09:53:56Z "When you delete Images from the Media Library, the warning dialog currently reads:
""You are about to permanently delete the selected items.""
This text could be a little clearer, and indicate that, once deleted:
- Attached Images will not be visible in any Posts or Pages they are attached to.
- Both Attached and Unattached Images will not be available online at all." lastnode
Future Releases 32639 A URL Agnostic Wordpress General normal normal Awaiting Review feature request new dev-feedback 2015-06-13T20:34:32Z 2018-07-25T19:26:45Z "My apologies if this has been discussed before. I've tried digging, but couldn't find a discussion about this.
I'm curious why Wordpress has to store the domain (site_url) in the database, and why absolute URLs are used and stored in the DB? It just makes migrations really messy for large DBs, from one domain to another. Plus, in spirit of Wordpress being stateless, wouldn't it be nice just to be able to pick up and move a site from one server to another, on another domain without requiring some regex db scrapping migration plugin?
To me, the database should only care about things specific to the Wordpress blog content itself, and I think that link/url building should be happening at runtime within the application. Purely my opinion.
I imagine this could be accomplished by using the request headers to determine what domain your on when using functions like `site_url()`. For sites that are not rooted at /, but at locations like /blog, we could leverage the config file for a constant like `define('BLOG_ROOT','/blog')` or something along those lines, that could be appended to the domain found in the request, and together prepended to the relative resource url at runtime. I would vote to keep the `WP_HOME` and `WP_SITEURL` constants, so that if they are present, those values are used instead. But, why store that stuff in the DB when links can be built at runtime? It would also cut down on DB queries.
A use case for this would be at the PaaS level, where a hosting provider could offer managed Wordpress hosting. when a client spins up a new Wordpress site, the provider could put that site at a temporary domain like clientid.hosting.com. As the customer builds their site, nothing about that temporary domain is being saved in the DB. Once the customer finally obtains their own domain name, and points to their account with the hosting provider, absolutely nothing should have to change in the customer's database, and the hosting provider shouldn't have to mangle the customer's config file on the server. The site should just be allowed to behave like an application that is listening for requests, and serving content, regardless of domain.
Like I said, this might have been discussed at length before, and there might be pitfalls that i'm just not recognizing, I just wanted to submit this request to the community to see what kind of discussion this would produce.
Thanks all. Go easy on me if this was a dumb idea to present :)
" mattfiocca
Future Releases 32651 get_adjacent_post() doesn't return posts with the same date Posts, Post Types 4.3 normal normal Future Release defect (bug) new 2015-06-15T05:48:40Z 2019-06-24T05:28:53Z "When using `get_adjacent_post()` on a post, the query skips posts with exactly same date and time.
In a blog context, the problem is rarely encountered, but it's more present when posts are added programmatically." willybahuaud
Future Releases 32652 Use `ignore_user_abort()` to avoid some update failures Upgrade/Install normal normal defect (bug) new 2015-06-15T05:50:51Z 2023-03-15T18:42:39Z "As mentioned in [comment:5:ticket:16066] and [comment:5:ticket:29679] we should consider using `ignore_user_abort()` to prevent the potential issue of an upgrade process being aborted mid-way due to a browser cancellation.
This could be called before any update activity starts, or perhaps only after actual changes start happening (ie. after the zipfile download, before the file alterations)." dd32
Future Releases 32658 Post media attachments should show assigned media by default Media 4.3 normal normal feature request new 2015-06-16T08:56:15Z 2019-06-04T20:14:23Z "When adding the attachments to post, the popup always starts with All media files as default, so that if i want to see attached media, i need to click the select, click the Assigned to post option and wait few secs.
I really hate this behaviour, i would like to see assigned media first (if there are some allready asigned).
The problem is, that it is not easy to change it, without hacking the core code - the only way is to add some javascript, that changes the value after page load, but theese solutions are not trivial and buggy (http://wordpress.stackexchange.com/questions/76125/change-the-default-view-of-media-library-in-3-5)
Maybe other people want different default option (i have seen a post of someone, who wanted ""unassigned""), so I think the best would be, if the script would remember the last selected value, or if there would be some option, which to select by default or (and) if at least there would be some easy filter, which we could use to change the default
" thomask
Future Releases 32667 Customizer: autofocus should load as soon as the panel/section/control is active Customize 4.3 normal normal Future Release defect (bug) new 2015-06-17T06:06:18Z 2020-11-29T16:34:19Z Currently, autofocusing waits until the preview loads fully, which can take quite a while on a lot of pages and themes. Widgets need to wait for this to determine whether they should be activated, but for most other sections, we should be able to autofocus as soon as the Customizer controls finish loading. For menus, this would shave seconds off of the percieved loading time of the Customizer. See https://make.wordpress.org/flow/2015/06/14/menus-in-the-admin-and-the-customizer-ux-flow-performance-comparisons/. celloexpressions
Future Releases 32704 Upload path is not set correctly after switch_blog Upload 3.0 normal normal Awaiting Review defect (bug) new 2015-06-18T15:06:15Z 2019-05-15T21:18:59Z "When blog is switched and still using old multisite upload folders, upload
directory is not set correctly, which makes functions like
wp_get_attachment_image_src() return the wrong url." ilanco
Future Releases 32705 `includes_url` shouldn't use `site_url()` on the frontend Permalinks normal normal defect (bug) new dev-feedback 2015-06-18T15:18:09Z 2019-06-04T20:50:36Z "Multisite / Domain Mapping
1. `site_url()` is your admin, `home_url()` is your frontend
1. The site url is blocked behind a firewall
1. You call `includes_url()` for a script on the frontend: your script is blocked, because it loads your admin domain on the frontend
I noticed this because we are trying to upgrade the NYT to 4.2.* and emoji scripts are showing up everywhere.
I can remove the action for now." wonderboymusic
Future Releases 32750 "If changing the checkbox state ""organize my uploads..."" in the media preferences the thumbnails aren't shown anymore" Media 4.2.2 normal normal defect (bug) new reporter-feedback 2015-06-22T12:20:45Z 2019-06-04T20:14:31Z "Hi i ran into the following issue on WordPress 4.2.2. The steps to reproduce.
1. Inside the media preferences keep the checkbox ""Organize my uploads into month- and year-based folders"" unchecked.
2. Upload one or two images inside the library -> everything is previewed properly in thumbnails as well as all files are properly uploaded when checked via ftp.
3. Now check the ""Organize my uploads into month- and year-based folders"" checkbox.
4. Drag and drop a new image to upload inside the library.
5. The thumbnails for the images aren't shown in the library. You only see questionmark placeholders.
6. But if you check via ftp the source files are actually there inside the designated yearly and monthy subfolders but as mentioned not shown in the library.
7. if you uncheck the checkbox in the media preferences again and upload a new image everything works out again and the previews are shown again.
Cheers r. " rkoller
Future Releases 32768 Customizer Widgets and Themes search improvements Customize 4.2 normal normal Future Release enhancement assigned reporter-feedback 2015-06-23T18:06:29Z 2021-05-22T20:29:24Z "Widgets and Themes search would need the same improvements done for the Menu Customizer.
Widgets:
- activating ""Add a Widget"" with the Space bar doesn't prevent the default action, as a result the search field gets a space character and the placeholder text is gone. See https://github.com/voldemortensen/menu-customizer/issues/107
Both:
- the search results (or no results) should be announced to assistive technologies, possible use case for wp.a11y.speak see #32720
- a short description of the ""live"" search functionality could help, see the Menu items search in core, i.e.: aria-describedby=""menu-items-search-desc""" afercia
Future Releases 32773 You cannot move Private nor Passworded posts to Draft. You must make them public first. Posts, Post Types normal normal Awaiting Review defect (bug) new 2015-06-24T03:30:09Z 2017-07-03T16:32:40Z "This is an odd quirk of the editor and might be a security issue for some. However, there is no option from the main editor to move a post directly to draft status from Private nor from Passworded status. I suspect you can trash the post first and then mark it as draft and maybe you could do it from the quick edit. In any case marking as draft should be able to be done from within the actual editor without the disclosure of private information.
NOTE: This kinda is a security issue, but not in the way the check box is asking about. It is procedural. So I'm marking ""I am not reporting a security issue.""" BrianLayman
Future Releases 32789 Abstract get_category_by_path into get_term_by_path Taxonomy normal normal enhancement new needs-unit-tests 2015-06-25T15:59:01Z 2019-06-04T21:15:41Z "Having a function like `get_term_by_path` would be great as currently you have to fork the `get_category_by_path` function on your own to get a term by path for any other custom taxonomy.
Would there be any opposition to a patch for this? The abstracted function wouldn't house the `_make_cat_compat` usage, which would remain in the backwards compatible `get_category_by_path` function after checking to see if $category is not null." sc0ttkclark
Future Releases 32824 Consistent search fields between posts and terms Posts, Post Types normal normal Awaiting Review feature request new 2015-06-29T13:42:54Z 2017-07-23T02:17:53Z Searching for posts [https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/query.php#L2091 currently checks] the `post_title` and `post_content` fields, while [https://core.trac.wordpress.org/browser/tags/4.2.2/src/wp-includes/taxonomy.php#L1899 searching terms] checks the `name` and `slug` fields. Could `post_name` be added to the where clause for posts, and `description` be added to terms? That way, searching would consistently check an entity's title, slug, and content. ashworthcreative
Future Releases 32849 Allow option of Grid AND List View of the gallery when inserting media into post Media normal normal enhancement new 2015-07-01T00:24:57Z 2023-10-18T16:27:12Z "I’ve looked around quite extensively for this, but can it appears this feature simply doesn't exist in WP currently.
Basically, when you’re on a post and want to either “insert media” or select “featured image”, you cannot view the gallery list on a post using the “list view”. Rather the only option appears to be the default “grid view”.
The ""list view"" interface is already available in Gallery, is there any reason why this isn't available in the post editor as well?
I've seen a number of requests for this online, especially when there are installations that have a large number of images that are similar (and thus you need to easily see the meta information to differentiate)." ashkas
Future Releases 32861 Site Icon: Provide display for all existing site-icon cropped images Customize 4.3 normal normal Future Release enhancement reopened 2015-07-01T21:14:10Z 2019-06-04T19:30:23Z "Example:
I had a picture and tried to set it up as site icon. I cropped this image and now I have `cropped-image.png` variant of this image 512 x 512 px. Then I tried other images and in the end I wanted to go with the first one. But when I selected this cropped image, I had to crop it once again even if right dimensions. So, now there is another `cropped-cropped-image.png` image in media library and it does not make sense...
Also images for site icons should be somehow marked (as for header images in Customizer). How can I find my cropped images for site icon in media library when trying to set up site icon?" pavelevap
Future Releases 32868 Consider running utf8mb4 conversion on each database update Database normal normal defect (bug) new 2015-07-03T03:27:55Z 2019-06-04T19:30:29Z "As mentioned in #32127 and elsewhere, we should run the utf8 -> utf8mb4 conversion on each db update.
The main reason is that the server environment could change between updates.
For example, if someone upgrades MySQL between 4.3 and 4.4's release, at present they'll update to 4.4 and still not have utf8mb4 support, even though WordPress will now be able to support it." dd32
Future Releases 32892 List table: Select %s shouldn't be a row header Administration 4.2 normal normal Future Release defect (bug) assigned 2015-07-05T14:59:41Z 2018-10-12T15:31:29Z "See related #31654 and #26167.
In all the List Tables in the admin, the ""Select %s"" (where %s is the name of the Post, Attachment, Plugin, User, etc,) is used as row header:
{{{
}}}
This is not correct from a semantics and accessibility point of view for all the reasons mentioned in #31654. The row header should be the cell with the main object the table refers to: the Post title, the Plugin name, etc.
We could also consider to use the `abbr` attribute: http://www.w3.org/TR/html5/tabular-data.html#attr-th-abbr
that would be consistent with what is currently proposed in [comment:21:ticket:32170 sortable column headers ticket]" afercia
Future Releases 32917 Tests_DB_Charset tests don't fully cover wpdb::strip_invalid_text_for_column() Charset 4.2 normal normal enhancement new needs-unit-tests 2015-07-08T00:20:27Z 2019-06-04T19:30:40Z "Related / previously:
* #32351
* #32308
* #32127
* #21212
`Tests_DB_Charset` includes a data provider that feeds various charsets into its `wpdb::strip_invalid_text()` test, but not for its `wpdb::strip_invalid_text_for_column()` test, which means it's not being tested fully. It should be." johnbillion
Future Releases 32952 Select elements don't have the same size as input elements Quick/Bulk Edit 3.8 normal normal defect (bug) new close 2015-07-09T20:22:56Z 2023-05-14T19:48:31Z "[[Image(https://cldup.com/Daws15AjdJ.png)]]
- `select` elements should have the same font size as other `input` elements" sunnyratilal
Future Releases 32965 Add new Credit field to media attachment details Media normal normal enhancement new 2015-07-12T05:14:33Z 2023-10-18T16:35:53Z "I propose adding a new form field to the attachment details page to easily add information to credit media files to their original sources. For example, if I upload an image I can use this new field (Credit) to add the photographer and any other related or required information to fulfill copyright or attribution requirements. Currently the attachment details pane has the following fields (from Codex [https://codex.wordpress.org/Inserting_Media_into_Posts_and_Pages]):
• Title: the name of this media
• Caption: brief explanation - this text will be displayed below the image
• Alternative text: text to describe the media - used for accessibility
• Description: an explanation of this particular media
These fields are not ideal for adding attribution information because doing so would prevent a user from adding information originally intended for those fields. Having a separate field specifically for crediting an attachment would be better because users could still add a caption or description but also add their attribution. Plus, the Credit field could have a CSS class selector (e.g., ""wp-credit-text"") assigned to it to make it easy to style in a theme.
'''Why this is important'''
Whenever anyone inserts a media file into their post or page they should (or sometimes must) credit the original source. This is important to provide copyright information or to attribute items that are in the creative commons. Because there is currently no specific place to put this information on an attachment, users might not be adding it or are doing so in an inconsistent or makeshift way (e.g., in the caption field or at the end of a post).
When a user uploads a media file and sees the Credit field they may be more motivated to add the appropriate information, which can be as simple as the word ""Credit"" with a link to the original source to something more complex. For instance, the Creative Commons says an ideal attribution contains the following: title and author, as well as links to the original source, author's profile, and the Creative Commons license. For example:
• ""Creative Commons 10th Birthday Celebration San Francisco"" by tvol is licensed under CC BY 2.0. See [https://wiki.creativecommons.org/wiki/Best_practices_for_attribution]
Although some plugins exist that add this feature and developers can add it to their functions file, it would be more beneficial as part of the WordPress Core. It would enhance WordPress for everyone, promote the idea of attributing work, and allow theme developers to easily add or style it in themes.
Helpful things to note:
• The Credit field should allow HTML
• The magic happens in wp-admin/includes/media.php
• Current attachment form fields are added in get_attachment_fields_to_edit() (line 1164)
• WordPress creates a shortcode for the caption in img_caption_shortcode() (line 843) with tags and CSS class of ""wp-caption-text"" so we may want to do something similar to Credit, like tags and "".wp-credit-text"" class.
I've developed a small plugin that adds the field, but it needs a little work with styling for the attachment editor. See some more specific notes in the plugin.
Thank you!" mcuomo2013
Future Releases 32979 Password UI: Regenerate PW after clearing field General 4.3 normal normal Future Release enhancement new 2015-07-13T17:49:23Z 2017-12-11T13:25:02Z "Based on https://core.trac.wordpress.org/ticket/32589#comment:20.
I think this needs some discussion and focus in it's own ticket.
In the new UI a PW gets generated for you. You have to take an action ""Show password"" or ""Generate new password"" to make the field show. Then you can edit that if you would like. At that point you decide you would rather generate one again. There is no clear way to do so.
A few things worth noting
On user profile you can click ""Generate new password"" again and it will.
On new user you can click ""Show password"" and it will regenerate a pw again. (This is not great and where the change needs to happen)
Perhaps the easy solution is to change the wording on the button when the field is shown to ""Generate new password"".
A small issue that can be taken care of at the same time is the ""Show password"" button shows above the PW field while the ""Generate new password"" button shows below. The button below looks better.
" MikeHansenMe
Future Releases 32993 get_terms with child_of only works with uninterrupted hierarchies DrewAPicture* Taxonomy 4.2.2 normal normal Awaiting Review defect (bug) accepted 2015-07-14T13:00:45Z 2017-09-23T23:53:42Z "Similar to #14477 -
If I use `get_terms()` with both search and child_of, the filtered results are passed to `_get_term_children()`, and if those results don't include an uninterrupted heirarchy, it returns an empty array. Something like...
{{{
get_terms(array(
'search'=>$search_term,
'child_of'=>6
));
}}}
won't return grandchildren of 6 that match `$search_term`." eclev91
Future Releases 32994 invite email from secondary blog does not use network site URL for wp-activate link Networks and Sites 4.2.2 normal normal defect (bug) new reporter-feedback 2015-07-14T14:33:18Z 2019-06-04T20:15:01Z "When inviting a user as an admin from a secondary site, the message uses `site_url('wp-activate.php?key=$key')` to generate the invite link. This is a problem because `wp-activate.php` returns a 404 when accessed outside the network site domain. Instead it should use `network_site_url('wp-activate.php?key=$key')`, as is done elsewhere.
Here is the line in question: https://core.trac.wordpress.org/browser/trunk/src/wp-includes/ms-functions.php#L953" leedo
Future Releases 33009 Alignment of header in category table Administration 4.0 normal normal defect (bug) new 2015-07-15T21:40:28Z 2019-06-04T19:31:14Z In the admin/category page, the header of rightmost column is partially hidden if switching to another language (it_IT in this example, see attached image) probably due to alignment. WP 4.3-beta2-33274, Windows 7, XAMPP, Firefox andywar65
Future Releases 33017 Images displayed with page.php instead of index.php Themes normal normal defect (bug) reopened needs-unit-tests 2015-07-16T15:04:19Z 2019-06-04T21:15:50Z "I am developing a theme and currently do not have an `attachment.php` or a `single.php`. When I insert an unattached image into a post and select ""Link to: Attachment Page"", I expect the image to be displayed with `index.php` according to the template hierarchy [https://developer.wordpress.org/files/2014/10/wp-template-hierarchy.jpg]. However, the attachment page is displayed with the `page.php` tempalte instead, and the URL is under my static front page.
The issue does not show up with images attached to the post." creon
Future Releases 33054 Better featured image/attachment sanity checks Media 4.2.2 normal normal Awaiting Review enhancement new 2015-07-20T22:19:09Z 2017-06-27T16:16:22Z "Use case:
Add a post: If a user uploads a featured image and the file fails to write to disk, the post record contains the url to the image but of course the image is broken. The end state is one where the featured image is simply broken, but the post record references the image.
Possible solutions:
1. Do an extra sanity check after write to disk that the image was actually created. If there was a failure alert the user. This is probably the easiest.
2. Or reverse the order of operations, making it transactional in nature. That is, create the image(s) first, check if successful, and then update the post record. If there is a failure show an alert to the page, and don't write the image path to the post record as the file doesn't exist. It is alot cleaner to not have an image than having a broken one. It is also better if the image was successfully written to disk but the post url failed to update for some reason; we can always re choose from the media library.
a. Going above and beyond, the sanity check would keep track of thumbnail sizes to be created and make sure they all were successful. If not, don't update the post record and remove the thumbnail sizes that did write to disk. Once again treat as a transaction; all or nothing.
Extended impact:
Many folks use image compression plugins or tools that compress the images before writing to disk. Currently if those items fail usually by timeout you are left with a broken image and the url is in the meta.
I propose that there be a pre-check as to the thumbnails to be created before the image write even occurs (add a new action hook that keeps track of the thumbnails we expect from add_image_size) and then check on the backside to make sure we have the image(s) we expect. After that all sanity check rules proposed above would apply." ShawnLunny
Future Releases 33085 Customizer: controls description inside labels are not real labels nor descriptions Customize 4.2 high normal Future Release defect (bug) reviewing 2015-07-22T22:45:01Z 2023-11-14T04:54:29Z "Splitting this out from #32493 (which changed its scope)
I'd propose to investigate about the Customizer controls descriptions. Currently, they're inside the label element. The result is they're not a proper form label, since labels should be short. Longer descriptions should be associated with form controls using `aria-describedby`.
As consequence for accessibility: as soon as a form control is focused, its label gets read out. In the following example from the new ""Site Icon"" functionality in 4.3, all the text highlighted in the blue box will be read out but the actual button text ""Select File"" won't. [http://www.w3.org/TR/html5/forms.html#category-label Buttons can have labels], that's correct HTML, but of course the label text will override the button text.
Not to mention all the label text is clickable and will activate the button when clicked.
[[Image(https://cldup.com/YrBf73CbMo.png)]]
Same for input fields, the control description used as label will be read out as... a label.
[[Image(https://cldup.com/cgetk_WbNT.png)]]
Related: #31540" afercia
Future Releases 33095 Background updates: Administration blocked Upgrade/Install 4.2.3 normal normal defect (bug) new dev-feedback 2015-07-23T12:01:49Z 2019-06-05T06:41:12Z A while ago there was background update to 4.2.3 and everything works well. But administration was blocked for users without Administrator capability to update database. Many of our editors could not work until Administrator logged in and updated database. I am not sure if I am missing something or something wrong on our side, but it is a dangerous situation, I guess... Database should be updated automatically in this case of minor update? pavelevap
Future Releases 33107 Add a Menu button: when clicked the icon does not rotate around center point Customize 3.9 low normal Future Release enhancement assigned dev-feedback 2015-07-24T01:47:32Z 2021-05-22T21:08:48Z "When clicking the ""Add a Menu"" button in the Menus area of the customizer, the icon doesn't quite rotate around its center point. On some browsers like Chrome and Firefox the icon is also misaligned and pulled up too high.
Here's the icon in Firefox for example:
[[Image(https://cldup.com/01NjVg0Qh7-3000x3000.png)]]
Screenshot of the rotated icon combined with its original position:
[[Image(https://cldup.com/uO_3o712gB-3000x3000.png)]]
Here's some short videos of how the icon rotates when clicked:
Firefox 39 (OS X)
https://cloudup.com/cBb9kdrvjNZ
Chrome 43 (OS X)
https://cloudup.com/ciNZeSgbab7
Safari 8 (OS X)
https://cloudup.com/cUmIW81nSht
Safari is the only one that looks correct. The issue is partly caused by the ""add"" icon not a perfect square (it appears 1px wider in some browsers). By using the transform-origin CSS property we can improve how the icon rotates.
Because of the icon being rendered 1px wider in some browsers it's not possible to get it exact, but it's certainly an improvement. Shown below are some videos of how they would look after some CSS adjustments using the transform-origin CSS property. Best viewed at normal size with the patch, but you get the idea:
Firefox 39 (OS X)
https://cloudup.com/ca2OWHuGe8q
Chrome 43 (OS X)
https://cloudup.com/c_5AROy460x
Safari 8 (OS X)
https://cloudup.com/c1YdWYfyMqd
Also tested in IE 11 on Windows.
First patch coming." sumobi
Future Releases 33123 Filter on theme mod default value Themes 4.3 normal normal Awaiting Review enhancement new 2015-07-25T15:56:28Z 2018-06-23T19:15:25Z "For those of us using theme mods for storing theme settings, we often need a method for modifying the default theme mod when building child themes. For example, I might build a Christmas-styled child theme and modify the parent theme's default ""primary"" color to green. The only way this is possible is if the parent theme does something like this:
{{{
$primary = get_theme_mod( 'color_primary', '' );
add_filter( 'theme_mod_color_primary', 'parent_color_primary', 99 );
function parent_color_primary( $hex ) {
return $hex ? $hex : '#00000';
}
}}}
Then, the Christmas child theme can hook in earlier and modify this if needing to change the default like so:
{{{
add_filter( 'theme_mod_color_primary', 'child_color_primary', 10 );
function child_color_primary( $hex ) {
return $hex ? $hex : '#cc0000';
}
}}}
That's kind of a janky way to do things. It'd be far easier to have a filter on the default passed into `get_theme_mod( $mod, $default )`. Something like:
{{{
$default = apply_filters( ""theme_mod_{$mod}_default"", $default );
}}}
In this scenario, the parent theme merely needs to do this:
{{{
$primary = get_theme_mod( 'color_primary', '#000000' );
}}}
And, the child theme:
{{{
add_filter( 'theme_mod_color_primary_default', 'child_color_primary' );
function child_color_primary() {
return '#cc0000';
}
}}}
I'm attaching a patch that will provide this filter hook." greenshady
Future Releases 33139 Customizer on mobile: 'Save & Publish' button may overflow when translated. Customize normal normal Awaiting Review defect (bug) new dev-feedback 2015-07-27T12:50:16Z 2021-05-23T17:46:38Z iseulde
Future Releases 33148 Categories are missing in admin category list when child category linked to non-existant parent id Taxonomy 4.2.3 normal normal Future Release enhancement new 2015-07-27T21:42:51Z 2021-07-13T19:27:17Z "I did a dive into this as our own categories were not showing up and think that this is a user experience nightmare.
I have detailed the issue here: http://stackoverflow.com/a/31663554/1361532
A quick google search for ""wordpress missing categories"" shows many threads on wordpress.org with users who never had a resolution since at least 2010.
As an additional note though the bug does not impact the actual use of the category when creating new posts, although the categories are not nested correctly, but are still usable. To be clear this bug only impacts category management.
My recommended solution to this is for the category list to show all categories in the list even if they are not properly linked AND to show (in red?) ones that are not linked correctly so they can be fixed.
" ShawnLunny
Future Releases 33158 inline toolbar: incorrect position if link spans over two lines Editor 4.3 normal normal Future Release defect (bug) new 2015-07-28T20:47:41Z 2019-07-04T12:30:16Z iseulde
Future Releases 33180 Widgets not preserved after switching theme and deactivate plugins Widgets 2.8 normal normal defect (bug) new dev-feedback 2015-07-29T17:59:40Z 2019-06-05T06:41:16Z "Steps to reproduce:
- Activate any plugin with available widget.
- Use this widget in sidebar of actual theme.
- Deactivate all plugins.
- Switch theme (for example Twenty Fifteen).
Note: These steps are frequently used for debugging problems.
- Switch back to previous theme.
- Activate all plugins.
Expected result: Widget is still active and visible.
Current result: Widget is missing. When used together with any core widget, then this widget is preserved during workflow above." pavelevap
Future Releases 33204 kses $allowedposttags should support microdata Formatting normal normal Awaiting Review enhancement new 2015-07-30T10:30:26Z 2018-11-15T13:27:39Z "It should support more attributes:
itemscope, itemprop, itemref, itemtype and itemid
check out https://en.wikipedia.org/wiki/Microdata_(HTML)#Global_attributes" wordpressplugindeveloper
Future Releases 33215 Main plugin file loaded multiple times under special circumstances on Network Activate Plugins 4.2.3 normal normal defect (bug) new 2015-07-31T10:06:02Z 2019-06-04T20:50:57Z "Consider the following code in the main plugin file:
{{{
function test_plugin_install ( $network_wide = null ) {
if ( $network_wide ) {
trigger_error( 'Please activate individually.', E_USER_ERROR );
}
}
register_activation_hook( __FILE__, 'test_plugin_install' );
}}}
and a multisite setup with
* mysite.intern as main site
* one.mysite.intern, two.mysite.intern, etc. as blog sites
Now, if you first activate the plugin ''individually'' on mysite.intern, and then select ""Network Activate"", the following is logged:
{{{
PHP Fatal error: Please activate individually. in test_plugin.php on line 17
PHP Fatal error: Cannot redeclare test_plugin_install() (previously declared in test_plugin.php:15) in test_plugin.php on line 15
PHP Fatal error: Cannot redeclare test_plugin_install() (previously declared in test_plugin.php:15) in test_plugin.php on line 15
}}}
and only the last error is displayed on the admin page.
If the plugin is first activated on another blog site or isn't activated individually anywhere, only the expected ""Please activate individually"" error is thrown and displayed on network activation, as expected.
Wrapping the function test_plugin_install in a conditional only results in the next function in the plugin file triggering the redeclaration error." ccprog
Future Releases 33234 Tags/Categories Count Incorrect Taxonomy normal normal defect (bug) new dev-feedback 2015-08-02T22:31:34Z 2023-05-03T20:24:41Z The tags and categories management pages show inaccurate count when posts are marked private. mikedunn
Future Releases 33240 Introduce a capability for previewing posts Role/Capability normal normal Future Release enhancement assigned needs-unit-tests 2015-08-03T11:36:52Z 2017-07-14T19:41:15Z "In order to preview an unpublished post (ie. draft or pending), a user needs the `edit_posts` capability for that post type ([https://core.trac.wordpress.org/browser/tags/4.2.3/src/wp-includes/capabilities.php#L1174 src]).
There is a valid use case where a site requires a user role which has the capability to preview unpublished posts but not edit them, for example for editorial review/sign-off, layout review, early access, etc.
You can [http://wordpress.stackexchange.com/a/196209/27051 get around this by using a combination of the posts_results and the_posts filters], but this isn't very future-proof because the post results skip a bunch of logic that occurs between those two filters.
A `preview_post` meta capability and a `preview_posts` primitive capability could be introduced and implemented wherever the `edit_posts` capability is used in regard to previewing unpublished posts. By default, it will simply map to the `edit_posts` capability.
Thoughts?" johnbillion
Future Releases 33306 Only Query for author ID if user is member of blog Query 4.3 normal normal enhancement new needs-unit-tests 2015-08-07T17:45:42Z 2019-06-04T20:51:04Z In WP_Query if a user is part of the multisite install but is not part of the current blog the query is still altered from only finding public posts to finding public posts and those that are private and from that author_id. While this never has an impact on the returned end results, not having private and author ID as a parameter lets MySQL optimize the queries and in the circumstances this has been tested on (large site, lots of posts lots of users) makes them run faster. On a site without multisite installed this will have the same behavior. sboisvert
Future Releases 33332 Default ACL entries are not set correctly when file is uploaded to WP Filesystem API 4.1.1 normal major Awaiting Review defect (bug) new 2015-08-10T22:21:08Z 2019-02-07T07:30:14Z "Hello there!
We are using ACL permissions on our server in order to isolate all websites from each other. Both nginx and php-fpm has it's own users. Actually, each website has it's own php-fpm user.
The ACL permissions are set for new files via default permission set:
{{{
getfacl -a ./sitename/wp-content/uploads
# file: sitename/wp-content/uploads
# owner: www-data
# group: www-data
user::rwx
user:nginx:r-x
user:fpm-sitename:rwx
group::rwx
mask::rwx
other::---
default:user::rwx
default:user:nginx:r-x
default:user:fpm-sitename:rwx
default:group::rwx
default:mask::rwx
default:other::---
}}}
So, when I manually create a file, the correct ACL permissions will be set for it by the filesystem itself:
{{{
$ sudo -u fpm-sitename touch test
$ getfacl ./test
# file: test
# owner: fpm-sitename
# group: fpm-sitename
user::rw-
user:nginx:r-x #effective:r--
user:fpm-sitename:rwx #effective:rw-
group::rwx #effective:rw-
mask::rw-
other::---
}}}
And nginx will be able to read and serve it.
However, when I upload a file through the WordPress it has no ACL entries at all.
I've looked through the code and the following part of the '''_wp_handle_upload()''' seems to be the culprit:
{{{
// Set correct file permissions.
$stat = stat( dirname( $new_file ));
$perms = $stat['mode'] & 0000666;
@ chmod( $new_file, $perms );
}}}
After commenting it out uploading works like a charm and proper ACL entries are set as expected.
We're using Ubuntu Server 14.04.3 LTS.
Cheers!" slavafomin
Future Releases 33337 WordPress crashes in Chrome when trying to upload images too quickly into Media Library Media 4.3 normal major defect (bug) new reporter-feedback 2015-08-11T10:30:58Z 2019-06-04T20:15:30Z "Steps to reproduce
1) Use Chrome and a wordpress installation with at least few images, the more images, the easier to reproduce.
2) Create new post
3) Click Add Media
4) Whilst the Media Library is loading all of the images, try to drag new images into the window to upload.
The result is that Chrome crashes. It seems as though the trying to drag images into the window before the ""Drag to upload"" function is loaded kills it.
" tstania
Future Releases 33341 WP_Meta_Query IN operator with empty array does not return expected result Query 3.2 normal critical Awaiting Review defect (bug) reopened dev-feedback 2015-08-11T18:32:26Z 2023-10-17T19:18:10Z "When using the `IN` compare mode in a `WP_Meta_Query` where the value is an empty array, this query is evaluated with an unexpected behavior.
For example, I have some posts with a meta field called `'some-textfield'`:
{{{
$posts = get_posts( array(
'posts_per_page' => -1,
'post_type' => 'post',
'post_status' => 'publish',
'meta_query' => array(
array(
'key' => 'some-textfield',
'value' => array(),
'compare' => 'IN',
),
),
) );
}}}
This code returns all posts although I would rather expect it to return no posts at all since the value of `'some-textfield'` (whatever it may be) is not ''in'' those provided in the `value` field.
I discovered it when I needed to perform a meta query where the value was an array that was returned by a previous operation. It is obviously a minor issue since we can simply check if the array is empty (and in that case do not make the query at all) - but I thought it's not really the expected result of such a query.
The solution would be to:
* ignore this condition if the `relation` is set to `OR` and there are other conditions available
* evaluate this condition to false otherwise (and thus return no results)" flixos90
Future Releases 33344 Do not force draggable elements on touch devices, stop using touch-punch.js General normal normal defect (bug) new 2015-08-11T22:07:01Z 2019-06-04T19:50:32Z "Having draggable elements on touch screen devices doesn't work well in most cases. It interferes with the standard scrolling, dragging an element off the page doesn't scroll it either. Examples: Menus, Widgets, Dashboard (rearranging the layout), Customizer => Menus and Widgets, etc. This is especially bad on Android as drag/drop is disabled for iOS in several places.
" azaozz
Future Releases 33345 Remove blocking API requests for update checks Upgrade/Install normal normal enhancement new 2015-08-11T23:07:13Z 2019-06-05T06:41:24Z "I'm getting pretty fed up with the blocking HTTP requests to `api.wordpress.org` in the admin area. Core, plugin, and theme update checks are all blocking and can happen on any admin screen once the corresponding transient expires.
These update checks should be converted to non-blocking requests, with an AJAX listener which polls the corresponding transients and displays the update count in the admin toolbar (and message in the footer) as necessary.
The Plugins screen can already be quite slow with a large number of plugins, and the plugin update check slows it down a ton. On the Plugins screen an AJAX listener should poll the corresponding transient and display the available plugin updates inline once it's completed, and toggle the ""Update Available"" tab (and its count) as necessary.
The AJAX listener only needs to be triggered if an update check has been triggered at the start of the page load.
Visiting the Updates screen would retain current behaviour." johnbillion
Future Releases 33371 Undefined Indexes for Movable Type and TypePad Importer. westi* Import normal normal defect (bug) accepted reporter-feedback 2015-08-14T08:25:25Z 2019-12-06T05:07:37Z "Display notice in ""Assign Authors"" ( WP_DEBUG = true ) .
{{{
Notice: Undefined index: upload_type in movabletype-importer/movabletype-importer.php on line 233
Notice: Undefined index: id in movabletype-importer/movabletype-importer.php on line 248
}}}" mt8.biz
Future Releases 33374 Improvements for the messages visible in the plugin manager Plugins normal normal Future Release enhancement new 2015-08-14T15:41:41Z 2017-07-21T00:44:28Z "Hello,
WordPress is more and more popular and I think that it is the time to prepare better security-related messages into plugin manager.
Outdated plugins are probably the most popular way to compromise websites based on WordPress.
That’s why I suggest that in the plugin manager the following messages should appear too:
- “This plugin has not been updated for more than 2 years” - some plugins are no longer developed and can contain vulnerabilities which are not managed by the plugin developer
- “Security update” - it would be great to provide the plugin authors a possibility to add a message that the current update is a security update. Then users will know that they should update their plugin immediately (Currently I often check every changelog to make sure that I can made an update in weekend).
- “No longer in directory” - some plugins were removed from the repository and of course are no longer maintained - it is a similar issue as the first one. Additionally it will help users to detect plugins which was accepted but breaks the WordPress.org rules.
Sending e-mails connected with these messages would be also great for administrators.
Yes, I know that there are plugins for the above features, but I think that due a big popularity of WordPress and more and more massive attacks which appears sometimes after few hours (!) after disclosure, WordPress should contain better tools which are built-in into the core code. Because a lot of people currently ignore updates or uses very old and vulnerable extensions. In my opinion “security” is a keyword which forces people for the updates." dziudek
Future Releases 33425 XML-RPC missing options on wp.getOptions XML-RPC 4.3 normal normal Awaiting Review defect (bug) new reporter-feedback 2015-08-19T08:35:27Z 2017-04-14T13:41:05Z "Why the list of options available here
https://github.com/WordPress/WordPress/blob/ce557062f4123d8513378cf415b4e8b612c33ccc/wp-includes/class-wp-xmlrpc-server.php#L383
doesn’t match this https://codex.wordpress.org/Option_Reference
For example default_category or blog_public fields are not available on XML-RPC." SergioEstevao
Future Releases 33461 Allow filtering of meta_value in exporter Export normal normal enhancement new 2015-08-20T08:46:22Z 2020-07-02T15:50:40Z "Hi,
There are some filters in the exporter code that allow developers to modify the exported XML data
according to their needs. One filter that is missing is the ability to filter the
{{{
meta_value
}}}
field. This can be very helpful ie. to filter out urls or any other data that's being stored there. I'm attaching a patch to be applied to the core.
" newkind
Future Releases 33466 wpautop breaks multi-line textarea content miqrogroove Formatting normal normal defect (bug) assigned 2015-08-20T14:52:54Z 2019-06-04T19:50:49Z "Applying wpautop() breaks multi-line content of textarea element because it replaces each newline with ` `. A textarea can't have HTML in its content.
You can reproduce the problem with the following code:
{{{
$text = '';
echo wpautop( $text );
}}}
" takayukister
Future Releases 33468 Add image caption hook SergeyBiryukov Media normal normal Future Release enhancement reviewing dev-feedback 2015-08-20T17:05:05Z 2020-03-04T22:34:29Z "There is currently no proper way to hook into image captions.
Image captions are stored into the excerpt of attachments posts but when the caption is retrieved it doesn't go threw any specific filter.
I think it would be nice to have a `add_filter ( 'image_caption', 'your_filter' );` or something similar.
This was already discussed here : [https://wordpress.org/ideas/topic/add-image-caption-hook#post-28710]
Captions are used by multiple themes and plugins. They are fully supported and showed in twenty-fifteen so I think we should be able to properly hook/filter them.
" guillaumemolter
Future Releases 33469 Customizer Menus: Restore active menu to a location after selecting and unsetting another menu Customize 4.3 normal normal Awaiting Review enhancement new dev-feedback 2015-08-20T18:40:47Z 2021-05-23T17:52:53Z "When a location is specified for a menu and another menu is assigned to that location in the Customizer, the first menu is removed even if the new settings aren't saved.
1. Assign a menu to a location in the customizer. Click ""Save & Publish"".
1. Assign a different menu to that location, but do not save.
1. Uncheck the location from the second menu.
Expected: The previously selected menu for that location should be restored.
Actual: The location now has no menu assigned to it." morganestes
Future Releases 33472 Templating Engine Themes 4.4 normal normal Awaiting Review feature request new 2015-08-20T21:01:36Z 2021-04-28T18:13:54Z "Templating engines are being used everywhere, not just in other languages, but nearly all other PHP frameworks and CMS's that are actively maintained. Even Drupal 8 will be rolling out [https://www.drupal.org/theme-guide/8/twig Twig integration].
I wasn't able to find an actual discussion about this on Trac, so I definitely wanted to open the discussion. Should WordPress integrate a templating engine?
The benefits are obvious:
* Automatic escaping. No more escaping all the things every single time.
* Easier to read. This is sometimes down to personal opinion, but I and many others do find templating engines much easier to read than PHP templates
* Better separation of logic from templates. This isn't a guarantee, and depends on how strict the templating engine is, but it does help reinforce this.
Cons:
* More to learn. I don't know '''how much''' more, but it is something to take into account
* Speed? I haven't looked up benchmarks lately, but another thing to potentially keep in mind
* Backwards compatibility. However this could be mitigated if plugins/themes had the option to use straight PHP or the templating engine.
There are many options available, Smarty isn't widely used anymore, but there is (http://twig.sensiolabs.org/ Twig) which is probably the most adopted, and (http://laravel.com/docs/5.1/blade Blade) has become rather popular." KalenJohnson
Future Releases 33473 "Shortcodes + Widgets + Nav Menus. Unified ""component"" API (aka Content Blocks)" Widgets normal normal Future Release feature request new 2015-08-20T21:53:57Z 2018-03-26T16:53:02Z "Looking ahead and seeing that Shortcake is getting a lot of support, I've noticed that shortcodes and widgets are beginning to look fundamentally the same. They are both view components that express some sort of input fields for dynamic ""instance"" data. So I'm wondering what the general feeling would be toward a unified ""Component"" API.
Lets say you're a designer implementing a theme and you have a stylized block for displaying an author. At times you might want to express that in a sidebar, and other times you might want to use it inline in page content. The HTML output is fundamentally the same, and differences only deal with where the input data is coming from (shortcode attrs vs. widget data) and minor presentational differences based on context. This could be very simply expressed as a single class or function pattern that does the work of registering the shortcode and widget under the hood for you. A client or someone downloading a theme often won't know that they want a component to work inside a sidebar or inside the content until they realize it isn't available.
The benefit of a unified API is that you double the usable components you have to work with. There are great developers making widget bundles and other great developers making shortcodes, but not many doing both. All this to say, it's actually pretty straightforward to implement a class version of this API that handles registering both types of object for you. I have a working version of this in a plugin already. I'm just curious if anyone else thinks this is a problem worth pursuing. Thoughts?
Aside: You could make a case that template parts aren't all that different from shortcodes and widgets and might also benefit from input fields (customizer anyone?), at which point you'd have a component that could truly go anywhere." brentjett@…
Future Releases 33542 User preferences API idea Users normal normal Future Release feature request new dev-feedback 2015-08-25T15:39:53Z 2017-02-05T22:49:03Z "When setting up a new site, many site Settings seem at first like user preferences even though they aren't. For sites with 1 user blogging out to the world, this makes sense, but for more robust installations a single set of site settings does not satisfy all users.
I'd like to propose a user preferences API be invented. This API would consist of a series of functions that connect usermeta to site & network options, and when invoked, will traverse the user/site/network hierarchy and use the first available setting. Something like:
{{{
$language = wp_get_user_preference( $user_id, 'WPLANG' );
}}}
Imagine then, that `wp_get_user_preference()` would first look in `wp_usermeta`, then in `wp_options` and then in `wp_sitemeta` if multisite. This is obviously a fuzzy example, and there are less obvious caveats (like what to do when usermeta keys do not match option keys, etc...) which can all be conditionally addressed as we poke holes in the idea.
----
Here are a few settings that could be candidates, taken from their verbiage in various administration screens:
General
* Timezone
* Date format
* Time format
* Start of week
* Language
Writing
* Formatting
* Default Post Category
* Default Post Format
Reading
* Blog pages show at most
* Syndication feeds show the most recent
Discussion
* Default article settings
* Email me whenever
* Avatar Display" johnjamesjacoby
Future Releases 33553 Bug with Linebreak before figcaption, fixed and then revert to make a fix elsewhere Formatting 4.2 normal normal defect (bug) new 2015-08-26T10:56:24Z 2019-06-04T19:51:03Z "A linebreak is inserted before in the WYSIWYG editor on edit pages.
A fix for #25646 was applied in commit 1842c2b on 13 Mar 2104 - Change set was [27527].
This was then reverted to make a fix for #29219 but the dev then caused the original bug to reappear. The commit is 6b84df3 on 16 Jan 2015 - Change set [31186].
A fix for the orignal bug is now needed again." hughie.molloy
Future Releases 33566 Keyboard shortcuts for all functionality of Dashboard + Admin Menu while in read mode Administration 4.3 normal normal Future Release enhancement reopened 2015-08-26T21:52:34Z 2022-12-07T13:50:13Z "I'm constantly hitting cmd+s (or meta+s) in the appearance file editor. I'm also constantly looking for a short cut to preview or publish a post. Aside from the accessibility assistance, I think an addition like this would make WordPress very ""Power User"" friendly. I know the meta+s command works in the post/page editor but the interaction is so subtle, I'd to do it a few times before I saw the ""Draft saved..."" comment at the bottom. I had a notion that something like meta-key + down arrow might overlay a set of keyboard instructions. Things like ""cmd/ctrl + s = Save Draft, cmd/ctrl + shift + L = Preview Post, cmd/ctrl + p = Publish Post/Page"" etc. Obviously, this needs work.
Is this something in the pipeline? If not is this something I can propose?" tady
Future Releases 33571 Improvements for plugin upgrades when disk space runs out (or other write failure) francina Upgrade/Install normal normal Awaiting Review defect (bug) assigned 2015-08-27T14:55:52Z 2022-11-15T17:46:52Z "Problem: here's a support issue I see all the time:
* User sees a plugin update available, and attempts to update.
* The user runs out of disk space (or hosting account quota) half-way though, causing the recursive copy (of the unzipped new plugin into wp-content/plugins/(slug) to fail half-way through...
* ... leaving a directory in wp-content/plugins/(slug) that's only half-populated
* If the file with the plugin header was not one of the files that got copied in (i.e. the abort happens before reaching that file), then the plugin no longer shows in the ""Plugins"" page in the dashboard.
* Problem: user can't de-install the plugin from their dashboard - but attempts to re-install also fail, as the directory wp-content/plugins/(slug) already exists, which WP will complain about.
Unless the user has a high level of skills, at this point he is stumped, and raises a support request - usually with the plugin supplier.
I'm not sure of the exact conditions for this, as I can see in wp-admin/includes/class-wp-upgrader.php that the destination is cleared first, which in theory should create enough space for copying over the new version. However, the new version could be bigger than the old. I've also seen this inconsistent state left when the copy fails for no obvious cause (succeeds on a second attempt, after clearing out the inconsistent state).
To be clear: the real problem is that the update process is not sufficiently atomic. It's too easy for the filesystem to be left in an inconsistent state where the user can neither remove, nor re-install, their plugin without resorting to either FTP or expert skills (e.g. a file manager plugin). Basically, each time we make a new release of UpdraftPlus ( https://wordpress.org/plugins/updraftplus, 500,000 installed users ), I estimate we're likely to handle this support request half-a-dozen times. Multiply that by all the plugin downloads in the WP directory, and all the releases made in a year, and you can get a good picture of how many man-hours could be saved by finding a resolution for this.
Possible solutions?
a) One cunning/quick work-around would be if the code that copies the new plugin in could always attempt to *begin* with the file that has the plugin header. This way, it maximises the chances of that file being copied before any abort, meaning that the user will be able to see, and delete, the plugin from their 'Plugins' page, should an abort happen.
b) Instead of copying directly into wp-content/plugins/(slug), do something more atomic, e.g. use a temporary name - e.g. wp-content/plugins/.(slug).(random-or-special-string), and rename when done. The dashboard ""Plugins"" page could also be trained to recognise this pattern, so that if any such exist, it will hide the ""Activate"" link, and only allow the user to delete (so that they can fix their problem and re-install the plugin).
Thoughts? I'd love to not have to see this support request so many times
#25576 is sort-of related, in that it deals with checking disk space for core upgrades; but in my anecdotal view, I see the issue more times related to web hosting account quota, which there's no easy way to know from PHP, rather than disk space which can be easily checked with disk_free_space()." DavidAnderson
Future Releases 33574 Add ability to scroll through long toolbar menu items morganestes Toolbar 4.4 normal normal Awaiting Review enhancement assigned 2015-08-27T17:45:49Z 2022-06-24T11:55:06Z "Related to #15317, when a toolbar menu has many items, it cuts off at the window height.
We should make long menus in the toolbar (like the New... menu) scrollable by default to enhance UX." morganestes
Future Releases 33585 Improve wp_list_categories to support multiple taxonomies Taxonomy 2.3 normal normal Awaiting Review enhancement new 2015-08-28T09:43:16Z 2020-06-04T10:31:18Z "Hi folks, I was working on a plugin feature request and from what I see it's not possible to pass an array on the `taxonomy` param from `wp_list_categories`, which prevents multiple taxonomies to be fetched at once.
I wanted to know if I can work on this ""enhancement"" for version 4.4, should be an easy modification since `get_terms` is an easy replacement for `get_categories`." bordoni
Future Releases 33589 Using the customizer on wp-login.php (and similar) Customize 4.3 normal normal Future Release defect (bug) new 2015-08-28T15:16:45Z 2024-03-21T22:46:30Z "See related: https://core.trac.wordpress.org/ticket/28650#comment:19
I've been attempting to write a plugin to customize the `wp-login.php` page using the native customizer controls. So far it seems to work fine except that `postMessage` settings/controls do not update. I'm not sure why it doesn't work, as it appears that all of the customizer code is loading (maybe it isn't?), but something is getting messed up at runtime. The `refresh` setting works fine however.
Any ideas as to what might be going on? Is this something that I can help get pushed into core? Since `wp-login.php` is sometimes a vital part of some sites, it makes sense that it should be available to edit in the customizer. I'm no expert but it seems that this may just be a missing hook that needs to be added to the `wp-login.php` file?" daronspence
Future Releases 33593 Make shortcodes case insensitive Shortcodes normal normal feature request new dev-feedback 2015-08-29T00:10:16Z 2019-06-04T21:16:46Z "Right now, shortcodes are case sensitive. For example, `[thanks]Guy Incognito[/thanks]` works but `[Thanks]Guy Incognito[/Thanks]` doesn't.
For me, as a developer, it makes sense. For my writers, who have complained about `[Thanks]` and the like not working, it doesn't.
http://wordpress.stackexchange.com/questions/102375/are-shortcodes-case-sensitive shows that shortcodes are indeed case sensitive. But why? Why wouldn't the regex have the `i` modifier and become insensitive for the shortcode name itself (I'm not talking about shortcode parameters, just the name)?" archon810
Future Releases 33602 is_active_sidebar returns true when widget has been deactivated Widgets 4.3 normal normal defect (bug) assigned reporter-feedback 2015-08-30T03:10:32Z 2019-06-05T06:41:30Z "When I activate a plugin (in this case Ultimate Social Media and Share icons)
Add the widget to my sidebar area
Deactivate the plugin
The widget is no longer visible in the sidebar
BUT
is_active_sidebar still returns true" karlikdesign
Future Releases 33627 In-Context Comment Moderation Comments normal normal Future Release enhancement new 2015-08-31T17:24:33Z 2021-01-27T19:20:14Z "One of the more painful points in the comment moderation UX revolves around knowing whether or not a comment is in context. Right now, WordPress says who a person was replying to and offers a link to the frontend of that comment on replies to a comment. However, it can be quite tedious to go view the original comments a bunch of people were replying to to see if the reply was in-context.
An easy fix for this would be to offer a ""Show context"" link next to the ""replying to {name} link on replies, that when clicked, would ajax show the comment the pending comment was originally replying to. " chriscct7
Future Releases 33629 Post excerpts have become WAY too long after updating to WP 4.3, please fix. Formatting 4.3 normal normal defect (bug) new has-patch 2015-08-31T19:08:30Z 2019-06-04T19:51:08Z "I believe this is a bug in the new WP release. After updating, all my websites are in chaos because the post excerpts have become way too long and most themes were not designed to handle it. I'm not the only one to notice this:
[https://wordpress.org/support/topic/excerpts-become-full-of-content?replies=14]
One user said ""WP 4.3 seemed to have changed trunctation from '''characters to words'''.""
Here's an example of my website before 4.3:
[[Image(http://i.imgur.com/gUrUhYZ.jpg)]]
and now after 4.3:
[[Image(http://i.imgur.com/II5l12g.jpg)]]" MarineKingAizen
Future Releases 33640 Unable to add menu items to menus on Ubuntu droplet Menus 4.3 normal normal defect (bug) new reporter-feedback 2015-09-01T00:21:47Z 2019-06-04T20:15:46Z "This is a follow-up to #26047.
Although the bug has been reportedly closed, I am posting a bug report because there hasn't been an response in the support forums. This has caused my site to not be public due to the lack of a menu an the inability to add one.
My support forum post:
>I tried a local installation of WordPress 4.3 on my Windows XAMPP server where everything ran smoothly. I tried adding a custom menu using the default twentyfifteen theme and it worked flawlessly.
>
>I then followed nearly identical steps on my DigitalOcean Ubuntu droplet running PHP and MySQL and setup everything the same. But now I am not able to add anything to the custom menu. Every time I add anything (page/post/category/custom link) the message under Menu Structure changes from
>{{{Add menu items from the column on the left.}}}
>to
>{{{Drag each item into the order you prefer. Click the arrow on the right of the item to reveal additional configuration options.}}}
>
>I couldn't find any help online except a reference to a bug that was fixed in 3.8 #26047.. I can't understand why the same install works on my Windows XAMPP but not on the Ubuntu. This menu thing has been the only bug I have seen and have clean installed WordPress nearly 10 times.
I have tried repeated clean installs of Wordpress with and without any plugins." znromonk
Future Releases 33713 Customizer: allowing to set files other than image for Header background and background image Media 4.3 normal major Future Release defect (bug) new 2015-09-03T18:11:48Z 2021-05-23T18:04:08Z "When we set header background image or background image from customizer settings, media upload should not allow to upload files other than image.
We can set files other than image, and it shows broken in preview
" umesh.nevase
Future Releases 33740 Create a new API to standardize application tracing Bootstrap/Load 4.4 normal normal feature request new reporter-feedback 2015-09-05T13:10:31Z 2019-06-04T19:32:32Z "Having read #30934 and #28319, I think it's best if I raise a new requirement.
My proposal isn't about logging, it's related to problem determination tracing; the ability to dynamically activate trace logic to help someone to track down a problem.
I have been using my own solution ( a plugin called oik-bwtrace ) for a while now.
There are two dormant APIs that I need to make available at all times, even when tracing is not activated.
Since these functions are currently not available by default I've had to be careful where I use them. To circumvent the problem of trying to use an API which doesn't exist, many of my plugins have dependencies on a base plugin which supplies the dormant APIs.
Life would be a lot simpler if WordPress came with a set of dormant functions which I can rely on to exist.
This proposal is for two trace APIs. It could easily be extended to support logging.
The dormant APIs have the same basic structure
{{{
function dormant_api( easy to use parameters ) {
global $api_set_active;
if ( $api_set_active ) {
lazy_api( easy to use parameters );
}
}
}}}
In this example $api_set_active is just a boolean.
It's set to true when the API logic is activated, false otherwise.
To cater for different levels of tracing ( or logging ) we can either implement the test in the dormant API, or pass it to the lazy_api().
This solution is different from 'pluggable'.
The dormant APIs need to exist, from very early on.
The lazy APIs are provided by implementing plugins and should be implemented as pluggable.
The two APIs I really do need are currently called bw_trace2() and bw_backtrace().
I've attached the latest version of my shared library file that defines these APIs and the constants they use.
Assuming that these APIs will be required to trace WordPress core logic I feel that they need to have been defined early on in wp-settings.php
I therefore propose a new file called dormant.php which can, if the developer so wishes, be included in wp-config.php but would otherwise be loaded in wp-settings.php before load.php.
Note: It's the implementing plugin's responsibility to know when it's safe to do things.
In my implementation of a hook for the 'all' action I've used multiple strategies which involve loading my APIs in wp-config.php before wp-settings.php, using a Must-Use plugin to be able to record most hooks, but requiring a custom db.php to be able to capture everything. I can't do it before db.php since add_action()'s not available until then.
" bobbingwide
Future Releases 33773 Media, Featured Images: The media modal doesn't remember filter settings in the context of featured images Media 4.3 normal normal enhancement new 2015-09-07T21:46:15Z 2024-01-28T09:18:20Z "https://make.wordpress.org/flow/2015/09/07/media-featured-images-setting-the-featured-image-on-an-old-post-macnchrome/
A thread on #23205 discusses featured image flow through the media modal. There are requests that the filter in the media modal remember the “uploaded to this post” filter setting independently for the featured image flow.
Considerations:
* “Uploaded to this post” requires that the image be attached to a post. Images uploaded through the media modal from the editor are attached to the post, but images uploaded directly to the media library are not attached and don’t get attached later when added to a post. We could use some API for pulling images out of post content, like we do with some other media types. See related discussions on #23041 ""Images Don't Become Attached When Inserting a Gallery"" and #32622 ""Make the text of the Image delete AYS dialog clearer"".
* If no images are attached to the post, the filter should be set to show all images.
" ryan
Future Releases 33833 Quick/Bulk Edit are not visually consistent Quick/Bulk Edit normal normal Future Release enhancement reopened 2015-09-11T16:41:56Z 2020-02-10T17:48:44Z "Quick/Bulk Edit are not visually consistent between uses (posts vs. comments, for example), and have typography treatment that we don't really use elsewhere in the admin, like all-caps and italic labels. It really hasn't changed much in quite some time.
This needs some considered design treatment. Screenshots attached below." helen
Future Releases 33840 wpautop damages inline script Formatting 4.3 normal normal defect (bug) new 2015-09-12T10:54:20Z 2019-06-04T19:51:27Z "This code:
{{{
$str = '
';
echo $str;
echo ' ';
echo wpautop($str);
}}}
results in this output as seen in the page source:
{{{
}}}
The wpautop filter adds {{{
}}} twice and {{{
}}} once; adds linebreaks and hence a js error: SyntaxError: unterminated string literal
To my opinion, wpautop should NEVER change a byte between {{{}}}; neither should the script tag be wrapped in a p tag.
Wrapping the code in a {{{[CDATA[ ]]}}} block makes no difference.
This behaviour is noticed for years and is still present at version 4.4-alpha-34061" opajaap
Future Releases 33884 Move meta functions to their own files Options, Meta APIs 4.4 normal normal enhancement new 2015-09-15T17:51:10Z 2019-06-04T20:51:37Z "All the meta functions should be in their own file. Like this.
post-meta.php
comment-meta.php
user-meta.php
Related tickets: #10142 #28290" spacedmonkey
Future Releases 33940 Double spaces in term names can cause problems XML-RPC normal normal Awaiting Review defect (bug) assigned 2015-09-20T22:56:04Z 2019-08-15T06:46:02Z "Create a tag called 'test term'.
Use XML-RPC to create a post with a tag of:
{{{
test term
}}}
(two spaces). You'll get an error thrown, with the post not created:
{{{
A term with the name already exists in this taxonomy
}}}
This appears to be due to the `_insert_post` function in XML-RPC using `get_term_by( 'name', $term_name, $taxonomy );`, which is returning false - thus it tries to create the term as new, and fails.
Most other aspects of WP seem to filter the term name to strip double spaces first - is that what is necessary here? Or could the issue affect more than just XML-RPC?" smerriman
Future Releases 33972 static use of PHPMailer class results in stale state between calls to wp_mail() Mail 4.3 normal normal defect (bug) new 2015-09-23T09:57:09Z 2019-06-04T20:16:28Z "I've just been chasing down a problem since upgrading to WordPress 4.3 with mails sent via wp_mail() being sent with:
Content-Transfer-Encoding: quoted-printable
Auto switching to quoted-printable was added in the PHPMailer class which was upgraded in 4.3. The issue is that the internal state in $phpmailer is not properly cleared between calls to wp_mail(). There is an attempt to do this via:
// Empty out the values that may be set
$phpmailer->ClearAllRecipients();
$phpmailer->ClearAttachments();
$phpmailer->ClearCustomHeaders();
$phpmailer->ClearReplyTos();
But non of these methods reset the value of $this->Encoding. So if I make two calls to wp_mail() and the first one gets switched to quoted-printable the second one will be sent as quoted-printable even if it doesn't need to be.
Would it not be better to just create a new instance of PHPMailer for each invocation of wp_mail() and let the constructor take care of it?
" codebuddy
Future Releases 33975 Improve capabilities management when registering custom taxonomy Taxonomy normal normal enhancement new needs-unit-tests 2015-09-23T12:02:12Z 2019-06-04T21:17:04Z "Currently we have such caps when using `register_taxonomy()` [https://codex.wordpress.org/Function_Reference/register_taxonomy#Arguments codex]:
{{{
'manage_terms' - 'manage_categories'
'edit_terms' - 'manage_categories'
'delete_terms' - 'manage_categories'
'assign_terms' - 'edit_posts'
}}}
IMO, setting `manage_terms` to false block access to page (cheating message),
setting `edit_terms` to false displays this message: ""You are not allowed to edit this item."", which is very odd. Editing means editing, So I should not be able to use Quick Edit and Edit links (they should be hidden).
Also, I propose to add a `create_terms` capability maping - for displaying the add term form and giving ability to create them, separately from editing/deleting.
Related: #22511" slaFFik
Future Releases 34009 Need ability to query what post_type_supports values plugins and themes might use Posts, Post Types 4.4 normal normal Awaiting Review enhancement new 2015-09-25T10:11:30Z 2017-07-01T10:43:48Z "A number of plugins and themes define their own values to pass to add_post_type_support(). e.g. Jetpack's `publicize`, and the Genesis theme framework's values prefixed with `genesis-`.
I have a post type UI where I allow the user to decide which feature a post type supports. The current API does not allow me to find the full set of possible values.
`$_wp_post_type_features` only lets me find out what's currently registered.
I propose a new API `get_all_post_type_supports_features()` that invokes a filter `post_type_supports` to allow plugins and themes to return a complete list of post type supports values, along with user friendly labels.
Currently my routine returns the set I can get from `$_wp_post_type_features`
and my filter function augments it with additional options.
{{{
array (
'publicize' => ""Publicize with Jetpack""
'home' => ""Display in blog home page""
'genesis-layouts' => ""Genesis layouts""
...
)
}}}
WordPress core would respond to the `post_type_supports` filter with: title, editor, author, etcetera
" bobbingwide
Future Releases 34028 wp_safe_redirect can return admin_url() when get_admin_url() is used aaroncampbell General normal normal defect (bug) reopened needs-unit-tests 2015-09-25T20:47:48Z 2019-06-04T19:51:49Z "Setup your site like this:
WordPress Address (URL): http://yourdomain.tld/ (without www)
Site Address (URL): http://www.yourdomain.tld/ (with www)
Example code (yes I know it's stupid code, but it's a working proof-of-concept):
{{{
""comment"") )
}}}
and then below check if trackback exists and if they do print the trackbacks separately using
{{{
wp_list_comments( array( ""type"" => ""pings"") )
}}}
Now add a bunch of comments on any of your blog post which also have some trackbacks. Add more than 60 - 70 comments on that post. and from settings enable comment pagination option. So that comments get divided into several comment pages. If you are thinking this is never going to happen in real life, let me tell you I have blog posts which has more than 2.500 comments in it and none of them are spam comments.
Now, after you enable the comment pagination, visit your blog page link i.e. example.com/some-post/ and you will see the trackbacks below your comments as it should show up now start navigation through your comment pagination, you will see the following -
Trackback is showing on the normal blog post link
Trackbacks also showing for /comment-page-1/
But when you will move further from comment page 1 you will only see the heading i.e. Trackback or whatever you have set, but not the actual trackbacks. This problem is also present in genesis theme, earlier I though it was a genesis bug but while developing a non genesis wordpress there I understood that it is actually a wordpress core bug." isaumya
Future Releases 34118 Allow permalinks to spell out when certain symbols are used Permalinks normal normal enhancement new 2015-10-01T16:37:15Z 2019-06-04T20:51:58Z "Someone just pasted this link to me in IRC:
http://www.rawstory.com/2015/10/alabama-to-stop-issuing-drivers-licenses-in-counties-with-75-black-registered-voters/
whereas a more accurate URL would be:
http://www.rawstory.com/2015/10/alabama-to-stop-issuing-drivers-licenses-in-counties-with-75-percent-black-registered-voters/
Give the propensity of people to skim read things online, this would be very useful." mattlee
Future Releases 34128 Tests_Feed_RSS2::test_channel fails when WP_TESTS_TITLE contains an apostrophe Feeds normal normal defect (bug) new needs-unit-tests 2015-10-02T14:12:16Z 2019-06-04T19:52:26Z "If the site configuration contains an apostrophe in the site title, the test_channel unit fails.
{{{
1) Tests_Feed_RSS2::test_channel
Failed asserting that two strings are equal.
--- Expected
+++ Actual
@@ @@
-'Rob's Test Blog'
+'Rob's Test Blog'
}}}
The happens with either of the following configurations:
{{{
define( 'WP_TESTS_TITLE', 'Rob\'s Test Blog' );
}}}
and
{{{
define( 'WP_TESTS_TITLE', 'Rob's Test Blog' );
}}}" miqrogroove
Future Releases 34130 Thickbox previous arrow External Libraries 4.3.1 normal minor Awaiting Review defect (bug) new close 2015-10-02T15:22:51Z 2021-03-15T21:51:46Z "The previous arrow in Thickbox does not work reliably. It sometimes displays 2 images, sometimes displays just the caption.
Since that problem does not happen with the buttons, I suggest using the ""trigger"" function instead. The following code seems to work more reliably (staring at line 137):
{{{
function goPrev(){
if(jQuery(document).unbind(""click"",goPrev)){jQuery(document).unbind(""click"",goPrev);}
jQuery(""#TB_window"").remove();
jQuery(""body"").append("""");
tb_show(TB_PrevCaption, TB_PrevURL, imageGroup);
return false;
}
jQuery(""#TB_prev"").click(goPrev);
function goNext(){
jQuery(""#TB_window"").remove();
jQuery(""body"").append("""");
tb_show(TB_NextCaption, TB_NextURL, imageGroup);
return false;
}
jQuery(""#TB_next"").click(goNext);
jQuery(document).bind('keydown.thickbox', function(e){
if ( e.which == 27 ){ // close
tb_remove();
} else if ( (e.which == 190) || (e.which == 39) ){ // display next image
jQuery(""#TB_next"").trigger( ""click"" );
} else if ( (e.which == 188) || (e.which == 37) ){ // display previous image
jQuery(""#TB_prev"").trigger( ""click"" );
}
return false;
});
}}}" Eric3D
Future Releases 34136 Allow register_post_type's rewrite to remove CPT slug Rewrite Rules 4.3.1 normal normal Awaiting Review enhancement new 2015-10-02T23:20:58Z 2022-06-24T18:55:50Z "Not sure if there are reasons (outside of naming conflicts) why register_post_type's rewrite does not allow an empty value as an argument to remove the post type slug from its future post URL's.
After a lot of research and some code from @JanBeck at my wordpress.stackexchange question: [http://wordpress.stackexchange.com/questions/203951/remove-slug-from-custom-post-type-post-urls] its clear that naming conflicts between a CPT and Page type URL's are being avoided.
I propose:
{{{
'rewrite' => array( 'slug' => '', 'with_front' => false ),
'has_archive' => 'something', // will now default to false to avoid possible conflict
}}}
then proper rewrite rules should be added to allow for the removal of this CPT slug and disallow the CPT to create conflicting URLs in the future. eg publishing ones that match page URL's the same as native posts append a '-1' to a conflicting URL.
This will solve a large problem where users are trying to hack around this by creating their own rewrite rules, hacking post.php, and pre_get_posts solutions.
" BenRacicot
Future Releases 34173 Edit locking for term management Taxonomy normal normal enhancement new 2015-10-06T18:41:30Z 2020-03-26T17:06:12Z "If you give a WordPress developer term meta, they'll want to add fields to the term edit page.
If there are numerous editable fields on the term edit page, then WordPress should make sure User B's changes don't accidentally override User A's changes.
Related #32202" danielbachhuber
Future Releases 34185 "Excluding certain PHPUnit test groups results in ""Database is dead"" notice and tests terminate" Build/Test Tools normal normal Awaiting Review defect (bug) new 2015-10-07T07:35:43Z 2021-03-09T18:03:52Z "When excluding certain PHPUnit groups from the full test suite the tests fail with a ""Database is dead"" notice.
Known groups thus far:
* `phpunit --exclude-group import`
* `phpunit --exclude-group query`
{{{
$ phpunit --exclude-group import
Installing...
Running as single site... To run multisite, use -c tests/phpunit/multisite.xml
PHPUnit 4.7.7 by Sebastian Bergmann and contributors.
............................................................. 61 / 4556 ( 1%)
...................................SS........................ 122 / 4556 ( 2%)
............................................................. 183 / 4556 ( 4%)
............................................................. 244 / 4556 ( 5%)
.S........................................................... 305 / 4556 ( 6%)
............................................................. 366 / 4556 ( 8%)
............................................................. 427 / 4556 ( 9%)
............................................................. 488 / 4556 ( 10%)
............................................................. 549 / 4556 ( 12%)
............................................................. 610 / 4556 ( 13%)
.....................S....S.................................. 671 / 4556 ( 14%)
................................................S............ 732 / 4556 ( 16%)
............................................................. 793 / 4556 ( 17%)
..................................Database is dead.
}}}" netweb
Future Releases 34188 Post lockdown Editor 4.3.1 normal normal defect (bug) new 2015-10-07T10:46:43Z 2019-06-04T19:32:44Z "Assume having two users.
First user clicks on edit post and then edits and updates the post (e.g: Test Post). After updating the post the first user straight away logs out from admin area.
Now, second user logs in to admin area and navigates to the post area. The post updated by the first user (Test post) shows ""First user is currently editing the post"" notification and is in a lockdown state.
" danish.iqbal
Future Releases 34211 Ability to specify fields WP_Query can search Query 4.4 normal normal enhancement new 2015-10-08T11:59:10Z 2019-06-04T20:52:08Z "Currently the `s` parameter in WP_Query is hardcoded to only search in the `post_title` and `post_content` fields. A decent enhancement would be if you could also specify which postmeta fields it can search into as well.
Also allowing more fine-grained control so that it can search only postmeta fields and ignore `post_title` and `post_content` as well.
Something along the lines of:
{{{
's' => 'foo',
's_fields' =>'title',
's_meta_fields' => array( 'custom_field_1', 'custom_field_2' ),
}}}
`s_fields` can a string/array of either post_title and/or post_content. Setting it to false would disable searching these fields and assume you have set custom meta fields to search for instead. By default it would be `array( 'title', 'content' )`.
`s_meta_fields` can accept a string/array of postmeta field names to search for. By default it would be `false`.
A decent use case would be the [https://wordpress.org/plugins/search-by-sku-for-woocommerce/ Search by SKU for Woocommerce] plugin which resorts to writing a custom query.
I assume the only real concern would be performance." paulwilde
Future Releases 34223 Core support for image regeneration Media 4.3 normal normal feature request new 2015-10-08T20:26:48Z 2023-10-18T15:52:00Z "Making this a separate ticket from #34196 so as to not hijack another conversation.
I’d like to discuss WordPress doing image regeneration as a part of core.
Images are most often defined in themes, and when switching themes, I think it makes sense to at least offer the ability to easily regenerate images to create the images a theme expects to exist.
Similarly, if the default image sizes are changed, it’d be nice if users could regenerate images to make older images compatible to new size definitions.
I think the nomenclature for images (i.e.: medium, large) help define images well enough that regenerating an image that exists on an old post would not alter it in a way that is out of expectation.
And if we have a new image size that’s equivalent to the content width (and I’d actually argue to make that the standard insert size), it would make sense to be able to change it easily, with core, as part of a theme switch routine." krogsgard
Future Releases 34233 There is not a body class filter within the customizer. Customize 3.4 normal normal Future Release enhancement new 2015-10-09T16:23:40Z 2019-12-11T06:58:49Z "I'm hoping for a way to filter the body classes for the customizer panel.
https://core.trac.wordpress.org/browser/trunk/src/wp-admin/customize.php#L112
My particular use: I happen to have some custom controls on my widgets. I'd like to style them differently for superadmins versus other users. The rest of my application handles this as a body class, and does so in pure php via filtering.
I know that's a pretty specific use, but I do find it surprising that there's not a filter here, given how useful it is in wp-admin and the front end.
If it were to mimic admin body classes, where the classes are a new string, it would look something like
{{{
$customizer_body_classes = apply_filters( 'customizer_body_classes', '' );
?>
"">
}}}
I happen to prefer the front-end treatment, where existing classes are passed in as an array. In that case it would look more like
{{{
$classes = array_map( 'sanitize_html_class', $classes );
$classes = apply_filters( 'customizer_body_classes', $classes );
array_unique( $classes );
$classes_str = implode( ' ', $classes );
"">
}}}
I see some objections to a similar ticket here: #32623
But my request is slightly different because I'm not advocating that we re-use the admin_body_class fliter. Rather, I'm suggesting a new filter just for the customizer body class.
This is my first ticket! I would be happy to attempt to make it my first patch as well if there is traction for this enhancement." scofennell@…
Future Releases 34235 Multi selection in menu Menus 4.3.1 normal normal feature request new 2015-10-09T18:39:44Z 2019-06-04T20:16:58Z Can we have multiple selection of pages/posts/categories/ which are added in menu? So that if we have more number of things are there we can change order easily instead of selecting one by one. vir2714
Future Releases 34293 Network Admin Email description doesn't really explain what it is. Networks and Sites normal normal enhancement new dev-feedback 2015-10-13T21:18:49Z 2019-06-04T20:52:18Z "On /wp-admin/network/settings.php the field for **Network Admin Email** has this as the description:
> This email address will receive notifications. Registration and support emails will also come from this address.
By contrast, the per-site has this:
> This address is used for admin purposes, like new user notification.
I propose we change the Network Admin one to this:
> This address is used for admin purposes, like site notifications. Registration and support emails will be sent from this address.
That makes for a little more parity, and explains more clearly that emails are sent FROM this address (which has been unclear to some).
The attached patch comes in two versions.
1) As I originally proposed
2) Without the 'and support' phrase since I have no idea what we are referring to with that one." Ipstenu
Future Releases 34296 Autoplay for more than one self-hosted video fails Media 4.3.1 normal normal Awaiting Review defect (bug) reopened 2015-10-14T10:05:48Z 2017-07-05T20:12:26Z "Hi,
When adding more than one self-hosted video to a page (using the [video] shortcode or media browser to insert), if you set more than one to autoplay, then none of them autoplay.
This might be a mediaelementjs problem.
Stock 4.3.1 install with TwentyFifteen:
http://test.10degrees.uk/one-video-autoplay/ - one video set to autplay, works fine.
http://test.10degrees.uk/two-videos-autoplay/ - both videos set to autoplay, neither plays.
These are both mp4 files.
Jonny" jonnyvaughan
Future Releases 34297 "Passwords containing ' or "" via wp_set_password() break login via wp-login.php" Users normal normal enhancement reviewing needs-docs 2015-10-14T11:07:22Z 2020-09-20T13:01:55Z "We are using custom plugins to have the user reset their passwords. Internally all that is done boils down to the following code:
{{{
wp_set_password('Test""123', 1);
// alternative test
wp_update_user([
'ID' => 1,
'user_password' => 'Test""123'
]);
}}}
Doing this the password gets successfully changed inside the database.
Trying to login on wp-login.php now with the new password results in: ""ERROR: The password you entered for the username admin is incorrect""
Login however still works using wp_signon().
I don't know what's going on there or where the differences are but surely this can't be intended behavior that we're not supposed to set passwords using ' or "" via wp_set_passworod(), can it?" manuakasam
Future Releases 34316 User status inconsistent between single-site & multisite Users 1.5 normal normal Awaiting Review enhancement new needs-unit-tests 2015-10-15T19:00:15Z 2017-09-27T15:30:10Z "The way a user's status is defined in WordPress differs between single-site and multisite:
* In single-site, the `user_status` column is used
* In multisite, there are two additional columns for `spam` and `deleted`
Not only this, but the `update_user_status()` function is multisite only, and the `user_status` column is an integer without an API to help announce what values equate to what results.
On the plus side, user statuses aren't really ever used in core. Marking users as spammers in multisite installations is the only real benefit of this feature as it exists today. I'd like to propose the following:
* Stop creating the the `spam` and `deleted` columns in `wp_users` on new installations
* ALTER the `user_status` column from `INT(11)` to `VARCHAR(20)` ala `wp_posts`
* A bevy of `wp_register_user_status()` like functions to introduce bonafide support for them
* A database upgrade routine to move user status `0` to `active` and `1` to `spammer`
* A new index on the `wp_users` table for the updated `user_status` column type. We may need a few, based on how users are commonly queried in core, BuddyPress, etc...
* Update the `WP_User` and `WP_User_Query` classes to suss out any `user_status` inconsistencies
A few considerations worth noting:
* Large installations would need to manually perform these DB upgrades. I'm embarrassed to say I've personally frozen WordPress.org for several minutes years ago by missing a `DO_NOT_UPGRADE_GLOBAL_TABLES` check on the `wp_users` table
* Several plugins use their own values in the `users_status` column, assuming their numeric ID is unique and special. The authors of these plugins would need notifying, and their code updating to support the above ideas
* This work *could* parlay into the Post Status API that's on infinite back-burner. There are some really excellent ideas floating around about how `post_status` could work that would translate nicely to users, too" johnjamesjacoby
Future Releases 34322 set_transient and get_transient don't seem to be working for some users since WP 4.3 Options, Meta APIs 4.3 normal normal Awaiting Review defect (bug) new 2015-10-16T04:07:34Z 2017-04-06T17:08:22Z "I'm the developer of a social media plugin which relies on the WordPress set_transient and get_transient functions to temporarily cache data in the user's database. Since the WordPress 4.3 update, we've had reports of the cache not clearing automatically as it should, meaning that the transients aren't expiring correctly in the database. This seems to only be happening on some servers as I haven't been able to replicate the issue on my own test site, but have confirmed it on user sites, and looks like it could be related to [https://make.wordpress.org/core/2015/07/30/get_transient-is-now-more-strict-in-4-3/ this thread]. The same problem seems to be happening to other developers of similar plugins, and I've had some users report that other unrelated WordPress plugins they're using are also not automatically updating either any more, which I'm assuming is caused by the same issue. I've been able to confirm the problem on user sites by using a page template containing the following basic code. I've commented it to explain what it does and can provide a Facebook Access Token privately if needed, although I included a link on how to obtain your own. The transient set using the script below should expire every 30 minutes and then the script should check the URL again for new data, but it doesn't unless I delete the transient manually.
{{{
';
//Show the date the data was last updated from Facebook
echo 'Last updated: ' . json_decode( json_encode($transient) )->headers->date;
} else {
//No transient in the database - get the data from Facebook
$facebook_data = wp_remote_get( $url );
//Cache the data in the database
set_transient( 'test_transient_expiration', $facebook_data, 1800 );
echo 'Got the data from the URL ';
//Show the date the data was last updated from Facebook
echo 'Last updated: ' . json_decode( json_encode($facebook_data) )->headers->date;
}
?>
}}}
I was in two minds whether to report this as a bug as I've never reported one before, however it definitely seems like this could be a bug as the above code should work, but doesn't on some user's sites. I use code very similar to the above in my plugin and nothing has been changed in that code, but users started reporting an issue shortly after the WordPress 4.3 update was released. Through reading the change logs for the 4.3 update I know some changes were made to transients and so I'm wondering if that's what caused this problem.
Sorry for the long post!
John" smashballoon
Future Releases 34335 URL shorteners ( redirects) should to be supported by the embed handling for couple of hops Embeds 2.9 normal normal Future Release defect (bug) reviewing 2015-10-16T22:35:15Z 2023-05-29T10:40:57Z "It should be possible to use URL shorteners ( redirects) to load embeds.
I have been testing the new embeds feature and have found that a Bit.ly link doesn't work, but the resolved link does
I believe we should support at least one hop if not two
" pbearne
Future Releases 34367 Image Editing: Orientation-aware rotation icons Media normal normal Future Release enhancement reviewing 2015-10-20T05:38:51Z 2019-06-04T20:17:04Z "Having just processed a massive set of images and needing to rotate several of them, I noticed a small issue with the way the WordPress image editor's rotation icons work. They're generally much better than the standard rotation arrows you'd normally see, providing a visual of an image being rotated one way or another from portrait to landscape. But if you're looking at a landscape image that needs to rotate one way or the other, it's somewhat disorienting trying to decide which button to push, since you're essentially rotating it one more time past the orientation indicated in the icon. By contextually adjusting these icons to reflect the orientation of the image in the editor, we could eliminate an extra cognitive step during the image editing process (see proposed screenshots).
Probably the easiest way to go about fixing this would be to add a class for the image's orientation somewhere in a container div, then add some css to rotate these buttons when the image is already landscape, so that they indicate that clicking would make them rotate into portrait orientation." celloexpressions
Future Releases 34372 Password reset link invalid for user names containing blanks Login and Registration 4.3.1 normal normal Awaiting Review defect (bug) new reporter-feedback 2015-10-20T18:35:44Z 2021-01-12T21:56:43Z When a user name contains a blank, resetting the corresponding password. The URL in the reset email will contain a blank, at which point the link will be interrupted. ditler
Future Releases 34390 Gallery - images order Gallery 4.3.1 normal normal defect (bug) new 2015-10-21T16:55:11Z 2019-06-04T19:52:47Z "I already asked here, but nobody answered:
https://wordpress.org/support/topic/media-manager-shuffle-images-all-the-time?replies=10
Seems as it is a bug, or oversight because you maybe dont test this real life scenario case. I know now what triggers this problem, did not know when asked in this topic.
Some short info:
- Have this problem in 1-2 years.
- Installed new and clean Wordpress (to exclude my code lines or plugins)
- Default theme, no plugins, no custom code in functions.php, no custom code in wp-config.php, .htaccess.
How to trigger problem:
- Add new post.
- Open media manager and insert many images (In my case was it 280 images uploaded at once. I make multiple galleries on separate subpages to reduce page load). But for your test you can have maybe 100 images uploaded in this post, not so important.
- When uploading finished you will see that all images are sorted in perfect order.
- Just for clean test close modal box and open it again Add Media and chose Create Gallery.
- Images are still sorted in perfect order.
- Go to the first image media manager uploded in this batch. In my case as it was clean installation it was image first at the bottom (but you get it).
- Now comes part how you trigger glitch/bug.
- If you mark first uploaded image and hold Shift arrow on keyboard, and if you CLICK ONLY ONCE at last image you want in your gallery, sorting in gallery (backend and frontend) is still perfect and OK.
- But, if you hold Shift key and keep clicking on row after row (to be able to see number of images in gallery at the bottom bar ""#No selected""), then problems comes and seems as JS code is confused and shuffle many images.
- Problem will be visible in next modal window where you chose gallery settings, in post self and on the front.
Shift and click on last image wished in gallery = perfect order.
Shift and click several time around before you decide what to mark = shuffled images.
[[Image(http://s7.postimg.org/4o50g6cpn/2015_10_21_184256.jpg)]]
[[Image(http://s17.postimg.org/t0c4blrin/2015_10_21_184859.jpg)]]
[[Image(http://s9.postimg.org/4msb88s9r/2015_10_21_185039.jpg)]]" Stagger Lee
Future Releases 34412 Problem with äö characters in Roundcube emails Mail 4.3.1 normal normal defect (bug) new reporter-feedback 2015-10-23T09:38:22Z 2019-06-04T20:17:14Z "HI There,
I have the latest WP 4.3.1. On it, I have cost-calculator plugin in my site and I am facing similar issue with äö characters than in ticket: #31566 ( in Thunderbird and Roundcube emails)
I didn't quite understood how to solve this problem. What should I now do to fix this problem?. my client have one of those emails systems that get bad messages from their site.
The plugin provider says they have not use anything special apart from built it WP api.
Plugin provider mentioned that this issue was suppose to be fixed from WP 4.2+/
Any help would be nice." memmuli
Future Releases 34419 Update Pingback Processing Code Pings/Trackbacks normal minor enhancement new needs-unit-tests 2015-10-23T21:36:25Z 2019-06-04T20:52:31Z "Related to #34141, which would pass the retrieved pingback source to preprocess_comment and comment_post for additional processing, pingback_ping currently strips all content from the source as part of its processing.
Suggesting that specifically:
1. Sanitization be done using core sanitization functions(wp_kses, etc)
2. The code that returns relevant errors(URL not found, etc), be processed ahead of anything else.
3. The older code that duplicates the functionality of url_to_postid noted as FIXME be removed. If there really is another difference, that should be an enhancement to url_to_postid.
This, combined with the enhancements in #34141, would allow moving toward improving linkback presentation(#32653), which is a long term goal." dshanske
Future Releases 34435 Creating a post might fail during fall's DST switch due to ambiguous time Date/Time normal normal Future Release defect (bug) new needs-docs 2015-10-25T00:53:55Z 2019-05-30T06:24:04Z "When I use `wp_insert_post()` to create a post when `timezone_tz` is `Europe/London` [https://github.com/danielbachhuber/year-ago-today/blob/master/year-ago-today.php#L25-L32 ref], the post gets scheduled for the future.
`$post_date` is established here: https://core.trac.wordpress.org/browser/tags/4.3/src/wp-includes/post.php#L3272
Because `$post_date_gmt` isn't supplied, it's set here: https://core.trac.wordpress.org/browser/tags/4.3/src/wp-includes/post.php#L3292
However, `get_gmt_from_date()` returns the same value as its supplied, when it should return an hour less (as Europe/London respects DST). `gmdate()` returns the proper GMT date (one hour less) so the post gets forced to `future` [https://core.trac.wordpress.org/browser/tags/4.3/src/wp-includes/post.php#L3310 ref]
Here's debug of `get_gmt_from_date()`:
{{{
format( $format ) . PHP_EOL;
// 2015-10-25 01:23:08
$datetime->setTimezone( new DateTimeZone( 'UTC' ) );
echo $datetime->format( $format ) . PHP_EOL;
// 2015-10-25 01:23:08, but should be 2015-10-25 00:23:08
}}}
Is this a bug in PHP, or how we're using `DateTime`? Tested on PHP 5.6.14, 5.5.9, and 5.5.27" danielbachhuber
Future Releases 34465 Uploader in Media Modal Not Working When Certain Library Arguments Present Media 4.0 normal normal Awaiting Review defect (bug) new 2015-10-27T13:32:55Z 2017-09-18T00:16:15Z "I noticed this bug while working on a plugin that deals with the media modal. I'm using the following code to create a media modal on a button view:
{{{
function frame(){
// Destroy the previous collection frame.
if ( this._frame )
{
this.stopListening( this._frame );
this._frame.dispose();
}
this._frame = wp.media( {
className: 'media-frame rwmb-media-frame',
multiple : true,
title : 'Select Media',
library : {
type : 'image',
},
frame: 'select',
} );
//Event stuff goes here
this._frame.open();
},
}}}
The issue is when uploading a file using the upload tab in the media modal. The file uploads but it never appears in the Media Library tab like it does in the core media modal used by the editor. The side Attachment Details panel shows the file information but the file itself doesn't appear on the grid. Attached is a screen cap from a user of the plugin. " Funkatronic
Future Releases 34466 wp_register_form, wp_lost_password_form function Login and Registration 4.4 normal normal Awaiting Review feature request new dev-feedback 2015-10-27T14:48:11Z 2017-02-22T09:57:13Z "Hi,
We currently have a wp_login_form function to display the login form, however, we do not currently have an opposite for the registration form.
'''Should look into:'''
wp_register_form
wp_lost_password_form
" atomicjack
Future Releases 34467 Media Library after removing bulk removing all images on page Media 4.3.1 normal normal defect (bug) new 2015-10-27T15:13:52Z 2019-06-04T20:17:20Z In the Media Library if you go to say the last page and bulk delete all the images, you will be 'stuck' on that page - pagination is removed despite there still being previous pages in the library that I could be brought back to. sorensenss
Future Releases 34542 Permalink settings page should offer a filesystem API based way to save .htaccess Permalinks normal normal Future Release enhancement new 2015-11-01T10:06:30Z 2020-07-02T17:50:02Z Right now if .htaccess is not writable from PHP, the user is presented with the rules he should manually copy&paste into the file. There is no real reason to sent the user at that point to launch his FTP software to do something that in most cases can be done via the filesystem API. The filesystem API is both faster and most likely less prone to user mistakes. mark-k
Future Releases 34552 Remove default post format setting Post Formats normal normal Awaiting Review enhancement new 2015-11-02T06:16:58Z 2017-04-24T20:01:48Z "It doesn't matter why, but it seems to me that there isn't any real theme support for post formats (real = post formats are actually displayed in a vastly different way than standard), therefor I doubt anyone actually uses the default post format setting or needs it.
The default should most likely be standard with a filter to override it, I don't think there is a need to anything more complex than that with the way the feature is actually being used." mark-k
Future Releases 34555 superscript in url Permalinks normal normal defect (bug) new dev-feedback 2015-11-02T10:39:17Z 2019-06-04T20:53:06Z "If you have a superscript in the post title and selected post-name structure for permalink, it creates a slug as in the image: http://prntscr.com/8y3wsc
" sabrisahincan
Future Releases 34567 Improve HTML5 support in frontend General normal normal Awaiting Review enhancement new close 2015-11-03T11:52:42Z 2020-09-04T14:28:15Z "With this ticket I'd like to discuss about HTML5 support in WordPress. While theme authors are able to add support for HTML5, only some parts of WordPress respond to that appropriately. We have several components (like gallery, search form etc) which can be printed in HTML5 if needed, but then there are lots of other areas which are not printed in valid HTML5.
I would like to know if there is any particular reason that this has not been improved yet or if it's simply something that no one has taken a deeper look into yet.
Some areas that could be improved are:
* the `checked()`, `selected()` and `disabled()` functions (boolean attributes don't need values)
* link, style and script tags in `WP_Styles` and `WP_Scripts` (type attributes not needed, CDATA not needed, link tags shouldn't have a self-closing slash at the end)
* meta and link tags hooked into `wp_head` (no self-closing slash)
* all img tags generated (no self-closing slash)
The above are probably just a fraction of what could be adjusted. I've always used some custom mu-plugin to address this issue and have valid HTML5 in more locations, but it would be great if Core supported it out-of-the-box.
Of course all HTML code should only be changed if the theme has declared `'html5'` support. An important thing to think of here would be whether small things like those above actually need to exist as individual arguments in `add_theme_support( 'html5', $arguments )` or if simply adding general support for HTML5 is enough to adjust them.
I'd be glad to work on this enhancement if it was approved for core." flixos90
Future Releases 34591 "BugFix to WP_Scripts::do_item(), remove doubled ""//""" Script Loader 4.3.1 normal normal Awaiting Review defect (bug) new needs-unit-tests 2015-11-05T11:01:37Z 2017-02-05T09:08:07Z "Current code in `do_item()` of class.wp-script.php on line 172:
{{{
$src = $this->base_url . $src;
}}}
may produce duplicate slashes `""//""`, resulting in problems.
This might be fixed with code:
{{{
$src = $this->base_url . $src;
}}}
Currently:
* WP_Scripts contains: `""public $base_url; // Full URL with trailing slash""` and
* script-loader.php contains calls `$scripts->add()` with initial `""/""` in relative paths
Together this produces doubled slashes `""//""`. For example:
http://www.ocelovehaly.cz/ll//wp-includes/js/jquery/jquery.js?ver=1.11.3
This makes W3TC include script in minified version, but not to remove it from the original HTML.
Including jQuery twice makes LayerSlider not to work.
Please, could you bugfix class.wp-script.php on line 172?
Thank you :-)" jan.mazanek
Future Releases 34608 Add role display name to WP_Role object Role/Capability normal normal enhancement new 2015-11-06T20:32:02Z 2019-06-06T06:25:22Z "Roles have both a `name` (slug) and `display_name`. The `display_name` is saved to the database in an untranslated form, and should be translated with `translate_user_role()` before display.
I would have thought that you could get the display name of a role by first calling `get_role()` to retrieve the `WP_Role` object, and then accessing a property or method. However, the `WP_Role` objects are constructed only with the `name` and capabilities of the role. It is therefore not possible to retrieve the `display_name` directly from the `WP_Role` object.
Instead, to retrieve the `display_name` for a role, you have to call `WP_Roles::get_names()`, which returns an array of (untraslated) role display names (not the slug `name`s).
I am proposing that we introduce a way to get the display name directly from the `WP_Role` object. Possibly we could offer two properties: `display_name` with the translated display name, and `raw_display_name` with the raw display name (in case it would actually be useful for anything). I would never have known that the role display names needed special treatment for translation if I hadn't done this digging, so it would probably be helpful to newbies if the translated names were exposed in the API by default, instead of untranslated. (Related: #20764)
In the process, maybe it would be possible to clear up the difference between the name and the name, at least in the docs. Perhaps that deserves its own ticket. It really is confusing in the code though, so much so that I've had to double-check which name (the display or the slug) was the one passed to `WP_Role`. Both of them are just referred to as the name in much of the code.
This goes all the way back to [2703] when the role classes were introduced." jdgrimes
Future Releases 34649 Support for filtering constants and .htaccess message in network setup Upgrade/Install normal normal enhancement new 2015-11-10T18:18:41Z 2023-03-15T18:42:10Z "It would be helpful if there were filters to modify the suggested constants and .htaccess message in network setup.
For instance, I'd like to be able to include a switch statement to define `DOMAIN_CURRENT_SITE` based on an environment variable. Similarly, I'd like to be able to disable the .htaccess message when WordPress is running on a Nginx / PHP-FPM setup." danielbachhuber
Future Releases 34670 Default Post Format option lists formats that are not available in the theme Post Formats 4.3.1 normal normal Awaiting Review defect (bug) reopened close 2015-11-12T18:35:08Z 2021-06-16T22:30:02Z "The problem happens when you set a post format that it's not available on the theme. It actually happened with the Canard theme, that doesn't allow Video post formats. Below is the steps to reproduce:
1) Select the Canard theme
2) On Settings > Writing, change the Default Post Format to Video
3) Add a new post, it will show the Video format post selected (even if it's not allowed). Add a Featured Image and publish the post.
The Featured Image will not show on the front page. I've tested and reproduced this behavior with WP Admin and Calypso for WordPress.com and on a self hosted site. I tried different themes and post formats, but was able to reproduce only with Video format, and found only this theme that it's not allowed.
Let me know if you need any other information.
Thanks,
Carina Pilar
Happiness Engineer Trial" carina.pilar
Future Releases 34681 "Consider removing the ""Disable the visual editor when writing"" option" Editor normal normal Future Release enhancement new 2015-11-14T14:41:57Z 2019-01-08T09:51:38Z Is anyone even uses it? considering the lack of love the text editor gets I truly hope that the answer is no. mark-k
Future Releases 34683 Default .htaccess config creates rewrite infinite loops for path-based multisite installations Rewrite Rules 4.3.1 normal normal Awaiting Review defect (bug) new 2015-11-14T20:16:54Z 2020-03-27T14:11:01Z "Default .htaccess config for path-based multisite installations looks like that:
{{{
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
}}}
The problem is in these lines:
{{{
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
}}}
`?` sign makes expression `([_0-9a-zA-Z-]+/)` optional, so rule works also for request like `http://example.com/wp-config/file.png` and basicly try to internal redirect request to the same address. If file does not exist, it creates infinite internal loops that causes internal server errors.
There is no sense create rewrite rules for main site of network and site prefix should no be optional for rewrites. Correct .htaccess content should be:
{{{
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
}}}
" rob006
Future Releases 34693 Add browser-based testing and automated acceptance tests (BrowserStack) Build/Test Tools normal normal Future Release enhancement assigned 2015-11-15T23:43:07Z 2020-09-15T01:55:03Z "Automated testing in WordPress is primarily focused on PHPUnit testing, with some JavaScript QUnit tests. While the PHP tests are run against every version of PHP since 5.2, the JavaScript tests are limited to one single browser environment (PhantomJS). This has meant that browser-specific bugs have been introduced (e.g. #30781) because manual testing isn't always performed in all the browsers that WordPress supports. We should connect WordPress unit tests with something like BrowserStack to run the QUnit tests in the various browsers.
While we're at it, the unit/integration testing in PHPUnit and QUnit only take us so far in WordPress as it is. What WordPress is missing are acceptance tests that fire up an actual browser to do actual tasks that users would perform when using WordPress. Such acceptance tests would make WordPress much more resilient against regressions, and it would open up a lot of new areas for automated testing that are currently very difficult to test using unit/integration tests. For instance, the Customizer heavily uses data from both PHP and JavaScript along with Ajax requests between the two. To create unit/integration testing mocks for PHP, JS, and Ajax requests adds a lot of testing overhead and is also difficult to maintain.
I believe acceptance testing would allow much more of WordPress to be tested automatically, and it would allow tests to be written by more people.
See also https://wordpress.slack.com/archives/core/p1419407324003594" westonruter
Future Releases 34697 Password (re)set form fails when addressed as /wp-login.php/ Login and Registration 4.3.1 normal normal defect (bug) new 2015-11-16T02:47:09Z 2019-06-04T20:18:00Z "`setcookie` in resetpass uses `$rp_path` to set the path for the cookie, but does not use the same `$rp_path` when setting up the form action in HTML. This means that the cookie can be set to a path where it will not be submitted by the browser on post and thus the form will fail.
Easily reproducable by adding changing the reset password link from `/wp-login.php?...` to `/wp-login.php/?...` For some reason Firefox works (submits cookie), but Chrome and IE fail (don't submit cookie)." friedcell
Future Releases 34753 "Remove use of ""Toggle"" in strings" Administration 4.4 normal normal Awaiting Review enhancement new dev-feedback 2015-11-20T15:14:58Z 2021-08-01T11:50:10Z "Hello!
It would be nice to have WordPress stop using ""Toggle"" in strings in multiple places and contexts -- most particularly action buttons and helper text.
It's really two possible actions/behaviors, most of the time different ones depending on the context/location/result of the previous clic, and it's always a pain to translate properly (current way in French replace ""Toggle"" with the French equivalent of ""Open/Close"". Not elegant).
I could change the text, sure. But the buttons themselves, not so much. They'd need to go from displaying ""Toggle"" to displaying ""Open"" or ""Close"" depending on the current status of the target. That'd require some JavaScript wizardry.
Hence, this ticket.
Thanks!" xibe
Future Releases 34778 A better indication of action happening on buttons. General 4.3.1 normal normal Awaiting Review enhancement new 2015-11-24T15:01:01Z 2020-03-16T18:34:19Z "It's from UX point of view - every single action button that when clicked the page is being refreshed or loads another has no clear way of showing this. A quick example can be the site setup process.
When you click submit for example, a simple blue shadow appears that show that something is happening, but this blue shadow is not very obvious (on a blue button) and is very similar to ""focus"" outline as default behaviour for buttons. I personally suggest one of two options:
One - gray out the button but still keep it clickable, that will show that the click has triggered something, but will also allow the user to click a second time which will deal with the case of having connection problems in the middle of request, where you can resend the settings once more without refreshing the whole page.
Two - same as before, but instead of making the button gray (or do) add small rotate dashicon to visually represent action.
The main reason i report this is because many times when i setup the site or work on the dashboard, clicking a button doesn't really show anything and i think for some reason i haven't clicked it or nothing is happening. Its purely for UX and to me it's not a small thing" xavortm
Future Releases 34800 Canonical 301 redirects go to request origin instead of site_url Canonical 4.3.1 normal normal defect (bug) new reporter-feedback 2015-11-27T11:48:52Z 2019-06-04T19:33:12Z "I have a problem with canonical redirect using a CDN setup.
Let's say we have an origin server at `origin.example.com`, and the CDN at `www.example.com`.
When I request `https://www.example.com/page-x`, it redirects me to `https://origin.example.com/page-x/` instead of `https://www.example.com/page-x/`, altough both `site_url` and `home_url` are set to `https://www.example.com`.
I suspect that Wordpress doesn't use `site_url` when composing the redirect URL, it's just using the request URL with a trailing slash added (which is in fact `https://origin.example.com/page-x` as the CDN translates the request).
The expected behaviour would be to either:
* use the correct absolute URL in the header, like `Location: + `
* use a relative URL, like `Location: `
I also checked the Redirection plugin, which returns relative URLs in the 301 redirects, and those work fine with my setup.
Thanks for looking into this!
Sevcsik
" sevcsik
Future Releases 34822 Post name permalinks problems Permalinks 4.3.1 normal normal defect (bug) new dev-feedback 2015-12-01T16:41:16Z 2019-06-04T20:53:19Z "
When using the ""post name"" permalink options and creating/deleting duplicates it can happen that the links get confused and the correct permalink doesn't work anymore. (page not found)
The workaround shows a little more of this strange behaviour. If you change the link of the old page to blog/pagename-2, create a new one (with changing the link to the correct/old one if necessary), and delete the old one, the permalink blog/postname works, but redirects to blog/pagename-2.
Something gets mixed up there...
---
To add another workaround that we've tried to fix it: If one changes the permalink setting to standard, the post show up as normal, but when changing the settings back (to ""article name""), the problem persists/reappears. The permalinks do not seem to be freshly generated but rather to somehow half-and-half rely on old and new setting, very weird. " stevenbauers
Future Releases 34852 fix broken re-auth loop (due to expired session) Security 4.3.1 normal normal Awaiting Review defect (bug) new 2015-12-06T04:04:26Z 2019-06-04T18:12:28Z "Happened today. Was writing a post. A lightbox popped up saying my session was expired. Filled in my creds, submitted and got a 406 error. Tried closing the lightbox - it just popped up again. Tried submitting again. Eventually, had to login into the admin area in a different tab, and only then the login lightbox stopped popping up.
What scares me is there wasn't even an option to save my edit. Luckily nothing got lost." rothschild86
Future Releases 34924 Network upgrade fails on tls 1.2 only servers HTTP API 2.7 normal normal Awaiting Review defect (bug) new 2015-12-09T01:37:03Z 2018-07-16T19:56:09Z "Setup:
Nginx 1.9.7 on Centos 7.1 with cURL 7.29
SSL configured with 'ssl_protocols TLSv1.2' only because Firefox does only accept TLS 1.2 for http/2
Symptom:
After upgrading from WordPress 4.3 to 4.4 the network upgrade fails with error message:
'Your server may not be able to connect to sites running on it. Error message: TCP connection reset by peer'
Test:
Setting 'curl_setopt ( $handle, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1 );' in WP_Http_Curl::request solves the issue
This is definitely an issue with older cURL versions. cURL 7.45 works well as reported by @dd32.
Suggestion:
Conditionally set CURLOPT_SSLVERSION if the first connect over https fails.
Hint:
Since WP_Http_Curl has been introduced in WordPress 2.7.0 I guess all version since 2.7.0 are affected.
" mensmaximus
Future Releases 34934 Suppress preg_match() and urldecode() errors in WP::parse_request(). Query 4.4 normal normal defect (bug) new reporter-feedback 2015-12-09T14:38:01Z 2019-06-04T20:53:31Z "Error en la fila class-wp.php
207 - 208
Aqui lo arregle asi
{{{#!php
if ( @preg_match(""#^$match#"", $request_match, $matches) || @preg_match(""#^$match#"", @urldecode($request_match), $matches) ) {
}}}
" entreosos
Future Releases 34957 #a11y-focus: Standardizing the handling of :focus and :hover adamsoucie Administration 4.4 normal normal Future Release enhancement assigned 2015-12-09T23:47:22Z 2019-05-06T16:06:43Z "After the discussion of [ticket:34876] with @mor10 and @michaelarestad, we've realized there are two main cases:
* Times when the :focus and :hover states can be the same
* Times when they need to be different
In order to tackle the general :focus problem we'll need to:
1. Define which elements fall into which category
1. Establish a standard implementation for each category
1. Implement the new standards
This could quickly evolve into a larger project, but we want to start resolve the :focus/:hover to make sure that gets addressed. This ticket is intended to start the conversation and put the attention on :focus.
This is an important a11y issue, as [ticket:34876] shows there are still elements that lack a :focus state completely. As part of this plan, we'll identify those elements lacking :focus and address both the lack of :focus and the correct implementation at the same time." adamsoucie
Future Releases 34972 Permalink for unattached media same as a post Permalinks 4.4 normal normal Future Release defect (bug) new needs-unit-tests 2015-12-10T11:53:16Z 2018-12-17T21:55:36Z "First step - upload media ""tralala.jpg"" I got pretty link example.com/tralala/
Second step - create a post with Title ""Tralala"" it creates post with slug example.com/tralala/ this works.
So post with the same title as unattached media filename creates the same permalink - slug as already exists for unattached media.
In this case, unattached media is unreachable as permalink point to new post with the same slug." petercralen
Future Releases 34991 Introduce a typographic measure for the admin screens Administration normal normal Future Release feature request assigned 2015-12-10T22:03:26Z 2020-11-12T12:14:16Z "For optimal readability, lines of text shouldn't exceed a certain length. In typography, this is called [https://en.wikipedia.org/wiki/Measure_(typography) measure] and looking around for references you will find several (different) recommendations, starting from 45-50 characters per line till 90 or even more.
By the way, there's no such a thing as an absolute, perfect, number to fit all the different cases. It depends on many different factors, starting from the typeface used, its metrics, if it's a single column or multi-column layout etc.
That said, when a line of text is really, really, too long, then readability, usability, and accessibility, they're all seriously affected.
I'd like to encourage typography lovers and designers to start some discussion, research, and development with the long-term goal to improve typography in the admin screens. Trying to implement a ''measure'' could be a nice start.
Also, I'd like to propose to consider the introduction of a new ""typography"" focus tag for Trac.
In the screenshots below: a couple examples of some admin screens rendered on a large display with the browser's window maximized.
[[Image(https://cldup.com/Lqn6W2CVsy.png)]]
[[Image(https://cldup.com/CV2JcdQI1w.png)]]
" afercia
Future Releases 35077 Post featured image: image attributes not updated on the fly Media 4.4 normal normal defect (bug) new 2015-12-14T15:31:40Z 2019-06-04T20:19:41Z "Noticed while investigating on #35076.
When a post has a featured image, users can click the image to set a new featured image or edit the current one. When editing the current image attributes, changes are not reflected live in the UI after the image is inserted again.
To reproduce:
- edit a post with a featured image
- click on the featured image
- in the media dialog, update the current featured image alt attribute
- click the button ""Set featured image""
- check the featured image in your console inspector: the alt attribute is not updated
Looks like the AJAX action `wp_ajax_set_post_thumbnail` takes into account only the ""set"" and ""delete"" cases, there's nothing to handle an update.
Additionally, when removing a featured image '''and''' there's some error and the response is `0`, `WPRemoveThumbnail` should trigger an alert with a message but `setPostThumbnailL10n` is undefined (the related `set-post-thumbnail` script is not enqueued at all, I'm guessing it was used in the old media uploader)." afercia
Future Releases 35082 get_adjacent_post() when using in term doesn't account for child terms Posts, Post Types normal normal enhancement new 2015-12-14T21:05:29Z 2019-06-04T20:53:35Z "When using any of the next or previous post functions with $in_term set to true only top level terms are accounted for. This means if two posts are in the same child term, and a third is not but is between the posts date range then the third will take precedence.
Although I am sure it will be up for discussion, I believe child terms should take priority.
Take the following posts for example:
'''Post 1'''
Date: 01/01/2015
Categories: Parent -> Child
'''Post 2'''
Date: 02/01/2015
Categories: Parent
'''Post 3'''
Date: 01/01/2015
Categories: Parent -> Child
'''Expected Functionality (In my opinion):'''
Post 1 get_adjacent_post(true) should return Post 3
'''Actual Functionality:'''
Post 1 get_adjacent_post(true) returns Post 2, which does not match the child term.
My attached patch simply removes parent terms from the query, where a child of it is set. This means that only the deepest selected terms will be used, where children and parent terms are set.
I have also attached an export of my posts to highlight the issue more clearly, along with a patch to Twenty Fifteen purely to help represent the issue.
This really is just an initial draft suggestion for the code, backwards compatibility is obviously extremely important however more discussion about this is needed. There is another issue related to this function involving dates .
Sorry if this should be tagged as an enhancement rather than a bug." WazzaJB
Future Releases 35085 "Image editor not cropping correctly when image size is the same as ""Large Size"" in media settings" Media 4.4 normal normal defect (bug) new 2015-12-14T22:49:02Z 2019-06-04T20:19:52Z "This issue was reported as an issue for the plugin Imsanity here: https://wordpress.org/support/topic/imsanity-breaks-the-image-editor?replies=10
However, after research, it appears this behavior happens regardless of the plugin. A video demonstrating the error is at: https://www.youtube.com/watch?v=3a6UbuPrlmU&feature=youtu.be
To reproduce:
1. Ensure media settings for ""Large Size"" are set to 1024px
2. Upload a landscape image with a width of exactly 1024px to the media library
3. Click the ""Edit"" button to edit the image, and use the crop tool to make an obvious change. The image will appear to have been cropped at this point
4. Click the ""Save"" button and now the image will no longer appear to be cropped
The image now seems to be in an unknown state where the preview shows the un-cropped version, but in the editor the crop shows correctly.
" verysimple
Future Releases 35094 Replace static with Dynamic Image Sizes for inserted images Media normal normal Awaiting Review enhancement new 2015-12-15T02:27:38Z 2018-08-16T20:36:21Z "== Proposal ==
Change the behavior of the add image size selector from hard-coding `width` and `height` attributes to adding size-based classes to the `` element to allow theme authors to define what Thumbnail, Small, Medium, and Large means. This creates Dynamic Image Sizes that change and adapt when a site owner switches from one theme to the next.
=== Practical Implementation ===
- Create new theme feature for dynamic-images
- When an image size is selected (eg. ""medium""), the a class formatted as `size-[selected-size]`, (eg. `size-medium`) is added to the `` tag.
- Theme developers add CSS rules for `.size-thumbnail`, `.size-small`, `.size-medium`, and `.size-large`. These rules can define whatever parameters the theme developer desires, but must include either `width`, `max-width` or both. Theme developers are also free to use media queries to change this behavior depending on viewport width.
- '''Ideal, optional:''' Remove the `width` and `height` attributes from `` markup as they serve no practical purpose once RICG and class-based sizing is implemented.
== Rationale ==
With Responsive Images in core, the modality of the image size selector no longer makes sense. The image size selector hard-codes pixel sizes to images added in posts and pages based on the physical width and height of the image file, but with the new srcset + sizes markup, these image sizes no longer have a real world rationale as the browser selects the image source dynamically.
I propose a change in what happens when an image size (thumbnail, small, medium, large, original) is selected from a pre-defined pixel size to a dynamic size defined by the current active theme.
This would allow theme designers and developers to add image sizes as part of their art direction and design, and displayed image sizes would change depending on the current active theme without the site owner having to make changes to individual images to make them fit.
In simple terms, move from this:
[[Image(http://mor10.com/wp-content/uploads/2015/06/Slide1-700x394.png)]]
to this:
[[Image(http://mor10.com/wp-content/uploads/2015/06/Slide2-700x394.png)]]
== Backwards Compatibility ==
This has the potential of being a breaking change. The most obvious solution would be to make dynamic image sizes a `theme feature` along the lines of html5 comments and title-tag:
{{{ add_theme_support( 'dynamic-images' ); }}}
== Practical Application ==
This change would work within the existing framework of how WordPress adds images because the only practical change in the actual post/page is the addition of a new class in the `` tag.
To apply to existing posts and pages, the classes could be added by piggybacking off the dynamic rewriting of the `` element done by Responsive Images.
== Challenges ==
- Some authors physically resize images to fit a specific display. This in itself is a problem because it counteracts the responsive nature of the web, but it is a fact that must be considered. An implementation of Dynamic Image Sizes could cause some authors to be frustrated that their carefully sized images suddenly change display. This would likely only happen on old static-width sites as properly built themes with RWD would already override such forced sizing except for the full-width versions of images.
- Currently an author can use click-and-drag behaviors to resize an image in the editor. This would be hard to replicate using the proposed CSS model, but is not impossible: One solution could be generating inline CSS for custom image sizes, and possibly adding a .size-custom class to the `` tag. Another clearner option could be to remove the click-and-drag resizing option and instead provide percentage-based options. When discussing this it is important to note that such forced click-and-drag resizing goes against the natural behavior of images in a mobile-first RWD environments." mor10
Future Releases 35109 Add Online DDL support to dbDelta Database normal normal enhancement new needs-unit-tests 2015-12-15T22:24:20Z 2019-06-04T19:33:19Z "Since MySQL 5.1, a bunch of table level operations can be done in an asynchronous manner.
We can add support for this by adding `ALGORITHM=INPLACE` to the `ALTER TABLE` query, but the fun part is that this algorithm isn't supported for all types of operations.
So, we have a couple of options:
* Keep an array of what operations can be done online in each MySQL and MariaDB version, which will need to be updated for each new version of MySQL.
* Try all `ALTER` queries with the algorithm flag, then catch any SQL errors and fall back to the old style if needed. This will need careful testing with old versions of MySQL, particularly.
https://dev.mysql.com/doc/refman/5.7/en/innodb-create-index-overview.html" pento
Future Releases 35127 Allow wp_nav_menu() function to add container attributes, including Schema.org structured data Menus 4.4 normal normal Awaiting Review enhancement new 2015-12-17T00:06:34Z 2017-03-07T15:29:38Z "I'd like to propose an enhancement that would improve the flexibility of the `wp_nav_menu()` function to allow additional attributes to be added to the `