Commit Graph

3481 Commits

Author SHA1 Message Date
Weston Ruter
ab7d1ae62d Customize: Prevent showing "Front Page" and "Posts Page" states for pages in list table when show_on_front is not "page".
Changing the `show_on_front` option back to "posts" also resets the `page_on_front` and `page_for_posts` options when updating via the Reading settings page. In the Customizer, however, this is not the case as these other options remain unchanged. This change accounts for this difference in behavior.

Fixes #34004.


git-svn-id: https://develop.svn.wordpress.org/trunk@34605 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 20:53:32 +00:00
Dominik Schilling (ocean90)
5da80b3d64 Plugins: Don't request all fields via plugins_api( 'plugin_information' ) for plugin installs and update checks.
The Plugins API returns a lot of data by default (see [34596]) but when installing or checking for updates we don't need all of it. To save bandwidth, memory and time request only required fields.

Fixes #34030.

git-svn-id: https://develop.svn.wordpress.org/trunk@34598 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 15:49:06 +00:00
Drew Jaynes
de8abd004f Docs: Add much-needed (and awesome) hash-notation-style documentation for the $args parameter in the plugins_api() DocBlock.
Also fixes up some formatting in the DocBlock summary and description, and adds a link to the function reference, where supplementary information on return object structs and formatting will live.

Props ocean90.
Fixes #34035.


git-svn-id: https://develop.svn.wordpress.org/trunk@34596 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 15:12:51 +00:00
Sergey Biryukov
5569780f8a Replace a stray semicolon on Edit Page screen with a full stop.
Props manolis09, sjmur.
Fixes #33297.

git-svn-id: https://develop.svn.wordpress.org/trunk@34594 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 13:43:31 +00:00
Drew Jaynes
11e0b8d0b0 Docs: Fix a minor typo from [34592]. Meant to be past-tense, not present.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34593 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 13:13:50 +00:00
Drew Jaynes
b68ae42ddd Docs: Add missing parameter documentation for $profileuser in the hook doc for show_password_fields, added in [11302].
Also adds a changelog entry for when the parameter was introduced.

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34592 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 13:10:47 +00:00
Sergey Biryukov
411f0f126e Network Admin: Properly pass the number of delete plugins to the corresponding message.
Fixes #33239.

git-svn-id: https://develop.svn.wordpress.org/trunk@34591 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 13:10:05 +00:00
Drew Jaynes
35837a00b7 Docs: Relocate the hook doc for the show_password_fields filter to its duplicate, since the original was removed in [34582].
Adds a changelog entry noting the adjustment in behavior, and simplifies the conditional logic.

Fixes #15115.


git-svn-id: https://develop.svn.wordpress.org/trunk@34590 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 13:04:23 +00:00
Scott Taylor
1d6c744604 Posts List Table: check is_multi_author() before attempting to set ->user_posts_count. Also, don't show "Mine" when the count is the same as "All."
Fixes #19609.


git-svn-id: https://develop.svn.wordpress.org/trunk@34584 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 06:50:03 +00:00
Scott Taylor
1543fbf91b Profile: on user-new.php, don't allow the password fields to be hidden. When hidden, you can't add a user.
Props coffee2code.
Fixes #15115.


git-svn-id: https://develop.svn.wordpress.org/trunk@34582 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-26 06:14:25 +00:00
John Blackbourn
1bb2876fe6 callback is not a valid type in PHP, PSR-5, or phpDocumentor. callable should be used instead.
Fixes #34032


git-svn-id: https://develop.svn.wordpress.org/trunk@34566 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 23:57:46 +00:00
Drew Jaynes
ea23f4603c Docs: Fix the syntax for a mid-file sectional comment in wp-admin/includes/dashboard.php.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34565 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 22:50:58 +00:00
Drew Jaynes
7a74f67964 Docs: Remove an inline comment duplicated by the DocBlock summary for wp_dashboard_trigger_widget_control().
Props tyxla.
Fixes #34014.


git-svn-id: https://develop.svn.wordpress.org/trunk@34564 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 22:49:02 +00:00
Weston Ruter
78b73c8906 Customizer: Defer embedding widget controls to improve DOM performance and initial load time.
The Menu Customizer feature includes a performance technique whereby the controls for nav menu items are only embedded into the DOM once the containing menu section is expanded. This commit implements the same DOM deferral for widgets but goes a step further than just embedding the controls once the widget area's Customizer section is expanded: it also defers the embedding of the widget control's form until the widget is expanded, at which point the `widget-added` event also fires to allow any additional widget initialization to be done. The deferred DOM embedding can speed up initial load time by 10x or more. This DOM deferral also yields a reduction in overall memory usage in the browser process.

Includes changes to `wp_widget_control()` to facilitate separating out the widget form from the surrounding accordion container; also includes unit tests for this previously-untested function. Also included are initial QUnit tests (finally) for widgets in the Customizer.

Fixes #33901.


git-svn-id: https://develop.svn.wordpress.org/trunk@34563 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 21:01:46 +00:00
Boone Gorges
0604eff2e2 After [35461], remove 'page_comments' from database.
* Don't set as part of initial schema.
* Delete as part of the `$unusedoptions` routine.

Props ocean90.
See #8071.

git-svn-id: https://develop.svn.wordpress.org/trunk@34562 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 20:49:47 +00:00
Boone Gorges
0b7e8399b0 Force comment pagination on single posts.
Previously, the 'page_comments' toggle allowed users to disable comment
pagination. This toggle was only superficial, however. Even with
'page_comments' turned on, `comments_template()` loaded all of a post's
comments into memory, and passed them to `wp_list_comments()` and
`Walker_Comment`, the latter of which produced markup for only the
current page of comments. In other words, it was possible to enable
'page_comments', thereby showing only a subset of a post's comments on a given
page, but all comments continued to be loaded in the background. This technique
scaled poorly. Posts with hundreds or thousands of comments would load slowly,
or not at all, even when the 'comments_per_page' setting was set to a
reasonable number.

Recent changesets have addressed this problem through more efficient tree-
walking, better descendant caching, and more selective queries for top-level
post comments. The current changeset completes the project by addressing the
root issue: that loading a post causes all of its comments to be loaded too.

Here's the breakdown:

* Comment pagination is now forced. Setting 'page_comments' to false leads to evil things when you have many comments. If you want to avoid pagination, set 'comments_per_page' to something high.
* The 'page_comments' setting has been expunged from options-discussion.php, and from places in the codebase where it was referenced. For plugins relying on 'page_comments', we now force the value to `true` with a `pre_option` filter.
* `comments_template()` now queries for an appropriately small number of comments. Usually, this means the `comments_per_page` value.
* To preserve the current (odd) behavior for comment pagination links, some unholy hacks have been inserted into `comments_template()`. The ugliness is insulated in this function for backward compatibility and to minimize collateral damage. A side-effect is that, for certain settings of 'default_comments_page', up to 2x the value of `comments_per_page` might be fetched at a time.
* In support of these changes, a `$format` parameter has been added to `WP_Comment::get_children()`. This param allows you to request a flattened array of comment children, suitable for feeding into `Walker_Comment`.
* `WP_Query` loops are now informed about total available comment counts and comment pages by the `WP_Comment_Query` (`found_comments`, `max_num_pages`), instead of by `Walker_Comment`.

Aside from radical performance improvements in the case of a post with many
comments, this changeset fixes a bug that caused the first page of comments to
be partial (`found_comments` % `comments_per_page`), rather than the last, as
you'd expect.

Props boonebgorges, wonderboymusic.
Fixes #8071.

git-svn-id: https://develop.svn.wordpress.org/trunk@34561 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 20:39:18 +00:00
Weston Ruter
6db8b9279e Customizer: Fix usage of jQuery.contains() allowing active state changes to again animate control visibility.
Aligns usage of `jQuery.contains()` in a control's `onChangeActive` method with the existing usage in the corresponding `onChangeActive` method for panels and sections.

Props nikeo.
Fixes #33509.


git-svn-id: https://develop.svn.wordpress.org/trunk@34557 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 19:54:00 +00:00
Helen Hou-Sandi
9490539e89 Shortlinks: Hide the Get Shortlink button by default.
Shortlinks had their day in the popular usage sun before all these services moved to their own shorteners and running your own custom one became a lot easier. Shortlinks are still useful in some contexts, such as analytics or when links need to be shared verbally or copied down by hand.

If any filters are hooked onto `pre_get_shortlink` or `get_shortlink` and produce a non-empty value (with an exception described below), the button will magically reappear. This allows any custom shortlinks to keep the button without hiccups.

If you're in need of the default shortlinks, the fastest way to reenable them is `add_filter( 'pre_get_shortlink', '__return_false' )`. Note that it must return false in order to continue on to the rest of `wp_get_shortlink()`.

props grvrulz for the initial patch.
fixes #33495.


git-svn-id: https://develop.svn.wordpress.org/trunk@34556 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 19:53:28 +00:00
John Blackbourn
a6a00a3625 Implement 'Recently Active' functionality for network-wide plugins in the Network Admin.
Fixes #20468
Thanks to WordCamp RI attendees for testing!


git-svn-id: https://develop.svn.wordpress.org/trunk@34551 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 19:15:08 +00:00
Sergey Biryukov
3b9cb92c44 Plugin Editor: Don't split the strings with plugin file name and remove unnecessary context.
Partially reverts [34341].

Fixes #31862.

git-svn-id: https://develop.svn.wordpress.org/trunk@34547 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 15:18:58 +00:00
John Blackbourn
03515ca82d Introduce a send_update_notification_email which controls whether an update notification email is sent for background updates. This filter allows control over each of the update types (plugin, theme, translation) and compliments the automatic_updates_send_debug_email and send_core_update_notification_email filters.
Fixes #33932
Props ronalfy


git-svn-id: https://develop.svn.wordpress.org/trunk@34543 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 14:28:23 +00:00
Scott Taylor
c8f167629d Revisions: add a 'wp_prepare_revision_for_js' filter.
Props jtsternberg, adamsilverstein.
Fixes #28627.


git-svn-id: https://develop.svn.wordpress.org/trunk@34541 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 14:03:30 +00:00
Scott Taylor
5e95cd1db5 Profile: when clicking "Generate Password", toggling visibility, then canceling, ensure that the UI resets properly for when the "Generate Password" button is clicked again.
Props umesh.nevase.
Fixes #33897.


git-svn-id: https://develop.svn.wordpress.org/trunk@34539 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 13:53:04 +00:00
Boone Gorges
0c5bd75262 Pinking shears.
git-svn-id: https://develop.svn.wordpress.org/trunk@34534 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 04:43:57 +00:00
Boone Gorges
3425177325 Introduce metadata for taxonomy terms.
Adds a new table to the database schema (`wp_termmeta`), and a set of
`*_term_meta()` API functions. `get_terms()` and `wp_get_object_terms()`
now also support 'meta_query' parameters, with syntax identical to other
uses of `WP_Meta_Query`.

When fetching terms via `get_terms()` or `wp_get_object_terms()`, metadata for
matched terms is preloaded into the cache by default. Disable this behavior
by setting the new `$update_term_meta_cache` paramater to `false`.

To maximize performance, within `WP_Query` loops, the termmeta cache is *not*
primed by default. Instead, we use a lazy-loading technique: metadata for all
terms belonging to posts in the loop is loaded into the cache the first time
that `get_term_meta()` is called within the loop.

Props boonebgorges, sirzooro.
See #10142.

git-svn-id: https://develop.svn.wordpress.org/trunk@34529 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 03:58:59 +00:00
Scott Taylor
641150a87a Comments List Table: after [34179], scope the <th>s and <td>s as direct descendants of their parent row.
Fixes #33943.


git-svn-id: https://develop.svn.wordpress.org/trunk@34527 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-25 02:20:11 +00:00
Dominik Schilling (ocean90)
d1fbe56dfc Plugins: Don't use _n() for singular/plural strings which have no placeholder for a number.
Fixes #33239.
See #28502.

git-svn-id: https://develop.svn.wordpress.org/trunk@34521 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 21:06:50 +00:00
Scott Taylor
5b5b714694 Comments List Table JS: move the dynamic count functions into closure scope so that setCommentsList AND commentReply can access them. Update counts when replying inline.
Fixes #33403.


git-svn-id: https://develop.svn.wordpress.org/trunk@34517 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 20:15:54 +00:00
Scott Taylor
e1d433a233 Edit Post: in the logic determining whether to display the Comments meta box, check for the current post status in get_post_stati( array( 'public' => true ) ) instead of just checking publish and private. Ensure that private is checked in both instances.
Props Thaicloud, wonderboymusic.
Fixes #24486.


git-svn-id: https://develop.svn.wordpress.org/trunk@34515 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 20:01:55 +00:00
Scott Taylor
395fc15df3 Widgets: use input[type="number"] for the number prop in the Recent Posts and Recent Comments widget forms.
Props helen, obenland, mordauk.
Fixes #22965.


git-svn-id: https://develop.svn.wordpress.org/trunk@34514 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 19:52:06 +00:00
Andrea Fercia
5852971d3c Comments List Table: fix the translators comment for all count after [34506].
See #17275.

git-svn-id: https://develop.svn.wordpress.org/trunk@34508 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 18:39:04 +00:00
Scott Taylor
d7a59c4661 Comments List Table: include count for "All". Dynamically update.
Fixes #17275.


git-svn-id: https://develop.svn.wordpress.org/trunk@34506 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 17:56:50 +00:00
John Blackbourn
3d97e9a53b Correctly present an error to the user if the nickname field is empty when updating a user profile. It's strange that this field is required, but it is, so be it.
Fixes #33310
Props prasad-nevase, metodiew


git-svn-id: https://develop.svn.wordpress.org/trunk@34505 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 17:48:10 +00:00
Scott Taylor
821821c8b5 Comments: add date column to WP_Comments_List_Table to allow sorting and to break out the date/time from the comment content column.
Props jshreve.
Fixes #15520.


git-svn-id: https://develop.svn.wordpress.org/trunk@34504 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 17:26:54 +00:00
Scott Taylor
c0ebd3b5e2 Comments: update Comment counts dynamically in the Right Now widget based on moderation actions in the Activity widget.
Fixes #10422.


git-svn-id: https://develop.svn.wordpress.org/trunk@34500 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 15:52:41 +00:00
Drew Jaynes
b408cd37fb Docs: Standardize and clarify class DocBlocks for all of the Upgrade API classes.
Standardizes summaries and tags for the following classes:

* `WP_Upgrader`
* `Plugin_Upgrader`
* `Theme_Upgrader`
* `Language_Pack_Upgrader`
* `Core_Upgrader`
* `File_Upload_Upgrader`
* `WP_Automatic_Updater`

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34499 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:53:46 +00:00
DrewAPicture
cccd9356fe Docs: Clarify the file header for wp-admin/includes/class-wp-upgrader.php.
See #33701.


git-svn-id: https://develop.svn.wordpress.org/trunk@34498 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:43:02 +00:00
Drew Jaynes
ad64ee866b Docs: Mark the optional $upgrader parameter as such and add a description in the DocBlock for Language_Pack_Upgrader::async_upgrade().
See [32655].

See #30989. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34497 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:34:15 +00:00
Drew Jaynes
02e1102a5b Docs: Add a summary, version, and parameter and return descriptions to the DocBlock for WP_Filesystem_ftpsockets::get_contents().
Also reverses the return types as `string` is expected, `false` is the outlier.

See [30978].

See #30989. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34495 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:21:50 +00:00
Drew Jaynes
6ac2cb05e6 Docs: Add a summary, version, and parameter and return descriptions to the DocBlock for WP_Filesystem_FTPext::get_contents().
Also reverses the return types as `string` is expected, `false` is the outlier.

See [30978].

See #30989. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34493 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 14:10:47 +00:00
Drew Jaynes
c9093207df Docs: Add a summary, version, and @access tag to the property DocBlock for Custom_Image_Header->updated.
See [14907] for where the property was initially introduced.
See [30187] for where the property was actually declared.

Props brentvr.
See #30224. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34491 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 13:38:03 +00:00
Drew Jaynes
00eab11256 Docs: Add a summary, version, and @access tag to the property DocBlock for Custom_Background->updated.
See [13765] for where the property was initially introduced.
See [30186] for where the property was actually declared.

Props brentvr.
See #30224. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34490 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 13:33:18 +00:00
Dominik Schilling (ocean90)
273bd1ed99 Edit Post: Add missing periods.
See #31858.

git-svn-id: https://develop.svn.wordpress.org/trunk@34486 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 08:53:21 +00:00
Scott Taylor
6ad1c1c380 Plugins: on the plugins admin screen, the "has been deleted" string needs a plural.
Props jmayhak.
Fixes #33239.


git-svn-id: https://develop.svn.wordpress.org/trunk@34475 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 03:41:52 +00:00
Scott Taylor
9d71ae4122 Edit Post: After [33666], separate the translation string for pages, avoiding HTML usage.
Props ramiy.
Fixes #31858.


git-svn-id: https://develop.svn.wordpress.org/trunk@34473 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 03:27:26 +00:00
Scott Taylor
c9c9e19260 After [34341], add translation strings.
Props ramiy.
Fixes #31862.


git-svn-id: https://develop.svn.wordpress.org/trunk@34469 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 03:08:34 +00:00
Scott Taylor
21dad99c1b List Tables: add JS code to dynamically toggle the disabled attribute of the Bulk Actions dropdown and Apply button.
Props wonderboymusic, pareshradadiya.
Fixes #31634.


git-svn-id: https://develop.svn.wordpress.org/trunk@34467 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-24 01:06:17 +00:00
Scott Taylor
a87b30da21 Comments: allow meta boxes for Discussion and Comments in extenuating circumstances.
* Discussion: Post Type stops supporting comments, but comments and/or pings are open on a post. 
* Comments: Post is published or private, the post type has stopped supporting comments, but comments and/or pings are open on a post.

Currently, there is no way to toggle those settings off.

Props couturefreak, wonderboymusic, rachelbaker.
Fixes #28080.


git-svn-id: https://develop.svn.wordpress.org/trunk@34461 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-23 19:48:41 +00:00
Boone Gorges
daadd27ed4 Allow comment_exists() to match based on GMT date.
The `comment_date_gmt` field of the `wp_comments` table is indexed, which makes
`WHERE` matches against the field much faster than against the unindexed
`comment_date`. For bulk operations like data import, the speed difference can
be meaningful.

We continue to default to 'blog' for `$timezone`, to preserve compatibility
with existing uses.

Props apokalyptik.
Fixes #33871.

git-svn-id: https://develop.svn.wordpress.org/trunk@34460 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-23 18:15:39 +00:00
John Blackbourn
d8a59791f0 Avoid a PHP notice if the last_updated property isn't present in a plugin's data from the Plugins API.
Fixes #33024
Props icetee


git-svn-id: https://develop.svn.wordpress.org/trunk@34458 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-23 15:09:42 +00:00