Commit Graph

381 Commits

Author SHA1 Message Date
Andrew Nacin
f44d1d009e WP_Image_Editor: the last stand.
* Have wp_get_image_editor() rather than WP_Image_Editor::get_instance(). Having static factory methods would be less confusing if there weren't also static methods tied to individual editor implementations.
 * Lazy-load the WP_Image_Editor base class and editor implementations.
 * Have WP_Image_Editor_GD::supports_mime_type() actually check which types it supports.
 * Deprecate gd_edit_image_support() in favor of wp_image_editor_supports().

props DH-Shredder, scribu, markoheijnen. fixes . see .



git-svn-id: https://develop.svn.wordpress.org/trunk@22817 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-22 09:52:16 +00:00
Ryan Boren
b21172a14a Don't assign wp_the_query to wp_query by reference. Removing the ref avoids accidentally stomping wp_the_query.
Props scribu, wpmuguru
fixes 


git-svn-id: https://develop.svn.wordpress.org/trunk@22434 602fd350-edb4-49c9-b593-d223f7449a82
2012-11-07 20:03:28 +00:00
Ryan Boren
7790af3154 Introduce WP_Image_Editor, WP_Image_Editor_Imagick, and WP_Image_Editor_GD. Abstracts image editing API and adds support for ImageMagick.
Props DH-Shredder, kurtpayne, markoheijnen
see 


git-svn-id: https://develop.svn.wordpress.org/trunk@22094 602fd350-edb4-49c9-b593-d223f7449a82
2012-10-01 20:59:06 +00:00
Andrew Nacin
ab2f77ebd0 Move WP_Embed into its own file. props ocean90. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@21999 602fd350-edb4-49c9-b593-d223f7449a82
2012-09-25 08:39:26 +00:00
Andrew Nacin
bb3df46536 We no longer need to check function_exists() for date_default_timezone_set(). props Gary-J, j-idris. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@21544 602fd350-edb4-49c9-b593-d223f7449a82
2012-08-17 23:40:09 +00:00
Ryan Boren
20a1def1c0 switch_to_blog() and restore_current_blog() housekeeping.
wp-includes/admin-bar.php:

* Replace get_admin_url() and get_home_url() with admin_url() and home_url() and place them inside a switch/restore. Likewise replace current_user_can_for_blog() with current_user_can(). This avoids doing multiple switch restores.

wp-includes/ms-blogs.php:

* Deprecate the $validate argument to switch_to_blog(). This avoids a not very necessary call to get_blog_details(), possibly saving a few queries.
* Use $_wp_switched and $_wp_switched_stack instead of $switched and $switched_stack to make it less likely these globals will be stomped.
* Use GLOBALS to access blog_id and other globals. I've preferred this style lately since it makes it obvious a global is being used and avoids global blog_id being stomped by a local variable.
* Lose some is_object() checks. wp_get_current_user() always returns an object, for example.
* Call the new WP_Roles::reinit() method.

wp-includes/class-wp-xmlrpc-server.php:

* Replace current_user_can_for_blog() with current_user_can() and move it inside the switch/restore pair. This eliminates a switch/restore.

wp-includes/capabilities.php:

* Use array_keys() instead of $role => $data since $data is unused. I *think* this is a bit faster.
* Introduce WP_Roles::reinit(). This reinitializes WP_Roles and is used after switch_to_blog() has already update the blog ID in the wpdb object. If a global roles array is being used instead of the db, reinit is skipped.
* current_user_can_for_blog() now does a switch/restore. It didn't before meaning it could be reinitializing the user with the wrong role information for the current blog.

wp-includes/ms-settings.php:

* Define $_wp_switched_stack and $_wp_switched. This way switch_to_blog() and restore_current_blog() can rely on it being set.

wp-settings.php:

* Instantiate the WP_Roles global. This was it is always defined during init. To remove the WP_Roles checks from WP_Role and WP_User this would probably have to move before plugins are loaded, which might not be a good thing.

wp-includes/functions.php:

* Update wp_upload_dir() to reference _wp_switched.



git-svn-id: https://develop.svn.wordpress.org/trunk@21485 602fd350-edb4-49c9-b593-d223f7449a82
2012-08-09 16:28:15 +00:00
Andrew Nacin
e1b03b4fd4 Remove old code unsetting a few variables in wp-settings.php. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@21186 602fd350-edb4-49c9-b593-d223f7449a82
2012-06-29 20:57:09 +00:00
Andrew Nacin
98f553c3b2 Deprecate require_if_theme_supports(). Always require post-thumbnail-template.php. fixes . fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@20610 602fd350-edb4-49c9-b593-d223f7449a82
2012-04-27 04:54:36 +00:00
Andrew Nacin
53a209a4ee Introduce WP_Theme, wp_get_themes(), and wp_get_theme() to replace get_themes(), get_theme(), get_theme_data(), current_theme_info(), and others.
* Getters and Helpers: Introduces a series of methods to allow for easy generation of headers for display, and other theme metadata, including page templates.
 * Screenshots: Handles support for multiple screenshots. (see # Additional screenshots must be PNG and start with screenshot-2.png, and be sequential to be counted. see .
 * Error Handling: Broken themes have a WP_Error object attached to them.
 * Caching: Introduces a wp_cache_themes_persistently filter (also in [20020]) to enable persistent caching of all filesystem and sanitization operations normally handled by WP_Theme (and formerly get_file_data() and get_themes()). Themes are cached individually and across five different cache keys for different data pieces.
 * Compatibility: A WP_Theme object is backwards compatible with a theme's array formerly returned by get_themes() and get_theme(), and an stdClass object formerly returned by current_theme_info().
 * i18n/L10n: Theme headers are now localizable with proper Text Domain and Domain Path headers, like plugins. (Language packs may remove the requirement for headers.) For page templates, see  (not fixed yet, but will be easy now). For headers, fixes .
 * PHP and CSS files: New methods that fetch a list of theme files (for the theme editor) only on demand, rather than only loading them into memory. fixes .

Functions deprecated:
 * get_themes(), get_allowed_themes() and get_broken_themes() -- use wp_get_themes()
 * get_theme() and current_theme_info() -- use wp_get_theme()
 * get_site_allowed_themes() -- use WP_Theme::get_allowed_on_network()
 * wpmu_get_blog_allowedthemes() -- use WP_theme::get_allowed_on_site()

see also [20016], [20018], [20019], [20020], [20021], [20022], [20025], [20026], [20027]. also fixes .

see .



git-svn-id: https://develop.svn.wordpress.org/trunk@20029 602fd350-edb4-49c9-b593-d223f7449a82
2012-02-28 21:24:44 +00:00
Andrew Nacin
563c3231b2 Move the template loading functions from wp-includes/theme.php to wp-includes/template.php. This includes get_query_template(), locate_template(), and friends. see .
git-svn-id: https://develop.svn.wordpress.org/trunk@20002 602fd350-edb4-49c9-b593-d223f7449a82
2012-02-28 01:49:49 +00:00
Andrew Nacin
929486fd19 WP_LANG_DIR is trusted, just need to check $locale. props SergeyBiryukov, fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@19824 602fd350-edb4-49c9-b593-d223f7449a82
2012-02-04 00:32:34 +00:00
Andrew Nacin
bbec83ba02 Only set text_direction based on a locale being RTL if we successfully loaded a locale.mo file. Otherwise we may be in RTL land based on a WPLANG constant but nothing else. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@19797 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-31 14:30:36 +00:00
Andrew Nacin
2fd55c3df1 Introduce wp_load_translations_early(), which can be used before the locale is properly loaded in order to translate early error strings. Internationalize setup-config.php -- translators no longer have a reason to modify this file. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@19760 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-26 20:34:27 +00:00
Andrew Nacin
a958005166 It's L10n (or i18n). Not too sure what l18n stands for. (Typo from [12762].)
git-svn-id: https://develop.svn.wordpress.org/trunk@19758 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-26 00:16:01 +00:00
Ryan Boren
2b186b0c45 Lose EOF ?>. Clean up EOF newlines. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@19712 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-08 17:01:11 +00:00
Ryan Boren
5e76729992 One newline is enough.
git-svn-id: https://develop.svn.wordpress.org/trunk@19684 602fd350-edb4-49c9-b593-d223f7449a82
2012-01-05 20:10:39 +00:00
Andrew Nacin
fc512a48ae Globalize wp_rewrite in wp-settings. props mrtorrent, fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@19603 602fd350-edb4-49c9-b593-d223f7449a82
2011-12-20 20:43:15 +00:00
Andrew Nacin
0ea00a75d1 Explicitly globalize $table_prefix in wp-settings.php in case WordPress isn't loaded in global scope. Use $_SERVER['PHP_SELF'], not $PHP_SELF. We need to keep $PHP_SELF for backwards compatibility reasons (many, many plugins rely on it). props mrtorrent, fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@18993 602fd350-edb4-49c9-b593-d223f7449a82
2011-10-18 19:37:07 +00:00
Andrew Nacin
4d3f98e8bd Explicitly globalize wp_locale for the UT framework. props scribu, fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@18756 602fd350-edb4-49c9-b593-d223f7449a82
2011-09-22 22:49:30 +00:00
Andrew Nacin
53cfffd152 Use ini_set instead of set_magic_quotes_runtime() to prevent silenced E_DEPRECATED notice. props wonderboymusic.
git-svn-id: https://develop.svn.wordpress.org/trunk@18549 602fd350-edb4-49c9-b593-d223f7449a82
2011-08-15 06:42:43 +00:00
Nikolay Bachiyski
13181c96c8 Explicitly globalize some variables, so that unit tests can run WordPress inside a function. Fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@18532 602fd350-edb4-49c9-b593-d223f7449a82
2011-08-11 04:45:14 +00:00
Ryan Boren
80f6c2833c Call register_shutdown_function() for SHORTINIT. Props jtclarke. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@18450 602fd350-edb4-49c9-b593-d223f7449a82
2011-07-21 19:37:47 +00:00
Andrew Nacin
b40bdc3928 Mark a few files as needing to be parsable by PHP4 in order to show the proper error messages. Non-exhaustive. see .
git-svn-id: https://develop.svn.wordpress.org/trunk@18375 602fd350-edb4-49c9-b593-d223f7449a82
2011-06-29 16:50:07 +00:00
Andrew Nacin
85d77664fb wp_check_php_mysql_versions() during setup and install. see .
git-svn-id: https://develop.svn.wordpress.org/trunk@18374 602fd350-edb4-49c9-b593-d223f7449a82
2011-06-29 16:46:46 +00:00
Ryan Boren
091ec81919 Hardening. Santizers for WPLANG and new_admin_email. Prevent stomping ID and filter. Validate locale filename. Props westi.
git-svn-id: https://develop.svn.wordpress.org/trunk@18346 602fd350-edb4-49c9-b593-d223f7449a82
2011-06-27 15:56:42 +00:00
Ryan Boren
6524623a6a Load the theme's functions.php for wp-activate.php. Props nacin, frumph. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@18263 602fd350-edb4-49c9-b593-d223f7449a82
2011-06-11 03:04:04 +00:00
Peter Westwood
8f1955ddf5 Introduce WP_MAX_MEMORY_LIMIT constant for the high memory limit we set when image processing and unzipping.
Ensure it is always filterable by plugins as well as configurable in wp-config
Fixes  props hakre


git-svn-id: https://develop.svn.wordpress.org/trunk@17749 602fd350-edb4-49c9-b593-d223f7449a82
2011-04-28 16:25:36 +00:00
Ryan Boren
28f4e4a534 Don't load themes functions.php for upgrades. Props greuben. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@17727 602fd350-edb4-49c9-b593-d223f7449a82
2011-04-27 21:16:49 +00:00
Mark Jaquith
587abe5d6b Restore compat.php includes. see
git-svn-id: https://develop.svn.wordpress.org/trunk@17622 602fd350-edb4-49c9-b593-d223f7449a82
2011-04-07 15:47:04 +00:00
Ryan Boren
9691cb5eb2 Take out unnecessary compat functions from compat.php. Props hakre, ptahdunbar. see
git-svn-id: https://develop.svn.wordpress.org/trunk@17603 602fd350-edb4-49c9-b593-d223f7449a82
2011-04-05 17:13:04 +00:00
Ryan Boren
48a439ac5b Assigning the return value of new by reference is deprecated. Props hakre. see
git-svn-id: https://develop.svn.wordpress.org/trunk@17573 602fd350-edb4-49c9-b593-d223f7449a82
2011-03-30 20:50:05 +00:00
Andrew Nacin
1eba25a104 I before E, except after C. props jkudish, fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@17524 602fd350-edb4-49c9-b593-d223f7449a82
2011-03-21 23:44:30 +00:00
Ryan Boren
af8f9bf98d Load network plugins for wp-activate.php. Restore MU load order. Props blamenacin. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@16558 602fd350-edb4-49c9-b593-d223f7449a82
2010-11-24 00:19:38 +00:00
scribu
40c993af3f Fix 'timeinfo' cache invalidation. Fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@16537 602fd350-edb4-49c9-b593-d223f7449a82
2010-11-22 21:45:45 +00:00
Ryan Boren
81ae3cb21e Register the default theme dir in wp-settings.php so that it is registered even when get_themes() doesn't run. Fix counting of theme dirs. Add option to get_raw_theme_root() to disregard the current theme root cache. see
git-svn-id: https://develop.svn.wordpress.org/trunk@16424 602fd350-edb4-49c9-b593-d223f7449a82
2010-11-17 16:11:44 +00:00
scribu
a8160ed916 Kill WP_Object_Query. See
git-svn-id: https://develop.svn.wordpress.org/trunk@16353 602fd350-edb4-49c9-b593-d223f7449a82
2010-11-13 18:32:43 +00:00
scribu
69b36459a8 Rename class.wp-object-query.php to class-wp-object-query.php. See
git-svn-id: https://develop.svn.wordpress.org/trunk@16142 602fd350-edb4-49c9-b593-d223f7449a82
2010-11-01 20:21:29 +00:00
Andrew Nacin
89645a1609 Remove the classes.php include and delay the lesser important remnants of classes.php. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@16102 602fd350-edb4-49c9-b593-d223f7449a82
2010-10-30 14:13:43 +00:00
Andrew Nacin
edc329c691 Begin the dissolution of classes.php. see .
git-svn-id: https://develop.svn.wordpress.org/trunk@16099 602fd350-edb4-49c9-b593-d223f7449a82
2010-10-30 07:02:06 +00:00
scribu
8c293b9d94 Move WP_Object_Query to it's own file. See
git-svn-id: https://develop.svn.wordpress.org/trunk@16051 602fd350-edb4-49c9-b593-d223f7449a82
2010-10-28 16:27:18 +00:00
Ryan Boren
3cc3e289d3 Require plugin.php earlier so all pluggables can get at it. Props skeltoac. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@15811 602fd350-edb4-49c9-b593-d223f7449a82
2010-10-14 20:39:23 +00:00
Ryan Boren
733af07765 Admin bar, first pass. see
git-svn-id: https://develop.svn.wordpress.org/trunk@15671 602fd350-edb4-49c9-b593-d223f7449a82
2010-09-27 20:26:36 +00:00
Andrew Nacin
5963feeca6 Always include wp-db.php. Prevents a conditional include and allows db dropins to cleanly extend the wpdb class. Move require_wp_db() to load.php for consistency with bootloader helpers. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@15638 602fd350-edb4-49c9-b593-d223f7449a82
2010-09-20 19:13:47 +00:00
Andrew Nacin
4a9eb3d31f Don't silence inclusion of advanced-cache.php for WP_DEBUG. fixes .
git-svn-id: https://develop.svn.wordpress.org/trunk@14345 602fd350-edb4-49c9-b593-d223f7449a82
2010-05-02 22:18:36 +00:00
Ryan Boren
353adc8969 Move ms_site_check() to after init and allow super admins to view blocked sites. see
git-svn-id: https://develop.svn.wordpress.org/trunk@14198 602fd350-edb4-49c9-b593-d223f7449a82
2010-04-23 16:18:33 +00:00
Ryan Boren
7beb454ef2 Always include class-http.php. see
git-svn-id: https://develop.svn.wordpress.org/trunk@14079 602fd350-edb4-49c9-b593-d223f7449a82
2010-04-13 21:45:57 +00:00
Ryan Boren
a214b120c4 Call create_initial_post_types() before plugins and themes are loaded so that premature post API calls don't fail. fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@14041 602fd350-edb4-49c9-b593-d223f7449a82
2010-04-08 16:45:18 +00:00
Andrew Nacin
1fa9e99992 Prevent half-baked loading of MS that would happen when constants are added into wp-config below the wp-settings include. Now it would error on the redefinition of the MULTISITE constant, instead of vague errors, and prevent any MS from loading. see
git-svn-id: https://develop.svn.wordpress.org/trunk@14000 602fd350-edb4-49c9-b593-d223f7449a82
2010-04-05 00:00:13 +00:00
Andrew Nacin
0459129e69 Remove references to wp-ajax.php. props TobiasBg, fixes
git-svn-id: https://develop.svn.wordpress.org/trunk@13831 602fd350-edb4-49c9-b593-d223f7449a82
2010-03-26 19:44:43 +00:00
Mark Jaquith
8bca8131a6 More pedantry. "Setup" is not a verb. http://notaverb.com/setup
git-svn-id: https://develop.svn.wordpress.org/trunk@13725 602fd350-edb4-49c9-b593-d223f7449a82
2010-03-17 04:39:50 +00:00