Commit Graph
4503 Commits
Author SHA1 Message Date
Drew Jaynes ff35e34fad Docs: Improve documentation for the WP_Object_Cache class.
Spaces out parameter documentation for readability, fixes some minor syntactical issues, and adds some missing `@access` tags or reorders tags according to the PHP docs standards.

Also, documents `&$found`, the fourth parameter for the `get()` method, and adds missing parameter and return descriptions for the `_exists()` utility method.

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34227 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 10:02:20 +00:00
Drew Jaynes 1075ec80b8 Docs: Remove an errant change made to a _deprecated_function() call in wp_cache_reset() introduced in [34225].
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34226 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 09:41:51 +00:00
Drew Jaynes 741bd4440c Docs: Add more complete documentation for top-level object cache functionality.
Adds some `@see` tags for corresponding `WP_Object_Cache` methods to DocBlocks for top-level functions. Also adds a standard description for the `@global` tags, spacing for parameter docs readability, and finally, properly marks optional parameters as such.

See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34225 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 09:39:33 +00:00
Drew Jaynes f2eb739ea6 Docs: Add documentation for $object_id, the optional second parameter in current_user_can() and WP_User::has_cap(), and the optional third parameter in map_meta_cap().
This change introduces the vernacular of "meta" vs "primitive" capabilities to core docs, and providing examples for each inline and attempts to make it clear that `$object_id` is really only useful if the passed `$capability` is of the meta cap variety.

Props jliman for the initial patch.
Fixes #32694.


git-svn-id: https://develop.svn.wordpress.org/trunk@34224 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 07:35:37 +00:00
Sergey Biryukov 7e706c285b Fix a typo in wptexturize() and wp_replace_in_html_tags() comments.
Props bobbingwide.
See #15694.

git-svn-id: https://develop.svn.wordpress.org/trunk@34222 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-16 05:53:09 +00:00
Aaron Jorbin bf5f316668 Fire Action when mail exception is thrown.
new action is wp_mail_failed which contains a WP_Error object with the phpmailerException code, message and an array with the mail information. Plugins can hook in and log when mails fail to send due to a phpmailer issue.

Props soulseekah
Fixes #18926



git-svn-id: https://develop.svn.wordpress.org/trunk@34221 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 23:50:30 +00:00
Boone Gorges 0adb6877b2 Improve validation of user_login and user_nicename length.
The `user_login` field only allows 60 characters, and `user_nicename` allows
50. However, there are no protections in the interface, and few in the code,
that prevent the creation of users with values in excess of these limits. Prior
to recent changes in `$wpdb`, users were generally created anyway, MySQL
having performed the necessary truncation. More recently, the `INSERT`s and
`UPDATE`s simply fail, with no real feedback on the nature of the failure.

This changeset addresses the issue in a number of ways:
* On the user-new.php and network/user-new.php panels, don't allow input in excess of the maximum field length.
* In `wp_insert_user()`, throw an error if the value provided for `'user_login'` or `'user_nicename'` exceeds the maximum field length.
* In `wp_insert_user()`, when using `'user_login'` to generate a default value for `'user_nicename'`, ensure that the nicename is properly truncated, even when suffixed for uniqueness (username-2, etc).

Props dipesh.kakadiya, utkarshpatel, tommarshall, boonebgorges.
Fixes #33793.

git-svn-id: https://develop.svn.wordpress.org/trunk@34218 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 22:13:51 +00:00
Boone Gorges 2d59d18e3a Omit the ORDER BY clause when updating object term cache.
The `ORDER BY` clause was forcing filesorts on large tables, and is
unnecessary, since term order doesn't matter when updating the cache.

Props mbrandys, wonderboymusic.
Fixes #28922.

git-svn-id: https://develop.svn.wordpress.org/trunk@34217 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 20:52:40 +00:00
Scott Taylor e05586646a Apply the new 'respond_link' filter in comments_popup_link() if $number is 0 before outputting the URL.
Props joedolson.
Fixes #29454.


git-svn-id: https://develop.svn.wordpress.org/trunk@34216 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 20:45:32 +00:00
Scott Taylor 28426c041c In WP::parse_request(), don't add query vars of non-viewable post types to WP::public_query_vars. In register_post_type(), don't add query vars of non-viewable post types to WP::public_query_vars.
In `_unregister_post_type()` (unit tests), don't add query vars of non-viewable post types to `WP::public_query_vars`.

Adds unit test.

Fixes #30018.


git-svn-id: https://develop.svn.wordpress.org/trunk@34215 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 18:53:12 +00:00
John Blackbourn 1a352d56f9 Implement wp_login_url() and wp_registration_url() in places where wp-login.php is currently hard-coded.
See #31495
Props GregLone


git-svn-id: https://develop.svn.wordpress.org/trunk@34213 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 17:10:24 +00:00
Scott Taylor 7b93c40830 WP_Comment_Query: add comment__in to allowed values for $orderby.
Adds unit tests.

Fixes #33883.


git-svn-id: https://develop.svn.wordpress.org/trunk@34212 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 16:34:14 +00:00
Scott Taylor 72bc9d3227 Add parent__in and parent__not_in query vars to WP_Comment_Query.
Adds unit tests.

Fixes #33882.


git-svn-id: https://develop.svn.wordpress.org/trunk@34205 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 16:22:34 +00:00
Drew Jaynes f48d395ffb Docs: Update the hook doc summary for the wp_http_ixr_client_headers filter, introduced in [34164].
The idea is to try to reflect what the filterable value is rather than why it's filterable.

Fixes #24598.


git-svn-id: https://develop.svn.wordpress.org/trunk@34203 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 16:15:39 +00:00
Scott Taylor 8fc44f8c39 Allow get_lastpostdate(), get_lastpostmodified(), and _get_last_post_time() to accept $post_type and cache separately.
Props _duck, SergeyBiryukov.
See #17455.


git-svn-id: https://develop.svn.wordpress.org/trunk@34201 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 15:24:04 +00:00
Scott Taylor b5b07ca329 Allow wp_page_menu() to accept 'walker', 'before', and 'after' to allow custom markup.
Fixes #11095.


git-svn-id: https://develop.svn.wordpress.org/trunk@34200 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 15:05:34 +00:00
John Blackbourn a923d36085 Remove the ability to view the post listing screen and post editing screen for post types with show_ui set to false. It is unexpected and unintended behaviour that this is allowed.
If your plugin or site does rely on this behaviour, the arguments that are passed to `register_post_type()` should be altered so that `show_ui` is `true`, and arguments such as `show_in_menu`, `show_in_nav_menus`, and `show_in_admin_bar` are `false`.

Fixes #33763
Props swissspidy, johnbillion


git-svn-id: https://develop.svn.wordpress.org/trunk@34177 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 10:26:22 +00:00
John Blackbourn 9b836740c3 Improve the docblocks for the get_preview_post_link() function and the preview_post_link filter.
See #24345


git-svn-id: https://develop.svn.wordpress.org/trunk@34176 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 08:24:54 +00:00
John Blackbourn 47a66713ae Correct the value of the preview query variable added by get_preview_post_link().
See #24345
Props kitchin


git-svn-id: https://develop.svn.wordpress.org/trunk@34175 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 08:15:22 +00:00
John Blackbourn c0c2a76778 Place the filter docblock for http_api_transports immediately above the filter.
See #33413
Props dd32


git-svn-id: https://develop.svn.wordpress.org/trunk@34174 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 08:11:11 +00:00
Scott Taylor c0d850878a Create a function, get_preview_post_link(), to DRY the logic for applying the 'preview_post_link' filter to a URL.
Props TomHarrigan, wonderboymusic.
Fixes #24345.


git-svn-id: https://develop.svn.wordpress.org/trunk@34170 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 04:14:23 +00:00
Scott Taylor c702a71ad1 Update post thumbnail functions to allow a WP_Post to be passed.
Adds unit tests.

Props swissspidy, Rahe.
Fixes #33723.


git-svn-id: https://develop.svn.wordpress.org/trunk@34167 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 03:45:23 +00:00
Scott Taylor 030747e429 Add a filter to allow custom headers to be sent via the WP HTTP IXR client: 'wp_http_ixr_client_headers'.
Props ericmann.
Fixes #24598.


git-svn-id: https://develop.svn.wordpress.org/trunk@34164 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 02:53:18 +00:00
Scott Taylor 577fea566a Don't ever use the guid value when retrieving URLs for media, use wp_get_attachment_url(). Use get_attached_file() for path to file.
Fixes #33386.


git-svn-id: https://develop.svn.wordpress.org/trunk@34163 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 02:49:12 +00:00
Scott Taylor 5c85369bb6 In _wp_ajax_delete_comment_response(), read the new 'all' prop returned by get_comment_count() via wp_count_comments() when setting $total. 'all' doesn't include spam in its count.
Updates unit tests.

Props dipesh.kakadiya.
Fixes #32362.


git-svn-id: https://develop.svn.wordpress.org/trunk@34161 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 01:46:51 +00:00
Scott Taylor 2817bb6557 In get_avatar_data(), promote stdClass objects to WP_Comment if passed.
Props DrewAPicture, ocean90.
Fixes #32619.


git-svn-id: https://develop.svn.wordpress.org/trunk@34160 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 01:33:29 +00:00
Scott Taylor 95795c1301 More bonkers comment cache cleanup: toggle wp_defer_comment_counting() in wp_insert_post() and wp_insert_attachment(). Move the cache deletion in wp_update_comment_count_now() to before the get_post() call, so that the caches get deleted even if the post has already been deleted and the function returns early.
See #33875.


git-svn-id: https://develop.svn.wordpress.org/trunk@34158 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-15 00:57:48 +00:00
Scott Taylor 8cb6843170 Ensure that the count cache for all is in sync with comment-{$post_id} values. These are the values most often relied-upon by the list table for comments.
Adds unit tests.

See #33875.


git-svn-id: https://develop.svn.wordpress.org/trunk@34136 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 22:38:02 +00:00
Dominik Schilling (ocean90) 354000b5ca XMLRPC: Don't allow private posts to be sticky.
See #20662.

git-svn-id: https://develop.svn.wordpress.org/trunk@34135 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 22:37:21 +00:00
Nikolay Bachiyski c430a82236 Shortcodes: don't allow unclosed HTML elements in attributes
git-svn-id: https://develop.svn.wordpress.org/trunk@34134 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 22:35:22 +00:00
Scott Taylor 545da32217 The "counts" cache for comments by post id is never invalidated. Neither wp_update_comment_count() nor wp_update_comment_count_now() touch the cache.
Adds unit test.
See #33875.


git-svn-id: https://develop.svn.wordpress.org/trunk@34131 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 22:03:23 +00:00
Scott Taylor b42a906512 wp_unspam_comment() can accept a full object instead of comment_ID to reduce cache/db lookups..
See #33638.


git-svn-id: https://develop.svn.wordpress.org/trunk@34130 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 21:46:40 +00:00
Scott Taylor 166ee8674b More comment functions can accept a full object instead of comment_ID to reduce cache/db lookups.
See ##33638.



git-svn-id: https://develop.svn.wordpress.org/trunk@34129 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 21:39:46 +00:00
Boone Gorges 974517d2bc Accept 'ID' as a valid $field in get_user_by().
We already accept 'id'. `ID` more closely matches the database and
`WP_User` schemas.

Props Shelob9.
Fixes #33869.

git-svn-id: https://develop.svn.wordpress.org/trunk@34125 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 18:57:15 +00:00
John Blackbourn 9700eb511e Add the site icon meta tags to wp-login.php.
See #33597
Props iworks


git-svn-id: https://develop.svn.wordpress.org/trunk@34124 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 18:01:22 +00:00
Scott Taylor 2c91a4d1e0 Fix the case-sensitivity of some HTTP class usage.
See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@34123 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 17:36:37 +00:00
John Blackbourn 811e538325 Update links to the user profile editing screen in the admin toolbar when the current logged in user has no role on the current site. Covers single site and Multisite and introduces tests.
Fixes #25162


git-svn-id: https://develop.svn.wordpress.org/trunk@34122 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 17:09:58 +00:00
Drew Jaynes 112a84fe93 Docs: Add missing parameter and return descriptions for Walker::get_number_of_root_elements().
Fixes #33662.


git-svn-id: https://develop.svn.wordpress.org/trunk@34121 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 15:32:46 +00:00
Sergey Biryukov 13382740b9 Escape class attribute in edit_post_link() after [34098].
Props Offereins.
See #30563.

git-svn-id: https://develop.svn.wordpress.org/trunk@34117 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 13:00:31 +00:00
Dominik Schilling (ocean90) 08098026ce Passwords: Deprecate second parameter of wp_new_user_notification().
The second parameter `$plaintext_pass` was removed in [33023] and restored as `$notify` in [33620] with a different behavior. If you have a plugin overriding `wp_new_user_notification()` which hasn't been updated you would get a notification with your username and the password "both".
To prevent this the second parameter is now deprecated and reintroduced as the third parameter.

Adds unit tests.

Props kraftbj, adamsilverstein, welcher, ocean90.
Fixes #33654.

(Don't ask for new pluggables kthxbye)

git-svn-id: https://develop.svn.wordpress.org/trunk@34116 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 12:42:34 +00:00
Sergey Biryukov 217c84e613 Docs: Add a changelog entry for the $class argument added to edit_post_link() in [34098].
Fixes #30563.

git-svn-id: https://develop.svn.wordpress.org/trunk@34115 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 12:19:55 +00:00
Dominik Schilling (ocean90) 0a77429937 Passwords: Trigger a wp-check-valid-field event when the password field is filled with a password by generatePassword().
Updates event handler in `wpAjax.invalidateForm()` to support `wp-check-valid-field`.

See #33406.

git-svn-id: https://develop.svn.wordpress.org/trunk@34114 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 10:38:32 +00:00
Scott Taylor c16e8b5616 Add sanity checks in map_meta_cap(), return 'do_not_allow' when posts don't exist.
Adds unit test.

Props ocean90, nerrad, filosofo.
Fixes #23162.


git-svn-id: https://develop.svn.wordpress.org/trunk@34113 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 04:43:48 +00:00
Boone Gorges 5a6f66faad Send multisite site/user signup emails via hooked functions.
Site and user signup notifications are moved to the new actions
`'after_signup_site'` and `'after_signup_user'`. Site and user activation
notifications are moved to the existing actions `'wpmu_activate_blog'` and
`'wpmu_activate_user'`.

Props dshanske, thomaswm, jeremyfelt.
See #33587..

git-svn-id: https://develop.svn.wordpress.org/trunk@34112 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 03:27:47 +00:00
Scott Taylor adfd136bee Move Walker_Category and Walker_CategoryDropdown into their own files via svn cp. Remove them from category-template.php. Load them in category.php. svn cp category.php over to category-functions.php, which also loads now in category.php.
See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@34110 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 03:09:37 +00:00
Scott Taylor 1ccae571d9 Move Walker_Page and Walker_PageDropdown into their own files via svn cp. Remove them from post-template.php. Load them in post.php.
`post-template.php` loads after `post.php` in `wp-settings.php`. It could probably also be loaded in `post.php`, but avoiding that for the moment.

See #33413.


git-svn-id: https://develop.svn.wordpress.org/trunk@34109 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:58:40 +00:00
Scott Taylor 2d5945f0fc In wp_link_pages(), ensure that $prev is greater than 0.
Props betzster.
Fixes #25273.


git-svn-id: https://develop.svn.wordpress.org/trunk@34108 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:45:33 +00:00
Boone Gorges 6064924c18 Send password-change email notifications via hook.
`wp_password_change_notification()` is now called at the 'after_password_reset'
action, rather than being invoked directly from the `reset_password()` function.

In order to make it possible to call `wp_password_change_notification()` as a
`do_action()` callback, the function signature has to be changed so that the
`$user` parameter is expected to be a value rather than a reference. Since
PHP 5.0, objects are passed by reference, so `&$user` was unnecessary anyway.

Props dshanske, thomaswm.
See #33587.

git-svn-id: https://develop.svn.wordpress.org/trunk@34107 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:44:41 +00:00
boonebgorges 05d4233956 Send comment notification emails via a hooked function.
Previously, `wp_notify_postauthor()` and `wp_notify_moderator()` were called
directly from `wp_new_comment()`, making it difficult to modify or suppress
default notification emails.

Props dshanske, thomaswm.
See #33587.

git-svn-id: https://develop.svn.wordpress.org/trunk@34106 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 02:16:02 +00:00
Dion Hulse 9555882e90 When running on windows systems, normalise the capitalisation of the drive letter for more reliable string comparisons.
Props tyxla
Fixes #33265


git-svn-id: https://develop.svn.wordpress.org/trunk@34104 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-14 01:58:03 +00:00