📁
SKYSHELL MANAGER-
🛒
PHP v8.2.30
Create Folder
Create File
Current Path:
home
/
powertibet
/
public_html
/
letketo.com
/
wp-includes
/
Name
Size
Permissions
Actions
📁
..
-
0755
🗑️
🔒
📁
ID3
-
0755
🗑️
🔒
📁
IXR
-
0755
🗑️
🔒
📁
PHPMailer
-
0755
🗑️
🔒
📁
Requests
-
0755
🗑️
🔒
📁
SimplePie
-
0755
🗑️
🔒
📁
Text
-
0755
🗑️
🔒
📁
abilities-api
-
0755
🗑️
🔒
📁
assets
-
0755
🗑️
🔒
📁
block-bindings
-
0755
🗑️
🔒
📁
block-patterns
-
0755
🗑️
🔒
📁
block-supports
-
0755
🗑️
🔒
📁
blocks
-
0755
🗑️
🔒
📁
certificates
-
0755
🗑️
🔒
📁
css
-
0755
🗑️
🔒
📁
customize
-
0755
🗑️
🔒
📁
fonts
-
0755
🗑️
🔒
📁
html-api
-
0755
🗑️
🔒
📁
images
-
0755
🗑️
🔒
📁
interactivity-api
-
0755
🗑️
🔒
📁
js
-
0755
🗑️
🔒
📁
l10n
-
0755
🗑️
🔒
📁
php-compat
-
0755
🗑️
🔒
📁
pomo
-
0755
🗑️
🔒
📁
rest-api
-
0755
🗑️
🔒
📁
sitemaps
-
0755
🗑️
🔒
📁
sodium_compat
-
0755
🗑️
🔒
📁
style-engine
-
0755
🗑️
🔒
📁
theme-compat
-
0755
🗑️
🔒
📁
widgets
-
0755
🗑️
🔒
📄
abilities-api.php
23.8 KB
0644
🗑️
⬇️
✏️
🔒
📄
abilities.php
7.8 KB
0644
🗑️
⬇️
✏️
🔒
📄
admin-bar.php
36.1 KB
0644
🗑️
⬇️
✏️
🔒
📄
atomlib.php
11.9 KB
0644
🗑️
⬇️
✏️
🔒
📄
author-template.php
18.94 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-bindings.php
7.35 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-editor.php
28.6 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-i18n.json
0.31 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-patterns.php
12.9 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-template-utils.php
61.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
block-template.php
15 KB
0644
🗑️
⬇️
✏️
🔒
📄
blocks.php
112.05 KB
0644
🗑️
⬇️
✏️
🔒
📄
bookmark-template.php
12.47 KB
0644
🗑️
⬇️
✏️
🔒
📄
bookmark.php
15.07 KB
0644
🗑️
⬇️
✏️
🔒
📄
cache-compat.php
9.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
cache.php
13.17 KB
0644
🗑️
⬇️
✏️
🔒
📄
canonical.php
33.83 KB
0644
🗑️
⬇️
✏️
🔒
📄
capabilities.php
42.63 KB
0644
🗑️
⬇️
✏️
🔒
📄
category-template.php
55.71 KB
0644
🗑️
⬇️
✏️
🔒
📄
category.php
12.53 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-IXR.php
2.55 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-avif-info.php
28.92 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-feed.php
0.53 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-http.php
0.36 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-json.php
42.65 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-oembed.php
0.39 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-phpmailer.php
0.65 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-pop3.php
20.63 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-requests.php
2.18 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-simplepie.php
0.44 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-walker-category-dropdown.php
2.41 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-walker-category.php
8.28 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-walker-comment.php
13.89 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-walker-page-dropdown.php
2.65 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-walker-page.php
7.43 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-ajax-response.php
5.14 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-application-passwords.php
16.7 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-bindings-registry.php
8.28 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-bindings-source.php
2.92 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-list.php
4.6 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-metadata-registry.php
11.62 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-parser-frame.php
1.97 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-parser.php
11.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-pattern-categories-registry.php
5.32 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-patterns-registry.php
10.6 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-styles-registry.php
6.34 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-template.php
1.99 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-templates-registry.php
7.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-type-registry.php
4.91 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-block-type.php
16.86 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-classic-to-block-menu-converter.php
3.97 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-comment-query.php
47.66 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-comment.php
9.22 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-customize-control.php
25.51 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-customize-nav-menus.php
56.65 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-customize-panel.php
10.46 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-customize-setting.php
29.26 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-customize-widgets.php
70.91 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-date-query.php
35.3 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-dependency.php
2.57 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-duotone.php
39.83 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-editor.php
70.64 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-embed.php
15.56 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-error.php
7.33 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-exception.php
0.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-fatal-error-handler.php
7.96 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-feed-cache-transient.php
3.23 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-feed-cache.php
0.95 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-hook.php
16.28 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-cookie.php
7.22 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-curl.php
12.95 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-encoding.php
6.53 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-ixr-client.php
3.42 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-proxy.php
5.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-requests-hooks.php
1.97 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-requests-response.php
4.3 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-response.php
2.91 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http-streams.php
16.46 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-http.php
40.6 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-image-editor-gd.php
20.22 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-image-editor.php
17.01 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-list-util.php
7.27 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-locale-switcher.php
6.62 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-locale.php
16.49 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-matchesmapregex.php
1.79 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-meta-query.php
29.82 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-metadata-lazyloader.php
6.67 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-network-query.php
19.42 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-network.php
12.01 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-object-cache.php
17.11 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-oembed-controller.php
6.74 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-oembed.php
30.93 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-paused-extensions-storage.php
4.99 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-phpmailer.php
4.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-plugin-dependencies.php
24.72 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-post-type.php
29.96 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-post.php
6.34 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-query.php
159.91 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-cookie-service.php
6.72 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-email-service.php
10.92 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-key-service.php
4.77 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-link-service.php
3.38 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-recovery-mode.php
11.18 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-roles.php
9.17 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-script-modules.php
32.15 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-scripts.php
34.05 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-simplepie-file.php
3.47 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-simplepie-sanitize-kses.php
1.87 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-site.php
7.29 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-speculation-rules.php
7.35 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-styles.php
12.54 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-tax-query.php
19.12 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-taxonomy.php
18.12 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-term-query.php
39.99 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-term.php
5.17 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-text-diff-renderer-inline.php
0.96 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-text-diff-renderer-table.php
18.44 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-textdomain-registry.php
10.24 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-theme-json-data.php
1.77 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-theme-json-resolver.php
34.9 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-theme-json-schema.php
7.19 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-theme-json.php
160.5 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-theme.php
64.27 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-token-map.php
27.95 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-user-meta-session-tokens.php
2.94 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-user-request.php
2.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-user.php
22.5 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-walker.php
13.01 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-widget-factory.php
3.27 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-widget.php
18 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-xmlrpc-server.php
210.4 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp.php
25.86 KB
0644
🗑️
⬇️
✏️
🔒
📄
class.wp-scripts.php
0.33 KB
0644
🗑️
⬇️
✏️
🔒
📄
class.wp-styles.php
0.33 KB
0644
🗑️
⬇️
✏️
🔒
📄
comment-template.php
100.73 KB
0644
🗑️
⬇️
✏️
🔒
📄
comment.php
130.93 KB
0644
🗑️
⬇️
✏️
🔒
📄
compat.php
17.41 KB
0644
🗑️
⬇️
✏️
🔒
📄
cron.php
41.98 KB
0644
🗑️
⬇️
✏️
🔒
📄
date.php
0.39 KB
0644
🗑️
⬇️
✏️
🔒
📄
default-filters.php
37.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
default-widgets.php
2.24 KB
0644
🗑️
⬇️
✏️
🔒
📄
embed.php
38 KB
0644
🗑️
⬇️
✏️
🔒
📄
error-protection.php
4.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-atom-comments.php
5.38 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-rdf.php
2.61 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-rss.php
1.16 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-rss2-comments.php
4.04 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-rss2.php
3.71 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed.php
24.6 KB
0644
🗑️
⬇️
✏️
🔒
📄
fonts.php
9.56 KB
0644
🗑️
⬇️
✏️
🔒
📄
formatting.php
346.43 KB
0644
🗑️
⬇️
✏️
🔒
📄
functions.php
281.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
functions.wp-scripts.php
14.95 KB
0644
🗑️
⬇️
✏️
🔒
📄
functions.wp-styles.php
8.44 KB
0644
🗑️
⬇️
✏️
🔒
📄
general-template.php
168.95 KB
0644
🗑️
⬇️
✏️
🔒
📄
global-styles-and-settings.php
20.71 KB
0644
🗑️
⬇️
✏️
🔒
📄
https-detection.php
5.72 KB
0644
🗑️
⬇️
✏️
🔒
📄
https-migration.php
4.63 KB
0644
🗑️
⬇️
✏️
🔒
📄
index.php
7.06 KB
0444
🗑️
⬇️
✏️
🔒
📄
l10n.php
67.18 KB
0644
🗑️
⬇️
✏️
🔒
📄
load.php
55.19 KB
0644
🗑️
⬇️
✏️
🔒
📄
locale.php
0.16 KB
0644
🗑️
⬇️
✏️
🔒
📄
media.php
216 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-blogs.php
25.24 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-default-filters.php
6.48 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-files.php
2.79 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-functions.php
89.69 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-load.php
19.42 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-network.php
3.69 KB
0644
🗑️
⬇️
✏️
🔒
📄
nav-menu-template.php
25.38 KB
0644
🗑️
⬇️
✏️
🔒
📄
nav-menu.php
43.33 KB
0644
🗑️
⬇️
✏️
🔒
📄
pluggable-deprecated.php
6.18 KB
0644
🗑️
⬇️
✏️
🔒
📄
pluggable.php
124.47 KB
0644
🗑️
⬇️
✏️
🔒
📄
plugin.php
35.65 KB
0644
🗑️
⬇️
✏️
🔒
📄
post-formats.php
6.94 KB
0644
🗑️
⬇️
✏️
🔒
📄
post-template.php
67.04 KB
0644
🗑️
⬇️
✏️
🔒
📄
post-thumbnail-template.php
10.62 KB
0644
🗑️
⬇️
✏️
🔒
📄
registration-functions.php
0.2 KB
0644
🗑️
⬇️
✏️
🔒
📄
registration.php
0.2 KB
0644
🗑️
⬇️
✏️
🔒
📄
rest-api.php
98.29 KB
0644
🗑️
⬇️
✏️
🔒
📄
revision.php
30.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
script-loader.php
154.63 KB
0644
🗑️
⬇️
✏️
🔒
📄
script-modules.php
9.68 KB
0644
🗑️
⬇️
✏️
🔒
📄
session.php
0.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
shortcodes.php
23.49 KB
0644
🗑️
⬇️
✏️
🔒
📄
speculative-loading.php
8.4 KB
0644
🗑️
⬇️
✏️
🔒
📄
spl-autoload-compat.php
0.43 KB
0644
🗑️
⬇️
✏️
🔒
📄
style-engine.php
7.39 KB
0644
🗑️
⬇️
✏️
🔒
📄
taxonomy.php
172.91 KB
0644
🗑️
⬇️
✏️
🔒
📄
template-canvas.php
0.53 KB
0644
🗑️
⬇️
✏️
🔒
📄
template-loader.php
3.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
template.php
35.97 KB
0644
🗑️
⬇️
✏️
🔒
📄
theme-i18n.json
1.69 KB
0644
🗑️
⬇️
✏️
🔒
📄
theme-previews.php
2.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
theme.json
8.71 KB
0644
🗑️
⬇️
✏️
🔒
📄
theme.php
131.84 KB
0644
🗑️
⬇️
✏️
🔒
📄
txets.php
1.75 KB
0644
🗑️
⬇️
✏️
🔒
📄
update.php
37.45 KB
0644
🗑️
⬇️
✏️
🔒
📄
user.php
173.89 KB
0644
🗑️
⬇️
✏️
🔒
📄
utf8.php
7.09 KB
0644
🗑️
⬇️
✏️
🔒
📄
version.php
1.11 KB
0644
🗑️
⬇️
✏️
🔒
📄
widgets.php
69.46 KB
0644
🗑️
⬇️
✏️
🔒
📄
wp-blog-header.php
7.06 KB
0444
🗑️
⬇️
✏️
🔒
📄
wp-db.php
0.43 KB
0644
🗑️
⬇️
✏️
🔒
📄
wp-diff.php
0.78 KB
0644
🗑️
⬇️
✏️
🔒
📄
wp-signup.php
7.06 KB
0444
🗑️
⬇️
✏️
🔒
Editing: class-wp-styles.php
<?php /** * Dependencies API: WP_Styles class * * @since 2.6.0 * * @package WordPress * @subpackage Dependencies */ /** * Core class used to register styles. * * @since 2.6.0 * * @see WP_Dependencies */ class WP_Styles extends WP_Dependencies { /** * Base URL for styles. * * Full URL with trailing slash. * * @since 2.6.0 * @var string */ public $base_url; /** * URL of the content directory. * * @since 2.8.0 * @var string */ public $content_url; /** * Default version string for stylesheets. * * @since 2.6.0 * @var string */ public $default_version; /** * The current text direction. * * @since 2.6.0 * @var string */ public $text_direction = 'ltr'; /** * Holds a list of style handles which will be concatenated. * * @since 2.8.0 * @var string */ public $concat = ''; /** * Holds a string which contains style handles and their version. * * @since 2.8.0 * @deprecated 3.4.0 * @var string */ public $concat_version = ''; /** * Whether to perform concatenation. * * @since 2.8.0 * @var bool */ public $do_concat = false; /** * Holds HTML markup of styles and additional data if concatenation * is enabled. * * @since 2.8.0 * @var string */ public $print_html = ''; /** * Holds inline styles if concatenation is enabled. * * @since 3.3.0 * @var string */ public $print_code = ''; /** * List of default directories. * * @since 2.8.0 * @var array */ public $default_dirs; /** * Holds a string which contains the type attribute for style tag. * * If the active theme does not declare HTML5 support for 'style', * then it initializes as `type='text/css'`. * * @since 5.3.0 * @var string */ private $type_attr = ''; /** * Constructor. * * @since 2.6.0 */ public function __construct() { if ( function_exists( 'is_admin' ) && ! is_admin() && function_exists( 'current_theme_supports' ) && ! current_theme_supports( 'html5', 'style' ) ) { $this->type_attr = " type='text/css'"; } /** * Fires when the WP_Styles instance is initialized. * * @since 2.6.0 * * @param WP_Styles $wp_styles WP_Styles instance (passed by reference). */ do_action_ref_array( 'wp_default_styles', array( &$this ) ); } /** * Processes a style dependency. * * @since 2.6.0 * @since 5.5.0 Added the `$group` parameter. * * @see WP_Dependencies::do_item() * * @param string $handle The style's registered handle. * @param int|false $group Optional. Group level: level (int), no groups (false). * Default false. * @return bool True on success, false on failure. */ public function do_item( $handle, $group = false ) { if ( ! parent::do_item( $handle ) ) { return false; } $obj = $this->registered[ $handle ]; if ( $obj->extra['conditional'] ?? false ) { return false; } if ( null === $obj->ver ) { $ver = ''; } else { $ver = $obj->ver ? $obj->ver : $this->default_version; } if ( isset( $this->args[ $handle ] ) ) { $ver = $ver ? $ver . '&' . $this->args[ $handle ] : $this->args[ $handle ]; } $src = $obj->src; $inline_style = $this->print_inline_style( $handle, false ); if ( $inline_style ) { $inline_style_tag = sprintf( "<style id='%s-inline-css'%s>\n%s\n</style>\n", esc_attr( $handle ), $this->type_attr, $inline_style ); } else { $inline_style_tag = ''; } if ( $this->do_concat ) { if ( $this->in_default_dir( $src ) && ! isset( $obj->extra['alt'] ) ) { $this->concat .= "$handle,"; $this->concat_version .= "$handle$ver"; $this->print_code .= $inline_style; return true; } } if ( isset( $obj->args ) ) { $media = $obj->args; } else { $media = 'all'; } // A single item may alias a set of items, by having dependencies, but no source. if ( ! $src ) { if ( $inline_style_tag ) { if ( $this->do_concat ) { $this->print_html .= $inline_style_tag; } else { echo $inline_style_tag; } } return true; } $href = $this->_css_href( $src, $ver, $handle ); if ( ! $href ) { return true; } $rel = isset( $obj->extra['alt'] ) && $obj->extra['alt'] ? 'alternate stylesheet' : 'stylesheet'; $title = isset( $obj->extra['title'] ) ? $obj->extra['title'] : ''; $tag = sprintf( "<link rel='%s' id='%s-css'%s href='%s'%s media='%s' />\n", $rel, esc_attr( $handle ), $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '', $href, $this->type_attr, esc_attr( $media ) ); /** * Filters the HTML link tag of an enqueued style. * * @since 2.6.0 * @since 4.3.0 Introduced the `$href` parameter. * @since 4.5.0 Introduced the `$media` parameter. * * @param string $tag The link tag for the enqueued style. * @param string $handle The style's registered handle. * @param string $href The stylesheet's source URL. * @param string $media The stylesheet's media attribute. */ $tag = apply_filters( 'style_loader_tag', $tag, $handle, $href, $media ); if ( 'rtl' === $this->text_direction && isset( $obj->extra['rtl'] ) && $obj->extra['rtl'] ) { if ( is_bool( $obj->extra['rtl'] ) || 'replace' === $obj->extra['rtl'] ) { $suffix = isset( $obj->extra['suffix'] ) ? $obj->extra['suffix'] : ''; $rtl_href = str_replace( "{$suffix}.css", "-rtl{$suffix}.css", $this->_css_href( $src, $ver, "$handle-rtl" ) ); } else { $rtl_href = $this->_css_href( $obj->extra['rtl'], $ver, "$handle-rtl" ); } $rtl_tag = sprintf( "<link rel='%s' id='%s-rtl-css'%s href='%s'%s media='%s' />\n", $rel, esc_attr( $handle ), $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '', $rtl_href, $this->type_attr, esc_attr( $media ) ); /** This filter is documented in wp-includes/class-wp-styles.php */ $rtl_tag = apply_filters( 'style_loader_tag', $rtl_tag, $handle, $rtl_href, $media ); if ( 'replace' === $obj->extra['rtl'] ) { $tag = $rtl_tag; } else { $tag .= $rtl_tag; } } if ( $this->do_concat ) { $this->print_html .= $tag; if ( $inline_style_tag ) { $this->print_html .= $inline_style_tag; } } else { echo $tag; $this->print_inline_style( $handle ); } return true; } /** * Adds extra CSS styles to a registered stylesheet. * * @since 3.3.0 * * @param string $handle The style's registered handle. * @param string $code String containing the CSS styles to be added. * @return bool True on success, false on failure. */ public function add_inline_style( $handle, $code ) { if ( ! $code ) { return false; } $after = $this->get_data( $handle, 'after' ); if ( ! $after ) { $after = array(); } $after[] = $code; return $this->add_data( $handle, 'after', $after ); } /** * Prints extra CSS styles of a registered stylesheet. * * @since 3.3.0 * * @param string $handle The style's registered handle. * @param bool $display Optional. Whether to print the inline style * instead of just returning it. Default true. * @return string|bool False if no data exists, inline styles if `$display` is true, * true otherwise. */ public function print_inline_style( $handle, $display = true ) { $output = $this->get_data( $handle, 'after' ); if ( empty( $output ) || ! is_array( $output ) ) { return false; } if ( ! $this->do_concat ) { // Obtain the original `src` for a stylesheet possibly inlined by wp_maybe_inline_styles(). $inlined_src = $this->get_data( $handle, 'inlined_src' ); // If there's only one `after` inline style, and that inline style had been inlined, then use the $inlined_src // as the sourceURL. Otherwise, if there is more than one inline `after` style associated with the handle, // then resort to using the handle to construct the sourceURL since there isn't a single source. if ( count( $output ) === 1 && is_string( $inlined_src ) && strlen( $inlined_src ) > 0 ) { $source_url = esc_url_raw( $inlined_src ); } else { $source_url = rawurlencode( "{$handle}-inline-css" ); } $output[] = sprintf( '/*# sourceURL=%s */', $source_url ); } $output = implode( "\n", $output ); if ( ! $display ) { return $output; } printf( "<style id='%s-inline-css'%s>\n%s\n</style>\n", esc_attr( $handle ), $this->type_attr, $output ); return true; } /** * Overrides the add_data method from WP_Dependencies, to allow unsetting dependencies for conditional styles. * * @since 6.9.0 * * @param string $handle Name of the item. Should be unique. * @param string $key The data key. * @param mixed $value The data value. * @return bool True on success, false on failure. */ public function add_data( $handle, $key, $value ) { if ( ! isset( $this->registered[ $handle ] ) ) { return false; } if ( 'conditional' === $key ) { $this->registered[ $handle ]->deps = array(); } return parent::add_data( $handle, $key, $value ); } /** * Determines style dependencies. * * @since 2.6.0 * * @see WP_Dependencies::all_deps() * * @param string|string[] $handles Item handle (string) or item handles (array of strings). * @param bool $recursion Optional. Internal flag that function is calling itself. * Default false. * @param int|false $group Optional. Group level: level (int), no groups (false). * Default false. * @return bool True on success, false on failure. */ public function all_deps( $handles, $recursion = false, $group = false ) { $result = parent::all_deps( $handles, $recursion, $group ); if ( ! $recursion ) { /** * Filters the array of enqueued styles before processing for output. * * @since 2.6.0 * * @param string[] $to_do The list of enqueued style handles about to be processed. */ $this->to_do = apply_filters( 'print_styles_array', $this->to_do ); } return $result; } /** * Generates an enqueued style's fully-qualified URL. * * @since 2.6.0 * * @param string $src The source of the enqueued style. * @param string $ver The version of the enqueued style. * @param string $handle The style's registered handle. * @return string Style's fully-qualified URL. */ public function _css_href( $src, $ver, $handle ) { if ( ! is_bool( $src ) && ! preg_match( '|^(https?:)?//|', $src ) && ! ( $this->content_url && str_starts_with( $src, $this->content_url ) ) ) { $src = $this->base_url . $src; } if ( ! empty( $ver ) ) { $src = add_query_arg( 'ver', $ver, $src ); } /** * Filters an enqueued style's fully-qualified URL. * * @since 2.6.0 * * @param string $src The source URL of the enqueued style. * @param string $handle The style's registered handle. */ $src = apply_filters( 'style_loader_src', $src, $handle ); return esc_url( $src ); } /** * Whether a handle's source is in a default directory. * * @since 2.8.0 * * @param string $src The source of the enqueued style. * @return bool True if found, false if not. */ public function in_default_dir( $src ) { if ( ! $this->default_dirs ) { return true; } foreach ( (array) $this->default_dirs as $test ) { if ( str_starts_with( $src, $test ) ) { return true; } } return false; } /** * Processes items and dependencies for the footer group. * * HTML 5 allows styles in the body, grab late enqueued items and output them in the footer. * * @since 3.3.0 * * @see WP_Dependencies::do_items() * * @return string[] Handles of items that have been processed. */ public function do_footer_items() { $this->do_items( false, 1 ); return $this->done; } /** * Resets class properties. * * @since 3.3.0 */ public function reset() { $this->do_concat = false; $this->concat = ''; $this->concat_version = ''; $this->print_html = ''; } /** * Gets a style-specific dependency warning message. * * @since 6.9.1 * * @param string $handle Style handle with missing dependencies. * @param string[] $missing_dependency_handles Missing dependency handles. * @return string Formatted, localized warning message. */ protected function get_dependency_warning_message( $handle, $missing_dependency_handles ) { return sprintf( /* translators: 1: Style handle, 2: List of missing dependency handles. */ __( 'The style with the handle "%1$s" was enqueued with dependencies that are not registered: %2$s.' ), $handle, implode( wp_get_list_item_separator(), $missing_dependency_handles ) ); } }
💾 Save Changes