Commit Graph
5766 Commits
Author SHA1 Message Date
Boone Gorges 7f87a14808 Introduce publicly_queryable taxonomy argument.
Taxonomies registered as `publicly_queryable` can be queried as taxonomy
archives.

If not provided explicitly, the value of `publicly_queryable` is inherited
from `public`.

Props Chouby.
Fixes #34491.

git-svn-id: https://develop.svn.wordpress.org/trunk@36525 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-13 03:50:37 +00:00
Boone Gorges d03ae82c32 Improve WP_Query lazyloading logic, for better performance.
Lazyloading for comment meta and term meta, introduced into `WP_Query` in
4.4, used flags - `updated_term_meta_cache` and `updated_comment_meta_cache` -
in an attempt to prevent cache priming from happening more than once per query
object. This technique was mostly effective, but not entirely efficient, since
the flag didn't prevent the `lazyload_*_meta` callbacks from running. The
obvious solution - removing the filter callback after it'd be run once - was
dismissed for 4.4 because of concerns that `remove_filter()` could disable
lazyloading too generally in the context of nested queries, due to the way
`_wp_filter_build_unique_id()` doesn't always build sufficiently unique IDs for
similar objects. However, further testing shows that this concern is only valid
in a very small subset of cases, while the cost of keeping the query objects in
memory, via the `$wp_filter` global, is quite significant. As such, this
changeset removes the flags in favor of the `remove_filter()` technique.

See #35454, #35816.

git-svn-id: https://develop.svn.wordpress.org/trunk@36524 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-13 03:04:05 +00:00
Weston Ruter 9a108e99b5 Customize: Ensure that nav menu items can be shift-clicked to edit in secondary instances of the same nav menu.
When the same nav menu is shown multiple times on a page, only the first instance of the nav menu will include `id` attributes. Subsequent instances will have the `id` attributes omitted. However, in both cases the underlying nav menu item's post ID is available among the `class` names, so the post ID can be more reliably obtained from `class` instead of the `id` attribute.  

Amends [36383].
Fixes #32681.


git-svn-id: https://develop.svn.wordpress.org/trunk@36523 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-13 00:11:24 +00:00
Rachel Baker e8402e5572 Media: Fix inline docs typo inside wp_calculate_image_srcset() function.
mathces -> matches.

Props neoxx.

Fixes #35714.

git-svn-id: https://develop.svn.wordpress.org/trunk@36517 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 18:14:03 +00:00
Boone Gorges b5bc8e336e Bail from get_term() if a filter returns an object that is not a WP_Term.
This prevents fatal errors in certain cases.

Props tmuikku.
Fixes #35808.

git-svn-id: https://develop.svn.wordpress.org/trunk@36516 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 14:25:05 +00:00
Rachel Baker 8718eb2536 Comments: Change wp_get_comment_column_max_length() function to wp_get_comment_fields_max_lengths() for consolidation and better fallbacks.
Instead of returning a value for each of the related table column lengths, return an array of all of the column lengths used in the comment form.
Better fallback handling, where each field falls back to the expected max_length instead of an arbitrary number.

Props azaozz.

Fixes #10377.

git-svn-id: https://develop.svn.wordpress.org/trunk@36514 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 13:54:50 +00:00
Andrew Ozz 43dae50c0d TinyMCE: fix removing a space before inline tags when applying formatting shortcuts.
Fixes #35798.

git-svn-id: https://develop.svn.wordpress.org/trunk@36513 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 04:22:03 +00:00
Boone Gorges 126193fa3c Set the $comment global in comment_form_title().
In [33963], `comment_form_title()` was refactored so that it no longer made
reference to the `$comment` global. This broke some functionality within the
comment form, as certain template would no longer be able to access the
"current" comment.

Props d4z_c0nf, WisdmLabs, boonebgorges.
Fixes #35624.

git-svn-id: https://develop.svn.wordpress.org/trunk@36512 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 04:09:46 +00:00
Boone Gorges 0ae22e5f4c In delete_metadata(), only invalidate cache for affected objects.
The `$delete_all` flag in `delete_metadata()` triggers cache invalidation for
multiple objects. Previously, invalidation took place for all objects matching
the `$meta_key` parameter, regardless of whether `$meta_value` was also set.
This resulted in overly aggressive invalidation.

Props rahal.aboulfeth.
Fixes #35797.

git-svn-id: https://develop.svn.wordpress.org/trunk@36511 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-12 02:46:28 +00:00
Eric Andrew Lewis e8ed3fcbf1 Menus: Allow larger menus to be created in the Edit Menu screen.
In the Edit Menu screen, each menu item creates 11 form input elements. In menus with more than 71 menu items, often items after the 71st weren't saved. This was because PHP's runtime configuration `max_input_vars` default value is 1000. Large menus exceed this, so PHP didn't populate the `$_POST` superglobal for the latter menu items.

The entire form is now JSON-encoded into a single input which populates `$_POST` manually on form submission.

This was attempted previously in [36506] which was reverted in [36507]. Some form fields were not being slurped into the form's JSON representation, and it did not scale for a site with many posts. This approach fixes those problems.

Props ocean90, afercia.
See #14134.


git-svn-id: https://develop.svn.wordpress.org/trunk@36510 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-11 19:07:30 +00:00
Boone Gorges 71060260a1 Don't double-unslash meta key when update_metadata() falls back on add_metadata().
Props jdgrimes.
Fixes #35795.

git-svn-id: https://develop.svn.wordpress.org/trunk@36509 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-11 17:34:59 +00:00
Boone Gorges d2cbbfe28b Remove unused variable from get_terms().
Unused since [31284].

Props TimothyBlynJacobs.
Fixes #35784.

git-svn-id: https://develop.svn.wordpress.org/trunk@36508 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-11 04:32:08 +00:00
Drew Jaynes 1c2f0896db Themes: Pass information about the old theme in the form of a WP_Theme object when the switch_theme action is fired.
Props MikeHansenMe.
See #22401.


git-svn-id: https://develop.svn.wordpress.org/trunk@36502 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 08:25:28 +00:00
Drew Jaynes 2caad3f7b2 Docs: Improove the DocBlock summary for wp_signon().
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36501 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 08:10:47 +00:00
Drew Jaynes 1c80e8ca46 Docs: Make a couple of minor improvements to the DocBlock for wp_get_raw_referer(), introduced in [36266].
* Uses a third-person singular verb in the summary
* Makes the return types more specific with `string|false` vs `string|bool`.

See #27152. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36500 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 08:08:48 +00:00
Drew Jaynes 46029e674a Docs: Add a changelog entry for the introduction of maxlength character limits for the 'author', 'email', and 'url' fields in comment_form().
Introduced in [36272].

See #10377. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36499 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 08:04:15 +00:00
Drew Jaynes 305d44d04e Docs: Revert unintended changes in wp-includes/post.php, mistakenly included in [36497].
See #34988. See #33701. 


git-svn-id: https://develop.svn.wordpress.org/trunk@36498 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:45:06 +00:00
Drew Jaynes e3cfe3e257 Docs: Add a missing version to the file header for wp-admin/term.php, introduced in [36308].
See #34988. See #33701.


git-svn-id: https://develop.svn.wordpress.org/trunk@36497 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:42:25 +00:00
Drew Jaynes 3a0050346b Docs: Update several function DocBlock summaries in wp-includes/nav-menu.php to use third-person singular verbs.
Also removes some unnecessary capitalizations.

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36496 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:17:29 +00:00
Drew Jaynes 6172a88bad Docs: Make some minor improvements to inline docs for WP_Site, introduced in [36393].
* Uses third-person singular verbs in method summaries
* Adds an `@static` tag to the `WP_Site::get_instance()` DocBlock
* Adjusts return types for `WP_Site::get_instance()` to the more explicit `WP_Site|false`

See #32450. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36495 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:12:44 +00:00
Drew Jaynes f77e353b66 Docs: Slightly simplify the DocBlock summaries for home_url(), get_home_url(), site_url(), and get_site_url().
See #35238. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36494 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:06:01 +00:00
Drew Jaynes 2eeaf25112 Docs: Add an @access tag and fix a typo in the DocBlock for wpdb::close().
See #34903. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36493 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 02:02:27 +00:00
Drew Jaynes a1019e97b0 Docs: Add a note to the DocBlock for current_user_can() to explain that it will always return true for super admins, unless specifically denied.
Props finnj.
Fixes #35551.


git-svn-id: https://develop.svn.wordpress.org/trunk@36492 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 01:26:17 +00:00
Drew Jaynes 38aeeb5ebe Docs: Fix two notations in the DocBlocks for show_admin_bar() and is_admin_bar_showing() to reflect use of the $show_admin_bar global rather than $wp_admin_bar.
Props Frozzare.
Fixes #35686.


git-svn-id: https://develop.svn.wordpress.org/trunk@36491 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 01:21:14 +00:00
Drew Jaynes b925222cb9 Docs: Fix one line of the DocBlock for the JsonSerializable compat interface to use a tab instead of spaces.
Props Frozzare.
Fixes #35699.


git-svn-id: https://develop.svn.wordpress.org/trunk@36490 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 01:17:50 +00:00
Drew Jaynes fed210d8ae Docs: Use the correct parameter name in the DocBlock for wp_kses_post_deep(), introduced in [36429].
Props sebastianpisula.
Fixes #35700. See #35316.


git-svn-id: https://develop.svn.wordpress.org/trunk@36489 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 00:17:59 +00:00
Drew Jaynes e0787b6a2b Docs: Add a missing type to the return description for map_deep().
Props sebastianpisula.
See #35700.


git-svn-id: https://develop.svn.wordpress.org/trunk@36488 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-07 00:14:15 +00:00
Boone Gorges ddc9f3dccb Allow comments to be queried by 'any' post_type or post_status.
Props kouratoras.
Fixes #35512.

git-svn-id: https://develop.svn.wordpress.org/trunk@36486 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-06 04:50:05 +00:00
Boone Gorges eb8e2fb6ed Allow get_terms() results to ordered by metadata.
The `$orderby` parameter of `get_terms()` now accepts the following values,
related to term meta:

* 'meta_value'
* 'meta_value_num'
* the value of the `$meta_key` parameter
* any key from the `$meta_query` array

This brings order-by-meta support for terms in line with post, comment, and
user queries.

As a byproduct of these improvements, `$meta_key` and `$meta_value` parameters
have been introduced to `get_terms()`. They interact with `$meta_query` in the
same way as in `WP_Query` and other query classes.

Props jadpm, eherman24.
Fixes #34996.

git-svn-id: https://develop.svn.wordpress.org/trunk@36485 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-06 04:41:26 +00:00
Boone Gorges 0673904ddf WP_Query taxonomy query vars should be set to first of multiple taxonomies.
This provides better parity with `get_queried_object()`, which will return the
first taxonomy/term matched by the current query.

[29891] introduced the abnormal behavior for the 'taxonomy' and 'term'
query vars.

Props Chouby.
Fixes #35619.

git-svn-id: https://develop.svn.wordpress.org/trunk@36484 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-06 03:57:33 +00:00
Andrew Ozz b4779f7368 TinyMCE inline link:
- Fix not displaying anything when the URL is only a fragment. Show the whole URL.
- Fix editing a link when it is the very first word in the editor.
- Fix editing a link then some of the surrounding text or space is selected. Change the selection to only the link node.
- Add placeholder when adding new link.

See #33301.

git-svn-id: https://develop.svn.wordpress.org/trunk@36483 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-06 00:50:31 +00:00
Boone Gorges 3ed7c823c9 When updating a user, invalidate its 'userslugs' cache.
`user_nicename` can be changed via `wp_update_user()`, so we invalidate just
to be safe.

Props thebrandonallen.
Fixes #35750.

git-svn-id: https://develop.svn.wordpress.org/trunk@36482 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-05 19:02:51 +00:00
Boone Gorges 2c73fd9531 Make the $post param optional in get_post_field().
When `$post` is `null`, the current post object will be returned.

Props sebastian.pisula.
Fixes #35683.

git-svn-id: https://develop.svn.wordpress.org/trunk@36481 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-05 18:57:09 +00:00
Boone Gorges ef99ae21be Comments: Restore the ability to bypass post_id filter using 0 or '0'.
The changes introduced in [36381], while logical and clearly awesome, introduce
the potential for much breakage. Those who want to query for comments with a
null `comment_post_ID` should use `'post_in' => array( 0 )` instead.

Reverts [36381], [36387].
See #35090.


git-svn-id: https://develop.svn.wordpress.org/trunk@36480 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-05 18:49:46 +00:00
Boone Gorges 3ec4faf6e3 Comments: Add 'parent__in' and 'parent__not_in' to query var defaults.
Query var defaults are used to calculate a cache key. The fact that these
params were not listed among the defaults was causing cache keys to be
insufficiently specific.

Props danielbachhuber.
Fixes #35677.

git-svn-id: https://develop.svn.wordpress.org/trunk@36479 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-05 18:35:47 +00:00
Drew Jaynes a50e6f1d26 Docs: Document the $args parameter for get_categories() as a hash notation.
The only specific default for `get_categories()` is `$taxonomy` with a value of 'category', all the other arguments are documented separately in `get_terms()`.

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36476 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-04 14:49:49 +00:00
Drew Jaynes 66d8f82d2e Docs: Reference get_terms() for arguments available in get_categories().
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@36475 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-04 14:37:07 +00:00
Dominik Schilling (ocean90) 7bc7bd07d4 Suppress possible warnings in PHP < 5.3.3 by parse_url() in wp_validate_redirect().
PHP 5.3.3 removed the E_WARNING that was emitted when URL parsing failed.

git-svn-id: https://develop.svn.wordpress.org/trunk@36446 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 16:33:02 +00:00
Aaron Jorbin 5bf2ce0d66 Revert [35792]
This causes a regression and causes redirects to potentially fail.

See #5114 #34028
props ocean90


git-svn-id: https://develop.svn.wordpress.org/trunk@36445 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 16:23:15 +00:00
Dominik Schilling (ocean90) ce68dd0ec5 Better validation of the URL used in HTTP redirects.
git-svn-id: https://develop.svn.wordpress.org/trunk@36444 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 15:10:09 +00:00
Dominik Schilling (ocean90) 6e8dc736c4 HTTP: 0.1.2.3 is not a valid IP.
git-svn-id: https://develop.svn.wordpress.org/trunk@36435 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 12:54:59 +00:00
Gary Pendergast 022bd3f851 Database: Allow loading when only the mysqlnd extension is loaded.
We do an early check for a mysql extension being loaded, but it fails if the `mysqlnd` extension is the only one present.

Props nexurium.

Fixes #33261.



git-svn-id: https://develop.svn.wordpress.org/trunk@36434 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 00:58:32 +00:00
Gary Pendergast 2918cca22c WPDB: Add a close() method to wpdb, for when the connection needs to be manually closed.
In the event that it was closed prematurely, `wpdb::query()` will re-open the connection automatically.

Fixes #34903.



git-svn-id: https://develop.svn.wordpress.org/trunk@36433 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-02 00:12:28 +00:00
Dominik Schilling (ocean90) 62705eef00 Media: In wp_read_image_metadata() make sure that IPTC keywords are UTF8 encoded.
Prevents missing `_wp_attachment_metadata` when an image contains keywords with latin extended characters.

Fixes #35316.

git-svn-id: https://develop.svn.wordpress.org/trunk@36429 602fd350-edb4-49c9-b593-d223f7449a82
2016-02-01 14:52:15 +00:00
Rachel Baker c8cd8c8a36 Comments: Add back $req variable in comments_template().
The variables in `comments_template()` should never be assumed to be unused. This function includes the `comments.php` template file from the active theme or falls back to `theme-compat/comments.php`. This is why including a file within a function only brings pain and sorrow.

Reverts r36322.

See #35473.

git-svn-id: https://develop.svn.wordpress.org/trunk@36425 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-30 22:12:29 +00:00
Andrea Fercia cde933e306 After [36171] remove all the occurrences of the old CSS clearfix.
The old clearfix was applied to very specific items and defined multiple times
across CSS files. Uses the new generic `.wp-clearfix` utility class instead.

See #26396.

git-svn-id: https://develop.svn.wordpress.org/trunk@36422 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-30 13:45:37 +00:00
Dion Hulse 3964f0ef33 Update Random_Compat to the latest version (1.1.6).
See #35665


git-svn-id: https://develop.svn.wordpress.org/trunk@36421 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-30 00:56:07 +00:00
Boone Gorges fdd7d91162 Simplify action placement in update_metadata().
By combining a number of `foreach` loops, we make the code more readable and
potentially faster in the case where many metadata rows are being updated.

Props Shelob9.
Fixes #35652.

git-svn-id: https://develop.svn.wordpress.org/trunk@36420 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-29 04:51:11 +00:00
Boone Gorges c974ac77c4 Pass additional params to 'get_archive_links' filter.
Props sebastian.pisula.
Fixes #35573.

git-svn-id: https://develop.svn.wordpress.org/trunk@36418 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-28 04:45:46 +00:00
Eric Andrew Lewis 27361e6ffe Networks and sites: Replace "blog" usage with "site" in docs.
Multisite functions use the term "blog" to refer to what we now call a "site," e.g. `get_current_blog_id()`. These functions are here to stay because of our commitment to backwards compatibility. What we can do is set the documentation straight.

See #35417.


git-svn-id: https://develop.svn.wordpress.org/trunk@36417 602fd350-edb4-49c9-b593-d223f7449a82
2016-01-28 03:50:26 +00:00