Peter Wilson
f4fb98f366
Script Loader: Improve asset concatenation Etags.
...
Include the asset version of JavaScript and CSS files when generating the ETag for concatenated assets in `load-scripts.php` and `load-styles.php`. This ensures the ETag is updated as script versions change (for example editor package updates) rather than only when the WordPress version changes.
The `W\` prefix is added to the generated ETag to allow for CDNs and proxy servers modifying the script to add or improve the compression algorithm.
Props azaozz, dav4, ironprogrammer, johnbillion, kkmuffme, monzuralam, peterwilsoncc, sergeybiryukov.
Fixes #58433 .
Built from https://develop.svn.wordpress.org/trunk@57943
git-svn-id: http://core.svn.wordpress.org/trunk@57440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-04-07 23:53:19 +00:00
Sergey Biryukov
3e3c741d08
Database: Replace str_contains()
and str_ends_with()
usage in wpdb
methods.
...
This avoids fatal errors on PHP < 8.0 if the file is included directly outside of WordPress core, e.g. by HyperDB.
While WordPress core does include polyfills for these functions, they are not directly loaded in the `wpdb` class.
Follow-up to [54384], [55157], [55158], [55988], [55990].
Props dd32, ryelle, joedolson.
See #58206 .
Built from https://develop.svn.wordpress.org/trunk@55994
git-svn-id: http://core.svn.wordpress.org/trunk@55506 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-06-23 12:17:24 +00:00
Sergey Biryukov
27c4548f19
General: Restore strpos()
check in wp-admin/load-styles.php
.
...
This resolves a fatal error on PHP < 8.0, as `wp-includes/compat.php` is not loaded in this file, so `str_starts_with()` may not be available.
Follow-up to [55703].
Props dd32, flixos90, DigTek.
Fixes #58244 . See #58012 .
Built from https://develop.svn.wordpress.org/trunk@55710
git-svn-id: http://core.svn.wordpress.org/trunk@55222 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-05-03 15:46:22 +00:00
Sergey Biryukov
2ec23a82ed
Code Modernization: Replace usage of strpos()
with str_starts_with()
.
...
`str_starts_with()` was introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) begins with the given substring (needle).
WordPress core includes a polyfill for `str_starts_with()` on PHP < 8.0 as of WordPress 5.9.
This commit replaces `0 === strpos( ... )` with `str_starts_with()` in core files, making the code more readable and consistent, as well as improving performance.
While `strpos()` is slightly faster than the polyfill on PHP < 8.0, `str_starts_with()` is noticeably faster on PHP 8.0+, as it is optimized to avoid unnecessarily searching along the whole haystack if it does not find the needle.
Follow-up to [52039], [52040], [52326].
Props spacedmonkey, costdev, sabernhardt, mukesh27, desrosj, jorbin, TobiasBg, ayeshrajans, lgadzhev, SergeyBiryukov.
Fixes #58012 .
Built from https://develop.svn.wordpress.org/trunk@55703
git-svn-id: http://core.svn.wordpress.org/trunk@55215 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2023-05-02 15:45:22 +00:00
Sergey Biryukov
75fc6b755b
Docs: Update a comment in wp-admin/load-styles.php
per the documentation standards.
...
Follow-up to [52352].
See #53399 .
Built from https://develop.svn.wordpress.org/trunk@52356
git-svn-id: http://core.svn.wordpress.org/trunk@51948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-12-12 14:52:02 +00:00
Sergey Biryukov
3beb1d25ab
Docs: Correct the format of some comments per the documentation standards.
...
Follow-up to [10357], [10939], [43309], [51003], [51266], [51653], [51738], [52110].
See #53399 .
Built from https://develop.svn.wordpress.org/trunk@52352
git-svn-id: http://core.svn.wordpress.org/trunk@51944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-12-10 20:30:05 +00:00
davidbaumwald
d5f7417686
Bootstrap/Load: Add HTTP/3
as a valid HTTP protocol.
...
As of November 2021, the `HTTP/3` protocol is still officially an Internet Draft, but is already supported by 74% of running web browsers and, according to W3Techs, 23% of the top 10 million websites. It has been supported by Google Chrome (including Chrome for Android, and Microsoft Edge, which is based on it) since April 2020 and by Mozilla Firefox since May 2021. Safari 14 (on macOS Big Sur and iOS 14) has also implemented the protocol but support is hidden behind a feature flag.
Based on the wide support, this change adds `HTTP/3` as a valid HTTP protocol.
Props malthert.
Fixes #54404 .
Built from https://develop.svn.wordpress.org/trunk@52087
git-svn-id: http://core.svn.wordpress.org/trunk@51679 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-11-09 23:07:01 +00:00
jorgefilipecosta
d8fe393934
Add: Public functions for interacting with global styles & settings.
...
This commit ports the public functions to interact with the global styles & settings.
See #54336 .
Props oandregal.
Built from https://develop.svn.wordpress.org/trunk@52054
git-svn-id: http://core.svn.wordpress.org/trunk@51646 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-11-08 21:45:58 +00:00
Sergey Biryukov
033c742a4e
Block Editor: Load the WP_Theme_JSON_Resolver
class in wp-admin/load-styles.php
.
...
This ensures correct load order when style concatenation is used, e.g. when `SCRIPT_DEBUG` is off.
Additionally, make sure the `WP_CONTENT_DIR` constant is defined for use in `get_theme_root()` via `get_stylesheet_directory()`.
Follow-up to [50992], [51001], [51013].
Props nosolosw.
See #53175 .
Built from https://develop.svn.wordpress.org/trunk@51056
git-svn-id: http://core.svn.wordpress.org/trunk@50665 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-06-01 23:09:58 +00:00
Sergey Biryukov
7b192d406a
Coding Standards: Fix instances of Generic.WhiteSpace.ArbitraryParenthesesSpacing.FoundEmpty
.
...
See #49542 .
Built from https://develop.svn.wordpress.org/trunk@47855
git-svn-id: http://core.svn.wordpress.org/trunk@47631 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-26 09:37:10 +00:00
Sergey Biryukov
aa69c25d5f
Coding Standards: Use strict comparison in some wp-admin
files.
...
Props pikamander2, mukesh27, SergeyBiryukov.
Fixes #49239 .
Built from https://develop.svn.wordpress.org/trunk@47785
git-svn-id: http://core.svn.wordpress.org/trunk@47561 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-05-12 18:32:08 +00:00
Sergey Biryukov
38676936ba
Coding Standards: Use strict type check for in_array()
and array_search()
where strings are involved.
...
This reduces the number of `WordPress.PHP.StrictInArray.MissingTrueStrict` issues from 486 to 50.
Includes minor code layout fixes for better readability.
See #49542 .
Built from https://develop.svn.wordpress.org/trunk@47550
git-svn-id: http://core.svn.wordpress.org/trunk@47325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-04-05 03:02:11 +00:00
Sergey Biryukov
47ed56f38f
Code Modernization: Replace dirname( __FILE__ )
calls with __DIR__
magic constant.
...
This avoids the performance overhead of the function call every time `dirname( __FILE__ )` was used instead of `__DIR__`.
This commit also includes:
* Removing unnecessary parentheses from `include`/`require` statements. These are language constructs, not function calls.
* Replacing `include` statements for several files with `require_once`, for consistency:
* `wp-admin/admin-header.php`
* `wp-admin/admin-footer.php`
* `wp-includes/version.php`
Props ayeshrajans, desrosj, valentinbora, jrf, joostdevalk, netweb.
Fixes #48082 .
Built from https://develop.svn.wordpress.org/trunk@47198
git-svn-id: http://core.svn.wordpress.org/trunk@46998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-02-06 06:33:11 +00:00
Sergey Biryukov
001ffe81fb
Docs: Improve inline comments per the documentation standards.
...
Includes minor code layout fixes for better readability.
See #48303 .
Built from https://develop.svn.wordpress.org/trunk@47122
git-svn-id: http://core.svn.wordpress.org/trunk@46922 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2020-01-29 00:45:18 +00:00
Sergey Biryukov
7dbc4d28e5
Script Loader: Send a 400 Bad Request status code in load-scripts.php
and load-styles.php
if the required load[]
parameter is not set.
...
Props compilenix.
Fixes #44108 .
Built from https://develop.svn.wordpress.org/trunk@45731
git-svn-id: http://core.svn.wordpress.org/trunk@45542 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-08-03 22:17:57 +00:00
Andrew Ozz
6de52463a7
Script loader: prevent sorting of the load
array in the query string when passing the script handles to load-scripts.php and load-styles.php.
...
Fixes #45346 #26886 .
Built from https://develop.svn.wordpress.org/trunk@45456
git-svn-id: http://core.svn.wordpress.org/trunk@45267 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2019-05-28 02:43:55 +00:00
Andrew Ozz
1521b64337
Script loader: remove (PHP based) compression from load-styles.php
and load-scripts.php
. WIth the amount of scripts and stylesheets grown a lot over the years, it has become pretty slow and consumes a lot of server resources. Also, most servers are set to compress PHP output anyway.
...
Props LucasRolff, azaozz.
Fixes #44815 .
See #43308 .
Built from https://develop.svn.wordpress.org/trunk@43580
git-svn-id: http://core.svn.wordpress.org/trunk@43409 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2018-08-20 13:51:24 +00:00
Gary Pendergast
aaf99e6913
Code is Poetry.
...
WordPress' code just... wasn't.
This is now dealt with.
Props jrf, pento, netweb, GaryJ, jdgrimes, westonruter, Greg Sherwood from PHPCS, and everyone who's ever contributed to WPCS and PHPCS.
Fixes #41057 .
Built from https://develop.svn.wordpress.org/trunk@42343
git-svn-id: http://core.svn.wordpress.org/trunk@42172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2017-11-30 23:11:00 +00:00
Scott Taylor
a3ffebce30
Bootstrap: do not go gentle into that good night r38411, r38412, and parts of r38389.
...
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38470
git-svn-id: http://core.svn.wordpress.org/trunk@38411 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-31 16:31:29 +00:00
Scott Taylor
2a9b372471
Script Loader: autoload in load-{scripts|styles}.php
.
...
Props JohnPBloch.
See #36335 .
Built from https://develop.svn.wordpress.org/trunk@38412
git-svn-id: http://core.svn.wordpress.org/trunk@38353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-08-28 00:07:33 +00:00
Sergey Biryukov
4074bcc6a1
Bootstrap/Load: Allow for ABSPATH
to be defined outside of wp-load.php
, e.g. in a script loaded via auto_prepend_file
.
...
Props barry.
Fixes #26592 .
Built from https://develop.svn.wordpress.org/trunk@37207
git-svn-id: http://core.svn.wordpress.org/trunk@37173 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-04-14 17:53:28 +00:00
Dion Hulse
987ce83cfc
CSS: Stop using wp-admin.min.css
and instead queue the individual stylesheets up through load-styles.php
.
...
We still generate the `wp-admin.*` files for compabitility purposes, however they only include the `@import()` lines.
Fixes #35229
Built from https://develop.svn.wordpress.org/trunk@36341
git-svn-id: http://core.svn.wordpress.org/trunk@36308 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-18 09:57:29 +00:00
Pascal Birchler
9ea68bc533
Script Loader: Add Etag: $wp_version
header in load-scripts.php
and load-styles.php
.
...
This improves performance since browsers won't re-download the scripts and styles when there was no change in `$wp_version`.
Props sergej.mueller, dd32, swissspidy.
Fixes #28722 .
Built from https://develop.svn.wordpress.org/trunk@36312
git-svn-id: http://core.svn.wordpress.org/trunk@36279 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2016-01-15 10:23:25 +00:00
Scott Taylor
b9bbdabfe7
Create a new file, wp-admin/includes/noop.php
, which loads all of the noop functions for load-script|styles.php
and is only loaded by those files. DRYs in the process.
...
See #33813 .
Built from https://develop.svn.wordpress.org/trunk@34037
git-svn-id: http://core.svn.wordpress.org/trunk@34005 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-11 05:04:23 +00:00
Scott Taylor
ef87172270
foreach
is a statement, not a function.
...
See #33491 .
Built from https://develop.svn.wordpress.org/trunk@33734
git-svn-id: http://core.svn.wordpress.org/trunk@33702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-25 20:28:22 +00:00
Scott Taylor
c6a4512b1b
Add missing doc blocks to wp-admin/includes/*
.
...
Fix some egregious uses of tabbing.
Some functions can simply return `apply_filters(...)` instead of setting a variable that is immediately returned.
See #32444 .
Built from https://develop.svn.wordpress.org/trunk@32654
git-svn-id: http://core.svn.wordpress.org/trunk@32624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-29 20:17:26 +00:00
Andrew Nacin
b35982cbff
Simplify the setup-config.php UI flow and load process.
...
When no configuration file is detected, we now redirect to setup-config.php. This process now uses the WordPress bootstrap, rather than a set of fragile hacks.
fixes #28740 .
Built from https://develop.svn.wordpress.org/trunk@28978
git-svn-id: http://core.svn.wordpress.org/trunk@28767 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 19:57:14 +00:00
Scott Taylor
0ef5c92164
Admin screens should use the WPINC
constant
...
Props wojtek.szkutnik
See #14157 .
Built from https://develop.svn.wordpress.org/trunk@28906
git-svn-id: http://core.svn.wordpress.org/trunk@28705 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 22:21:15 +00:00
Sergey Biryukov
a73ce3610b
Force UTF-8 in load-styles.php, like we do in load-scripts.php.
...
props iamfriendly, mjbanks.
fixes #25012 .
Built from https://develop.svn.wordpress.org/trunk@27253
git-svn-id: http://core.svn.wordpress.org/trunk@27110 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 01:28:15 +00:00
Dion Hulse
a0f43f5cbf
Style Concatenation: Fix loading of dashicons non-woff files when concatenation is in use. Fixes #26250
...
Built from https://develop.svn.wordpress.org/trunk@26374
git-svn-id: http://core.svn.wordpress.org/trunk@26274 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-26 01:47:10 +00:00
Andrew Nacin
1b3e9d33ce
Fix new RTL file loading when style concatenation is enabled.
...
see #24977 .
Built from https://develop.svn.wordpress.org/trunk@26128
git-svn-id: http://core.svn.wordpress.org/trunk@26040 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-13 05:10:10 +00:00
Andrew Nacin
93ca609f53
Unique load array in load-scripts and load-styles.
...
git-svn-id: http://core.svn.wordpress.org/trunk@24868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-29 17:57:04 +00:00
Andrew Nacin
afd3c7eeb3
Fix minified RTL style loading via load-styles.php. props ocean90. fixes #22482 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@22623 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-16 22:18:33 +00:00
Andrew Nacin
e7767b1eba
Add comments to time intervals we cannot express with the constants. Fix a comment. props SergeyBiryukov. fixes #20987 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@22531 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-10 18:13:09 +00:00
Andrew Nacin
70ae01e133
Do not use time constants in files the WP bootstrap is not or may not be loaded. see #20987 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@21997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-25 07:05:48 +00:00
Andrew Nacin
557d9313a7
Introduce constants to allow for easier expression of time periods in seconds. Adds MINUTE_IN_SECONDS, HOUR_IN_SECONDS, DAY_IN_SECONDS, WEEK_IN_SECONDS, YEAR_IN_SECONDS. props nbachiyski, SergeyBiryukov. fixes #20987 .
...
git-svn-id: http://core.svn.wordpress.org/trunk@21996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-25 05:26:19 +00:00
ryan
616c35e71c
One newline is enough.
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@19684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-05 20:10:39 +00:00
azaozz
6e3e6da9bd
Fix editor icons when no SCRIPT_DEBUG, see #17144
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18503 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-08-03 23:56:21 +00:00
azaozz
21058cf460
Use json_encode() for adding script data (formerly l10n). Add the same functionality to WP_Styles for adding inline css after a stylesheet has been outputted. See #11520
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@18464 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-07-25 00:36:06 +00:00
ryan
64552a67ee
Use stripos() instead of strpos( strtolower() ). Props hakre. see #16920
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@17630 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2011-04-11 18:55:11 +00:00
ryan
fc204c952d
Don't use deprecated functions. Props filosofo. fixes #11807
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@12878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2010-01-27 17:55:39 +00:00
azaozz
42df991367
Check if $_SERVER['HTTP_ACCEPT_ENCODING'] is set before determining whether to compress scripts, props nacin, fixes #11169
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@12214 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-11-19 09:46:07 +00:00
markjaquith
6c2ffddf31
_a(), _ea(), _xa(), attr() are now esc_attr__(), esc_attr_e(), esc_attr_x(), esc_attr() -- still short, but less cryptic. see #9650
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@11204 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-05-05 19:43:53 +00:00
ryan
2d489767bb
s/attribute_escape/attr/. see #9650
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@11109 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-28 05:58:45 +00:00
ryan
a61bc0ec8a
Trailing whitespace cleanup
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@11013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-20 18:18:39 +00:00
azaozz
1e31cc81a0
Disable PHP error reporting in gears-manifest.php, load-scripts.php and load-styles.php since they don't load wp-settings, fix some notices
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@10939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-15 19:55:41 +00:00
azaozz
9c7ba66e64
Correct ABSPATH in load-scripts.php, load-styles.php and gears-manifest.php, props hakre, fixes #9461
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@10871 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-04-05 03:32:49 +00:00
ryan
b1222311f7
gettext comments. Props nbachiyski. see #9112
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@10774 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-03-13 03:53:39 +00:00
azaozz
75850602a5
Detect when the server compresses output, see #8628
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@10476 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-02-01 09:45:24 +00:00
azaozz
e62f8c0eb9
Support output_handler = ob_gzhandler in script/style compressor, props DD32, fixes #9000
...
git-svn-id: http://svn.automattic.com/wordpress/trunk@10466 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2009-01-30 13:45:05 +00:00