Commit Graph

66 Commits

Author SHA1 Message Date
Felix Arntz
af50e8eb2c Multisite: Improve caching in WP_Site_Query by ignoring the $fields argument.
Prior to this change there were two different cache keys used for the same query. That is because regardless of the `$fields` argument, the query response will be the same.

Props spacedmonkey.
Fixes #41197.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40909 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-07-14 21:25:44 +00:00
Jeremy Felt
f940beae2b Multisite: Add lang_id support to WP_Site_Query.
Sites can now be queried by `lang_id`, `lang__in`, and `lang__not_in`.

Props ocean90.
Fixes #40196.

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


git-svn-id: http://core.svn.wordpress.org/trunk@40247 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-03-27 19:48:52 +00:00
Aaron Jorbin
82911b1756 Cache API: introduce wp_cache_get_last_changed to improve DRY
One thing fairly common to the cache groups is a block of code to look to see when the cache was last changed, and if there isn't one, to set it for the current microtime(). It appears in 8 different places in core. This adds a new helper `wp_cache_get_last_changed` to DRY things up a bit.

Since `wp-includes/cache.php` isn't guaranteed to be loaded, this new function is in `wp-includes/functions.php`

Props spacedmonkey, desrosj.
Fixes #37464.


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


git-svn-id: http://core.svn.wordpress.org/trunk@38792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-21 02:54:34 +00:00
Gary Pendergast
af69f4ab1a General: Restore usage of $wpdb, instead of $this->db.
Hiding the `$wpdb` global behind a property decreases the readability of the code, as well as causing irrelevant output when dumping an object.

Reverts [38275], [38278], [38279], [38280], [38387].
See #37699.


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


git-svn-id: http://core.svn.wordpress.org/trunk@38711 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-10-10 06:38:31 +00:00
Jeremy Felt
02c8bd1909 Multisite: Provide $join as a possible SQL clause to the sites_clauses filter.
Previously, `compact()` provided a non existent `$join` and could cause confusion for anyone attempting to extend `WP_Site_Query` with their own tables. This aligns with the current behavior in `WP_Network_Query`.

Props johnjamesjacoby.
Fixes #37922.

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


git-svn-id: http://core.svn.wordpress.org/trunk@38574 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-09-20 17:49:28 +00:00
Sergey Biryukov
1cdb4b52af Docs: Correct description for domain and path arguments in WP_Network_Query::__construct().
See #32504.
Built from https://develop.svn.wordpress.org/trunk@38595


git-svn-id: http://core.svn.wordpress.org/trunk@38538 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-09-13 13:10:32 +00:00
Scott Taylor
af1fb6b8d2 Query: use correct description in the docblock for $number in WP_Comment_Query, WP_Network_Query, and WP_Site_Query.
Props flixos90.
Fixes #37621.

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


git-svn-id: http://core.svn.wordpress.org/trunk@38277 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-23 14:41:29 +00:00
Scott Taylor
e7ffad7fac Query: add a protected field, $db, (composition, as it were) to WP_*_Query classes to hold the value for the database abstraction, instead of importing the global $wpdb into every method that uses it. Reduces the number of global imports by 32.
See #37699.

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


git-svn-id: http://core.svn.wordpress.org/trunk@38216 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-18 18:21:31 +00:00
Sergey Biryukov
c277d565e5 Docs: Clarify the fields argument description in WP_Site_Query::__construct().
Props ramiy.
See #35791.
Built from https://develop.svn.wordpress.org/trunk@38103


git-svn-id: http://core.svn.wordpress.org/trunk@38044 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-19 13:15:28 +00:00
Sergey Biryukov
eca1a22719 Multisite: Correct default values for orderby and order in WP_Site_Query::__construct().
Add a unit test.

Props ramiy, SergeyBiryukov.
See #35791.
Built from https://develop.svn.wordpress.org/trunk@38085


git-svn-id: http://core.svn.wordpress.org/trunk@38026 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-17 23:30:31 +00:00
Jeremy Felt
602f231a26 Docs: Correct the description of the $network_id in WP_Site_Query.
Passing 0 for `network_id` results in a query across all networks.

See #35791.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37949 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-07 20:36:30 +00:00
Jeremy Felt
d11c9de613 Multisite: Don't store max_num_pages in WP_Site_Query query cache.
This value can be easily calculated with available data.

Props spacedmonkey.
Fixes #35791.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37943 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-07-07 15:32:29 +00:00
Jeremy Felt
12809c4735 Multisite: Remove unused site_count property from WP_Site_Query.
Related: [37837].

Props flixos90.
See #35791.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37816 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-26 14:33:28 +00:00
Jeremy Felt
6f3f00ea97 Multisite: Change WP_Network id property to an integer.
For consistency and developer sanity.

Props flixos90.
Fixes #37050.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-26 14:26:29 +00:00
Jeremy Felt
b4df848b6d Multisite: Add search column support to WP_Site_Query.
`domain` and/or `path` can be used to specify which column(s) should be searched.

See #35791.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-06-16 23:09:28 +00:00
Jeremy Felt
2dd1e72f10 Multisite: Introduce WP_Site_Query
Provides a consistent way to query `$wpdb->blogs` for `WP_Site` objects based on domain, path, site ID, network ID, and more.

Introduces and uses `update_site_cache()` and `_prime_site_caches()` to maintain a cached list of `WP_Site` objects for use in multiple queries.

Props spacedmonkey, flixos90, DrewAPicture, jeremyfelt, ocean90.
See #35791.

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


git-svn-id: http://core.svn.wordpress.org/trunk@37445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-05-20 22:04:27 +00:00