* 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 #19816.
* 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 #6007 (not fixed yet, but will be easy now). For headers, fixes#15858.
* 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#11214.
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#19244.
see #20103.
git-svn-id: https://develop.svn.wordpress.org/trunk@20029 602fd350-edb4-49c9-b593-d223f7449a82
* Update it to use PHP5 scandir().
* Don't scan individual theme dirs -- we only need to check for style.css. (Solid performance gains.)
* Improve and simplify branching.
* Introduce wp_cache_themes_persistently filter to enable persistent caching of the return value, based on the theme_roots transient.
see #20103.
git-svn-id: https://develop.svn.wordpress.org/trunk@20020 602fd350-edb4-49c9-b593-d223f7449a82
Make get_theme_root_uri() tolerate an absolute path for a theme root. It will now make an attempt to find a corresponding URL for absolute paths as well.
see #17597.
git-svn-id: https://develop.svn.wordpress.org/trunk@20016 602fd350-edb4-49c9-b593-d223f7449a82
These functions were changed in [15641] to avoid any calculations when only one theme directory is registered. However, the short-circuit ended up being relative to WP_CONTENT_DIR, rather than absolute. This broke situations where theme roots are outside the content directory (technically allowed), and made return values inconsistent, as when multiple roots were registered, absolute paths were always returned.
fixes#17597. see #20103. see #14911.
git-svn-id: https://develop.svn.wordpress.org/trunk@20001 602fd350-edb4-49c9-b593-d223f7449a82
safecss_filter_attr() block for style tags must be moved out of the is_array() only branch of wp_kses_attr() to accommodate for this.
git-svn-id: https://develop.svn.wordpress.org/trunk@19976 602fd350-edb4-49c9-b593-d223f7449a82
This fixes incorrect canonical redirects for singular queries using custom rewrite rules.
git-svn-id: https://develop.svn.wordpress.org/trunk@19970 602fd350-edb4-49c9-b593-d223f7449a82
* Plugins are now sorted alphabetically during concatenation, to ensure consistent generation.
* Key tinymce/wp-tinymce.js.gz off the revision number, rather than the date.
see #19592.
git-svn-id: https://develop.svn.wordpress.org/trunk@19953 602fd350-edb4-49c9-b593-d223f7449a82