Commit Graph

34 Commits

Author SHA1 Message Date
Dominik Schilling (ocean90)
daa477e3b8 Transients: If get_option( $transient_timeout ) returns false, don't bother trying to delete the transient in get_transient().
props jamesgol, ericmann.
fixes #30380.

git-svn-id: https://develop.svn.wordpress.org/trunk@33110 602fd350-edb4-49c9-b593-d223f7449a82
2015-07-07 16:44:08 +00:00
Scott Taylor
4d28f9a7de In get_site_option() and get_option(), ensure that $notoptions is an array before writing to it. Prevents a flood of Cannot use a scalar value as an array, because $notoptions is otherwise set to the result of wp_cache_get(), which returns mixed.
Props hauvong.
Fixes #31147.


git-svn-id: https://develop.svn.wordpress.org/trunk@32943 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-25 19:00:51 +00:00
Scott Taylor
9a5af9d3d2 Fix doc blocks for option.php.
See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32613 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-26 22:16:15 +00:00
Drew Jaynes
d9b911e477 Update the DocBlock description for update_option() to account for the ability to define the $autoload parameter, added in 4.2.
Props Clorith for the initial patch.
Fixes #32331.


git-svn-id: https://develop.svn.wordpress.org/trunk@32481 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-10 16:58:00 +00:00
Boone Gorges
b9e222fd6a Allow $autoload setting to be changed for existing options using update_option().
[31628] made it possible to pass an `$autoload` param to `update_option()` that
applies when the option does not yet exist in the database. The current
changeset introduces parity for existing options: the `$autoload` setting
for existing options can be changed via the `$autoload` parameter. For internal
simplicity, `$autoload` is ignored for existing options when `$value` is not
also changed.

This changeset also moves `update_option()` tests into their own class.

Props dd32.
Fixes #26394.

git-svn-id: https://develop.svn.wordpress.org/trunk@31640 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-06 13:56:44 +00:00
Boone Gorges
67324a9234 Introduce $autoload parameter to update_option().
When creating an option via `add_option()`, the `$autoload` param allows you to
tell WP whether the option should be loaded as part of the 'alloptions' cache
during every pageload. `update_option()`, when used with a non-existent option
calls `add_option()` internally. The new `$autoload` param in `update_option()`
is passed along to `add_option()` in cases where the option does not yet exist.

The associated unit tests are skipped on multisite due to an issue that causes
`WP_INSTALLING` to force cache misses. See #31130.

Props codix, nofearinc, MikeHansenMe.
Fixes #26394.

git-svn-id: https://develop.svn.wordpress.org/trunk@31628 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-05 19:13:00 +00:00
Boone Gorges
94791cd8f2 Respect 'default_option_' filters during early sanity checks in add_option() and update_option().
`add_option()` and `update_option()` both call `get_option()` to compare the
value passed to the function with any existing value for the given option name.
When a `'default_option_'` filter is in place to change the default value of
an option, `add_option()` and `update_option()` ought to check against the
filtered value, rather than a hardcoded `false`, in order to determine whether
a prior value exists.

Props GregLone, tyxla.
Fixes #31047.

git-svn-id: https://develop.svn.wordpress.org/trunk@31473 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-18 19:13:43 +00:00
John Blackbourn
b384c8cf25 Add $expiration as a parameter to the pre_set_transient_{$transient} filter.
Props mgibbs189
Fixes #30576


git-svn-id: https://develop.svn.wordpress.org/trunk@31414 602fd350-edb4-49c9-b593-d223f7449a82
2015-02-11 17:11:18 +00:00
Andrew Nacin
4857c6996c Allow $autoload in add_option() to receive false.
props dllh.
fixes #31119.


git-svn-id: https://develop.svn.wordpress.org/trunk@31278 602fd350-edb4-49c9-b593-d223f7449a82
2015-01-25 07:50:31 +00:00
Dion Hulse
1e721a144b Add braces around a Docblock in an if statement, although not required by PHP, this is required by our coding standards for readability.
Introduced in 3.9 with r27365
See #25905


git-svn-id: https://develop.svn.wordpress.org/trunk@30886 602fd350-edb4-49c9-b593-d223f7449a82
2014-12-16 05:51:49 +00:00
Scott Taylor
ee388b9852 Improve various @param docs.
See #30224.


git-svn-id: https://develop.svn.wordpress.org/trunk@30673 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 22:55:08 +00:00
Drew Jaynes (DrewAPicture)
27a0f38b9e Docs Formatting: Backtick-escape inline code for all dynamic hook docs in wp-includes/option.php.
Affects DocBlocks for the following hooks:
* `pre_option_ . $option`
* `default_option_ . $option`
* `option_ . $option`
* `pre_update_option_ . $option`
* `update_option_{$option}`
* `add_option_{$option}`
* `delete_option_$option`
* `delete_transient_ . $transient`
* `pre_transient_ . $transient`
* `transient_ . $transient`
* `pre_set_transient_ . $transient`
* `set_transient_ . $transient`
* `pre_site_option_ . $option`
* `default_site_option_ . $option`
* `site_option_ . $option`
* `pre_add_site_option_ . $option`
* `add_site_option_{$option}`
* `pre_delete_site_option_ . $option`
* `delete_site_option_{$option}`
* `pre_update_site_option_ . $option`
* `update_site_option_{$option}`
* `delete_site_transient_ . $transient`
* `pre_site_transient_ . $transient`
* `site_transient_ . $transient`
* `pre_set_site_transient_ . $transient`
* `set_site_transient_ . $transient`

See #30552.


git-svn-id: https://develop.svn.wordpress.org/trunk@30652 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 11:52:33 +00:00
Drew Jaynes (DrewAPicture)
3cc10d77a0 Remove redundant and erroneous @uses tag from most core inline documentation.
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.

Fixes #30191.


git-svn-id: https://develop.svn.wordpress.org/trunk@30105 602fd350-edb4-49c9-b593-d223f7449a82
2014-10-30 01:04:55 +00:00
Andrew Ozz
b343d48221 Fix the wp-settings-* cookies used in getUserSetting()/setUserSetting(). They should be set without COOKIE_DOMAIN to work properly for sub-domains. Fixes #29095.
git-svn-id: https://develop.svn.wordpress.org/trunk@29478 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-13 02:46:18 +00:00
Andrew Ozz
6bac38232c Add blog_id to the wp-settings-* cookie (used for storing user state) to prevent it being overloaded on sub-domain sites. Fixes #29095.
git-svn-id: https://develop.svn.wordpress.org/trunk@29362 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-02 20:08:52 +00:00
Dominik Schilling (ocean90)
ea34a0bdf7 Replace is_https_url() with 'https' === parse_url( $url, PHP_URL_SCHEME ).
see #28427, #28487.

git-svn-id: https://develop.svn.wordpress.org/trunk@29311 602fd350-edb4-49c9-b593-d223f7449a82
2014-07-27 17:45:34 +00:00
John Blackbourn
15e019d99e Conditionally set the the secure flag on the test cookie, post password cookie, settings cookies, and comment author cookies depending on whether the front end and/or admin area are served over https. Fixes #28427
git-svn-id: https://develop.svn.wordpress.org/trunk@28895 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-29 13:24:55 +00:00
Drew Jaynes (DrewAPicture)
e535d7fe6e Improve inline documention for set_transient() and set_site_transient() to specify the 45- and 40-character limits for their respective transient name values.
Props edwin-at-studiojoyo.com for the original patch.
See #15058, #13310. Fixes #28467.


git-svn-id: https://develop.svn.wordpress.org/trunk@28735 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-11 16:32:06 +00:00
Sergey Biryukov
ff3f4e888f Add a note about return value in case of an expired transient to get_transient() and get_site_transient().
props ruud@joyo.
fixes #28462.

git-svn-id: https://develop.svn.wordpress.org/trunk@28676 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-05 15:33:30 +00:00
Dominik Schilling (ocean90)
76a167ac5f Introduce pre_update_option filter.
Filter is available in update_option() and allows to filter any option before its value is (maybe) serialized and updated.

see #27504.
props westonruter.


git-svn-id: https://develop.svn.wordpress.org/trunk@27815 602fd350-edb4-49c9-b593-d223f7449a82
2014-03-28 13:56:44 +00:00
Andrew Nacin
fbb2e1dc89 Transients: Allow a non-expiring transient to be updated with an expiry.
props shahpranaf, sandyr.
fixes #22807.


git-svn-id: https://develop.svn.wordpress.org/trunk@27719 602fd350-edb4-49c9-b593-d223f7449a82
2014-03-25 18:22:49 +00:00
Drew Jaynes
a05f04683e Inline documentation for hooks in wp-includes/option.php.
Props siobhyb for the initial patch. Props DrewAPicture, kpdesign.
Fixes #25905.


git-svn-id: https://develop.svn.wordpress.org/trunk@27365 602fd350-edb4-49c9-b593-d223f7449a82
2014-03-02 23:34:08 +00:00
Drew Jaynes
647f80595d Remove all @package and @subpackage PHPDoc tags not at the file- or class-levels in core.
See #27200.


git-svn-id: https://develop.svn.wordpress.org/trunk@27262 602fd350-edb4-49c9-b593-d223f7449a82
2014-02-25 17:13:08 +00:00
Scott Taylor
36a5af537e Prefix the notoptions cache key in the multisite site-options group with $wpdb->siteid to avoid collisions and race conditions when using a fancy multi-network setup. Adds unit test.
Fixes #25883.



git-svn-id: https://develop.svn.wordpress.org/trunk@26304 602fd350-edb4-49c9-b593-d223f7449a82
2013-11-21 19:06:26 +00:00
Andrew Nacin
350c015f94 In update_option(), call the update_option hook before the DB update.
Reverses a regression from [25664].

props calin.
fixes #25705 for trunk.


git-svn-id: https://develop.svn.wordpress.org/trunk@25925 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-26 02:56:24 +00:00
Andrew Nacin
0a13564db8 When queries fail in option functions, bail before setting cache.
Standardize variables so things are less confusing.

fixes #25015.


git-svn-id: https://develop.svn.wordpress.org/trunk@25664 602fd350-edb4-49c9-b593-d223f7449a82
2013-10-02 20:42:39 +00:00
Andrew Nacin
80653c01a1 Always pass integer expirations to cache backends.
props SergeyBiryukov, andreasnrb.
fixes #25308.


git-svn-id: https://develop.svn.wordpress.org/trunk@25451 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-16 17:42:49 +00:00
Dion Hulse
23d3b372d7 Fix the action that set_site_transient() fires so as not to include the private option prefix. This brings set_site_transient() back in line with it's documented behaviour, and the behaviour of all other transient functions. Fixes #25213
git-svn-id: https://develop.svn.wordpress.org/trunk@25350 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-11 08:45:43 +00:00
Scott Taylor
22278ec6a9 Introduce wp_using_ext_object_cache() - mimic wp_suspend_cache_invalidation() and discourage direct access to $_wp_using_ext_object_cache, cleaning up importing of globals in functions and provides function to modify that global. Loads the packaged object cache when an external cache hasn't been loaded or doesn't contain wp_cache_init().
Fixes #21401.



git-svn-id: https://develop.svn.wordpress.org/trunk@25289 602fd350-edb4-49c9-b593-d223f7449a82
2013-09-06 18:09:24 +00:00
Andrew Ozz
a380ed51f7 User state settings:
- Allow empty cookie value to be saved.
- Use get_current_user_id() instead of wp_get_current_user().
- Use is_user_member_of_blog().
- Sanitize both name and value in wp_set_all_user_settings().
- Some var names and code formatting cleanup.
Fixes #24921.

git-svn-id: https://develop.svn.wordpress.org/trunk@25109 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-23 21:42:23 +00:00
Scott Taylor
20fa8b87b4 Improve inline docs for function params that can be serialized when non-scalar. Fixes #18488.
git-svn-id: https://develop.svn.wordpress.org/trunk@25076 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-21 21:10:23 +00:00
Jon Cave
790f9feb68 Pass false returned for timed out transients through transient_$transient filter.
This brings the same behaviour as external object caches to the default database
backend.

Props johnbillion. Fixes #24685.


git-svn-id: https://develop.svn.wordpress.org/trunk@25075 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-21 19:13:35 +00:00
Jon Cave
5be5a1412e Introduce a notoptions cache for site options.
Props wonderboymusic. Fixes #19008.


git-svn-id: https://develop.svn.wordpress.org/trunk@25043 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-16 22:41:23 +00:00
Andrew Nacin
b43712e0f7 New develop.svn.wordpress.org repository based on the old core.svn repository.
* All WordPress files move to a src/ directory.
 * New task runner (Grunt), configured to copy a built WordPress to build/.
 * svn:ignore and .gitignore for Gruntfile.js, wp-config.php, and node.js.
 * Remove Akismet external from develop.svn. Still exists in core.svn.
 * Drop minified files from src/. The build process will now generate these.

props koop.
see #24976.

and see http://wp.me/p2AvED-1AI.



git-svn-id: https://develop.svn.wordpress.org/trunk@25001 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-07 05:25:25 +00:00