In `remove_user_from_blog()`, avoid a potentially expensive `IN` query before invalidating the reassigned post and link caches.

Props kovshenin.
Fixes #25545. (Again.)


Built from https://develop.svn.wordpress.org/trunk@27161


git-svn-id: http://core.svn.wordpress.org/trunk@27027 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Rather than removing the 3rd argument in `WP_Object_Cache::delete()`, mark it as `$deprecated`.

See [27064].
Props SergeyBiryukov.
Fixes #22478.


Built from https://develop.svn.wordpress.org/trunk@27162


git-svn-id: http://core.svn.wordpress.org/trunk@27028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Partially revert [27101], [27102], [27141], and [27142]. Those commits introduced new functions to sync up cache invalidation events. The current commit alters existing internals.

"The cache invalidation with static was introduced in r9102 with version 2.7. Multisite wasn't in core back then, so something like switch_to_blog() wasn't a concern, but now it breaks if you switch the blog in between calls to clean_term_cache."

This solution is simpler. All unit tests pass. Removes unnecessary tests linked to removed functions.

Props kovshenin.
Fixes #14485, #22526.


Built from https://develop.svn.wordpress.org/trunk@27163


git-svn-id: http://core.svn.wordpress.org/trunk@27029 1a063a9b-81f0-0310-95a4-ce76da25c4cd