Commit Graph

412 Commits

Author SHA1 Message Date
John Blackbourn
c19f56747f Docs: Various docblock corrections and improvements.
See #50768


git-svn-id: https://develop.svn.wordpress.org/trunk@49597 602fd350-edb4-49c9-b593-d223f7449a82
2020-11-14 16:33:52 +00:00
Sergey Biryukov
aac637dcdc Text Changes: Unify various "Back to..." vs. "Return to..." vs. "Go to..." strings.
Standardize on "Go to..." as a more appropriate option for most cases.

Props garrett-eclipse, kharisblank, audrasjb, ramiy, valentinbora.
Fixes #47235.

git-svn-id: https://develop.svn.wordpress.org/trunk@49539 602fd350-edb4-49c9-b593-d223f7449a82
2020-11-09 10:51:52 +00:00
Peter Wilson
088fd3cd39 Taxonomy: Revert Light-weight/partial term counts.
Partial revert of [49141], [49171], [49316].

All functional changes are removed, appropriate term counting unit tests are retained.

See #40351.


git-svn-id: https://develop.svn.wordpress.org/trunk@49451 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 04:57:16 +00:00
Peter Wilson
db2a1ba75d Taxonomy: Fix values passed to actions in wp_modify_term_count_by_now().
Replace the `WP_Taxonomy` object with the taxonomy slug in the values passed to the actions `edit_term_taxonomy` and `edited_term_taxonomy` within `wp_modify_term_count_by_now()`.

Follow up to [49141], [49171].
Props Chouby, lcyh78.
Fixes #40351.



git-svn-id: https://develop.svn.wordpress.org/trunk@49316 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 23:05:22 +00:00
Sergey Biryukov
97b2f07d2e Coding Standards: Replace alias PHP functions with the canonical names.
Using the canonical function name for PHP functions is strongly recommended, as aliases may be deprecated or removed without (much) warning.

This replaces all uses of the following:
* `join()` with `implode()`
* `sizeof()` with `count()`
* `is_writeable()` with `is_writable()`
* `doubleval()` with a `(float)` cast

In part, this is a follow-up to #47746.

Props jrf.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@49193 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:25:10 +00:00
Peter Wilson
36ef9cbca9 Taxonomy: Improve performance of term recounting database queries.
When modifying terms assigned to an object, replace full term recounts with incrementing/decrementing the count as appropriate. This provides a significant performance boost on sites with a high number of term/object relationships and/or posts.

Introduces the functions `wp_increment_term_count()`, `wp_decrement_term_count()`, `wp_modify_term_count_by()` and `wp_modify_term_count_by_now()` for updating the term count.

Introduces the function `_wp_prevent_term_counting()` for preventing double counting on posts that are about to transition.

Adds the parameter `update_count_by_callback` to `register_taxonomy()` to allow developers to use a custom callback for incrementing or decrementing a term count.

Props boonebgorges, davidbaumwald, hellofromTonya, johnbillion, lcyh78, mattoperry, peterwilsoncc, rebasaurus, whyisjake.
Fixes #40351.



git-svn-id: https://develop.svn.wordpress.org/trunk@49141 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 00:49:52 +00:00
Sergey Biryukov
79703088c4 General: Replace older-style PHP type conversion functions with type casts.
This improves performance, readability, and consistency throughout core.

* `intval()` → `(int)`
* `strval()` → `(string)`
* `floatval()` → `(float)`

Props ayeshrajans.
Fixes #42918.

git-svn-id: https://develop.svn.wordpress.org/trunk@49108 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-08 21:13:57 +00:00
Sergey Biryukov
da93663d01 Code Modernization: Correct the check for parent argument in wp_insert_term() and wp_update_term().
PHP 8 changes the way string to number comparisons are performed: https://wiki.php.net/rfc/string_to_number_comparison

In particular, checking if a non-empty, non-numeric string is greater than zero in PHP 8 evaluates to `true`, not `false`.

For `wp_insert_term()`, this resulted in a "Parent term does not exist" error for a non-numeric string, instead of discarding the value.

By explicitly casting the value to `int`, we make sure to compare both values as numbers, rather than a string and a number.

Follow-up to [29196], [29830], [29867].

See #50913.

git-svn-id: https://develop.svn.wordpress.org/trunk@49043 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-25 00:02:39 +00:00
John Blackbourn
d34a21c950 Docs: Various docblock corrections and improvements.
See #50768

git-svn-id: https://develop.svn.wordpress.org/trunk@48941 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-04 20:39:47 +00:00
Sergey Biryukov
380145e073 Docs: Update the description for the $legacy parameter of wp_count_terms() for consistency with get_terms().
Follow-up to [48840].

See #36399.

git-svn-id: https://develop.svn.wordpress.org/trunk@48843 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-23 00:06:04 +00:00
Felix Arntz
0228dd6a5d Taxonomy: Allow for wp_count_terms( $args ) signature, making passing a taxonomy optional.
This brings `wp_count_terms()` in line with other taxonomy functions such as `get_terms()` which technically no longer require a taxonomy. Similar to the previously modified functions, no deprecation warning is triggered when using the legacy signature.

Fixes #36399.


git-svn-id: https://develop.svn.wordpress.org/trunk@48840 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-21 22:30:06 +00:00
Sergey Biryukov
a84a5029be Docs: Consistently use third-person singular verbs for various filter descriptions, per the documentation standards.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@48782 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-11 00:32:22 +00:00
John Blackbourn
1c6ca0998c Docs: Various fixes and improvements to inline documentation.
See #49572

git-svn-id: https://develop.svn.wordpress.org/trunk@48695 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 19:12:02 +00:00
Sergey Biryukov
cded42aa94 Taxonomy: Rename the default_taxonomy_$taxonomy option key to default_term_$taxonomy.
This better reflects the purpose of the option.

Follow-up to [48356], [48480].

See #43517.

git-svn-id: https://develop.svn.wordpress.org/trunk@48665 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-28 15:40:35 +00:00
Sergey Biryukov
2547c15fee Coding Standards: Reformat a condifion for default taxonomy terms in map_meta_cap() for better readability.
Follow-up to [48356], [48480].

See #43517.

git-svn-id: https://develop.svn.wordpress.org/trunk@48664 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-28 14:40:06 +00:00
Sergey Biryukov
b7a5c75686 Docs: Document that various metadata functions return false for an invalid ID.
Props salcode.
See #40519.

git-svn-id: https://develop.svn.wordpress.org/trunk@48658 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-28 10:13:50 +00:00
Sergey Biryukov
9bd4234bf6 Docs: Correct documentation for wp_insert_term().
The function is used for adding a new term, not updating an existing one.

Props audrasjb, bmartinent.
Fixes #50753.

git-svn-id: https://develop.svn.wordpress.org/trunk@48600 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-24 12:17:54 +00:00
Sergey Biryukov
fc1e77f42b Docs: Correct some documentation for wp_update_term().
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48599 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-24 12:02:47 +00:00
Sergey Biryukov
b932c543a2 Docs: Miscellaneous DocBlock corrections.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48591 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-23 21:53:43 +00:00
John Blackbourn
81a12a7bec Docs: Another pass at some inline docs fixes mostly made by PHPCBF.
See #49572, #50744

git-svn-id: https://develop.svn.wordpress.org/trunk@48590 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-23 21:09:04 +00:00
Sergey Biryukov
c843cf19c3 Taxonomy: Make some adjustments to handling default terms for custom taxonomies:
* Move default term assignment from `wp_set_object_terms()` to `wp_insert_post()`.
* Make sure the passed taxonomy list overwrites the existing list if not empty.
* Remove the default term option on `unregister_taxonomy()`.
* Prevent deletion of the default term in `wp_delete_term()`.

Props enrico.sorcinelli, TimothyBlynJacobs.
See #43517.

git-svn-id: https://develop.svn.wordpress.org/trunk@48480 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-14 16:39:44 +00:00
Jake Spurlock
0dcbb5b02d Coding standards: Fix a few phpcs errors to get tests passing.
See [48356], #43517.


git-svn-id: https://develop.svn.wordpress.org/trunk@48358 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-07 03:53:14 +00:00
Jake Spurlock
abfd9441b7 Taxonomy: Add support for default terms for custom taxonomies.
The new default_term argument is added to `register_taxonomy()` allowing a user to define the default term `name` and optionally `slug` and `description`. 

Fixes #43517.

Props enrico.sorcinelli, SergeyBiryukov, desrosj, davidbaumwald, whyisjake.



git-svn-id: https://develop.svn.wordpress.org/trunk@48356 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-07 00:53:41 +00:00
Sergey Biryukov
f5dcde26e5 Taxonomy: Introduce saved_term and saved_{$taxonomy} actions to complement created_term and created_{$taxonomy}.
This allows for hooking into both the create and update events with a single callback, in the same way that is already possible for posts via the `save_post` and `save_post_{$post->post_type}` actions.

Props dlh.
Fixes #48416.

git-svn-id: https://develop.svn.wordpress.org/trunk@48314 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-05 11:11:46 +00:00
Sergey Biryukov
dc3c92d08f Docs: Improve documentation for the $prev_value parameter and return result of various metadata update functions.
Props stevenlinx.
Fixes #50502. See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48214 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-29 21:20:11 +00:00
Sergey Biryukov
6361798918 Docs: Improve documentation for optional parameters per the documentation standards.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48197 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-28 11:47:45 +00:00
Sergey Biryukov
2daeac989d Taxonomy: Make sure update_object_term_cache() caches all terms that were not already cached.
Due to an unintended `break` instruction from a previous iteration, the function cached only one term in each taxonomy.

Follow-up to [48055].

Props Chouby.
Fixes #50352.

git-svn-id: https://develop.svn.wordpress.org/trunk@48187 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-26 22:29:27 +00:00
Sergey Biryukov
cdf3431ac9 Docs: Remove @staticvar tags from core.
The tag was supported in phpDocumentor 1.x, but is no longer supported in 2.x and 3.x.

Usage of static variables is considered an internal implementation detail and has no information value for someone reading the docs.

Props alishanvr, jrf.
Fixes #50426.

git-svn-id: https://develop.svn.wordpress.org/trunk@48109 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-20 12:38:55 +00:00
Sergey Biryukov
5e2ef3d937 Docs: Capitalize "ID", when referring to a post ID, term ID, etc. in a more consistent way.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@48104 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-20 12:00:07 +00:00
Sergey Biryukov
eff94648d7 Coding Standards: Rename the $clean or $ids variable in several functions to $non_cached_ids for clarity.
* `_get_non_cached_ids()`
* `update_meta_cache()`
* `update_object_term_cache()`

See #49542.

git-svn-id: https://develop.svn.wordpress.org/trunk@48065 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-16 19:07:04 +00:00
Jake Spurlock
def933ced7 Cache API: Add wp_cache_get_multiple() to core functions.
* `update_object_term_cache`
* `update_meta_cache`
* `_get_non_cached_ids`

See [47938].

Fixes #50352.

Props spacedmonkey, tillkruss, lukecavanagh. 



git-svn-id: https://develop.svn.wordpress.org/trunk@48055 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-16 06:28:57 +00:00
Sergey Biryukov
eb1c55a7ac Docs: Document that get_tags() returns a WP_Error object if any of the specified taxonomies do not exist.
Props coffee2code.
Fixes #50344.

git-svn-id: https://develop.svn.wordpress.org/trunk@47930 602fd350-edb4-49c9-b593-d223f7449a82
2020-06-09 11:12:57 +00:00
Sergey Biryukov
2e39930d71 Docs: Adjust the documentation for the new ID alias in get_term_by() for consistency with get_user_by().
Follow-up to [47865].

See #45163.

git-svn-id: https://develop.svn.wordpress.org/trunk@47870 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-30 10:06:49 +00:00
Jake Spurlock
7b13f5abd8 Taxonomy: Extend get_term_by to accept ID as a term parameter.
Similar to `get_user_by`, both `ID` and `id` should be able to accepted.

Fixes #45163.
Props emrikol, esoj.
 


git-svn-id: https://develop.svn.wordpress.org/trunk@47865 602fd350-edb4-49c9-b593-d223f7449a82
2020-05-29 22:41:25 +00:00
Sergey Biryukov
3659b767f1 Docs: Synchronize parameter documentation for various metadata functions, update per the documentation standards.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@47611 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-22 10:29:34 +00:00
Sergey Biryukov
b6391847b4 Docs: Document the default value of $single and $prev_value parameters in various metadata functions.
Props denisco.
See #49572.

git-svn-id: https://develop.svn.wordpress.org/trunk@47610 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-22 09:38:12 +00:00
Sergey Biryukov
4d601e57b6 Docs: Add a @since note for un-deprecated category_link and tag_link filters.
Follow-up to [47576].

See #49759.

git-svn-id: https://develop.svn.wordpress.org/trunk@47578 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-14 08:13:18 +00:00
Jake Spurlock
7d4a746f27 Taxonomy: Un-depracate category_link and tag_link filters.
Depracating these filter might have been an accident, so let's restore.

Props SergeyBiryukov, audrasjb, peterwilsoncc.
Fixes #49759. 


git-svn-id: https://develop.svn.wordpress.org/trunk@47576 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-14 00:31:18 +00:00
Sergey Biryukov
d8c502e966 Coding Standards: Use strict type check for in_array() and array_search().
This addresses all the remaining `WordPress.PHP.StrictInArray.MissingTrueStrict` issues in core.

Includes minor code layout fixes for better readability.

Follow-up to [47550].

See #49542.

git-svn-id: https://develop.svn.wordpress.org/trunk@47557 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-09 15:41:04 +00:00
Sergey Biryukov
0b4e2c4604 Coding Standards: Use strict type check for in_array() and array_search() where strings are involved.
This reduces the number of `WordPress.PHP.StrictInArray.MissingTrueStrict` issues from 486 to 50.

Includes minor code layout fixes for better readability.

See #49542.

git-svn-id: https://develop.svn.wordpress.org/trunk@47550 602fd350-edb4-49c9-b593-d223f7449a82
2020-04-05 03:00:44 +00:00
Sergey Biryukov
130751cda3 Coding Standards: Use Yoda conditions where appropriate.
See #49222.

git-svn-id: https://develop.svn.wordpress.org/trunk@47219 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-09 16:52:28 +00:00
John Blackbourn
c7caac7289 Taxonomy: Clarify the docs for the return values of the term_exists() function.
Props dotancohen, sathyapulse

Fixes #43345

git-svn-id: https://develop.svn.wordpress.org/trunk@47205 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-07 17:46:51 +00:00
Sergey Biryukov
658ff7a581 Docs: Add a @since note for [47186].
See #48558.

git-svn-id: https://develop.svn.wordpress.org/trunk@47187 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-05 06:31:05 +00:00
Sergey Biryukov
e4d8eac50f Taxonomy: In register_taxonomy(), return the registered taxonomy object on success, for consistency with register_post_type().
Props krynes, SergeyBiryukov.
Fixes #48558.

git-svn-id: https://develop.svn.wordpress.org/trunk@47186 602fd350-edb4-49c9-b593-d223f7449a82
2020-02-05 06:24:16 +00:00
Sergey Biryukov
cfc3b57488 Docs: Improve inline comments per the documentation standards.
Includes minor code layout fixes for better readability.

See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@47122 602fd350-edb4-49c9-b593-d223f7449a82
2020-01-29 00:43:23 +00:00
Sergey Biryukov
a3e674d4f9 Docs: Various documentation fixes for unit test factories.
See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@46985 602fd350-edb4-49c9-b593-d223f7449a82
2019-12-18 00:17:54 +00:00
John Blackbourn
726d3a1d9c Docs: Increase the specificity of various docblock parameter types and return types.
See #48303

git-svn-id: https://develop.svn.wordpress.org/trunk@46823 602fd350-edb4-49c9-b593-d223f7449a82
2019-12-06 22:41:26 +00:00
Sergey Biryukov
cde71eed52 Docs: In various @return tags, list the expected type first, instead of WP_Error.
See #48303.

git-svn-id: https://develop.svn.wordpress.org/trunk@46696 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-11 02:41:15 +00:00
Sergey Biryukov
26dec96b21 Docs: Use the {@see ...} tag for the replacement in @deprecated tags, so that Developer Reference could automatically link to the replacement.
Props jrf.
See #48255.

git-svn-id: https://develop.svn.wordpress.org/trunk@46685 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-09 13:03:02 +00:00
Sergey Biryukov
ae2ebb8b18 Coding Standards: Consistently use do_action_deprecated() and apply_filters_deprecated() for deprecated hooks.
Props jrf.
See #48255.

git-svn-id: https://develop.svn.wordpress.org/trunk@46684 602fd350-edb4-49c9-b593-d223f7449a82
2019-11-09 12:57:27 +00:00