Linux node5458.myfcloud.com 6.10.2-x86_64-linode165 #1 SMP PREEMPT_DYNAMIC Tue Jul 30 15:03:21 EDT 2024 x86_64
Apache
: 45.79.123.194 | : 52.15.58.94
16 Domain
7.4.33
addify5
shells.trxsecurity.org
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
Backdoor Scanner
Backdoor Create
Alfa Webshell
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
addify5 /
public_html /
VISIONSOFT /
wp-includes /
[ HOME SHELL ]
Name
Size
Permission
Action
ID3
[ DIR ]
drwxrwxrwx
IXR
[ DIR ]
drwxrwxrwx
PHPMailer
[ DIR ]
drwxrwxrwx
Requests
[ DIR ]
drwxrwxrwx
SimplePie
[ DIR ]
drwxrwxrwx
Text
[ DIR ]
drwxrwxrwx
assets
[ DIR ]
drwxrwxrwx
block-patterns
[ DIR ]
drwxrwxrwx
blocks
[ DIR ]
drwxrwxrwx
certificates
[ DIR ]
drwxrwxrwx
css
[ DIR ]
drwxrwxrwx
customize
[ DIR ]
drwxrwxrwx
fonts
[ DIR ]
drwxrwxrwx
images
[ DIR ]
drwxrwxrwx
js
[ DIR ]
drwxrwxrwx
pomo
[ DIR ]
drwxrwxrwx
random_compat
[ DIR ]
drwxrwxrwx
rest-api
[ DIR ]
drwxrwxrwx
sitemaps
[ DIR ]
drwxrwxrwx
sodium_compat
[ DIR ]
drwxrwxrwx
theme-compat
[ DIR ]
drwxrwxrwx
widgets
[ DIR ]
drwxrwxrwx
.htaccess
420
B
-rw-r--r--
admin-bar.php
30.96
KB
-rw-r--r--
atomlib.php
11.59
KB
-rw-r--r--
author-template.php
16.62
KB
-rw-r--r--
block-patterns.php
1.42
KB
-rw-r--r--
blocks.php
25.76
KB
-rw-r--r--
bookmark-template.php
12.22
KB
-rw-r--r--
bookmark.php
14.79
KB
-rw-r--r--
cache-compat.php
1.02
KB
-rw-r--r--
cache.php
9.28
KB
-rw-r--r--
canonical.php
30.65
KB
-rw-r--r--
capabilities.php
33.98
KB
-rw-r--r--
category-template.php
53.63
KB
-rw-r--r--
category.php
12.41
KB
-rw-r--r--
class-IXR.php
2.48
KB
-rw-r--r--
class-feed.php
529
B
-rw-r--r--
class-http.php
38.79
KB
-rw-r--r--
class-json.php
42.43
KB
-rw-r--r--
class-oembed.php
407
B
-rw-r--r--
class-phpass.php
7.15
KB
-rw-r--r--
class-phpmailer.php
664
B
-rw-r--r--
class-pop3.php
20.35
KB
-rw-r--r--
class-requests.php
29.14
KB
-rw-r--r--
class-simplepie.php
94.01
KB
-rw-r--r--
class-smtp.php
452
B
-rw-r--r--
class-snoopy.php
36.83
KB
-rw-r--r--
class-walker-category-dropdown...
2.08
KB
-rw-r--r--
class-walker-category.php
7.69
KB
-rw-r--r--
class-walker-comment.php
13.37
KB
-rw-r--r--
class-walker-nav-menu.php
8.45
KB
-rw-r--r--
class-walker-page-dropdown.php
2.25
KB
-rw-r--r--
class-walker-page.php
6.88
KB
-rw-r--r--
class-wp-admin-bar.php
16.46
KB
-rw-r--r--
class-wp-ajax-response.php
5.12
KB
-rw-r--r--
class-wp-block-list.php
4.37
KB
-rw-r--r--
class-wp-block-parser.php
14.86
KB
-rw-r--r--
class-wp-block-pattern-categor...
4.08
KB
-rw-r--r--
class-wp-block-patterns-regist...
4.74
KB
-rw-r--r--
class-wp-block-styles-registry...
4.62
KB
-rw-r--r--
class-wp-block-type-registry.p...
5.03
KB
-rw-r--r--
class-wp-block-type.php
5.88
KB
-rw-r--r--
class-wp-block.php
5.97
KB
-rw-r--r--
class-wp-comment-query.php
43.58
KB
-rw-r--r--
class-wp-comment.php
8.83
KB
-rw-r--r--
class-wp-customize-control.php
24.91
KB
-rw-r--r--
class-wp-customize-manager.php
196.37
KB
-rw-r--r--
class-wp-customize-nav-menus.p...
55.47
KB
-rw-r--r--
class-wp-customize-panel.php
10.16
KB
-rw-r--r--
class-wp-customize-section.php
10.72
KB
-rw-r--r--
class-wp-customize-setting.php
29.03
KB
-rw-r--r--
class-wp-customize-widgets.php
65.46
KB
-rw-r--r--
class-wp-date-query.php
34.51
KB
-rw-r--r--
class-wp-dependency.php
2.45
KB
-rw-r--r--
class-wp-editor.php
68.93
KB
-rw-r--r--
class-wp-embed.php
15.42
KB
-rw-r--r--
class-wp-error.php
4.84
KB
-rw-r--r--
class-wp-fatal-error-handler.p...
7.37
KB
-rw-r--r--
class-wp-feed-cache-transient....
2.5
KB
-rw-r--r--
class-wp-feed-cache.php
749
B
-rw-r--r--
class-wp-hook.php
13.72
KB
-rw-r--r--
class-wp-http-cookie.php
7.02
KB
-rw-r--r--
class-wp-http-curl.php
12.06
KB
-rw-r--r--
class-wp-http-encoding.php
6.4
KB
-rw-r--r--
class-wp-http-ixr-client.php
3.39
KB
-rw-r--r--
class-wp-http-proxy.php
5.73
KB
-rw-r--r--
class-wp-http-requests-hooks.p...
1.92
KB
-rw-r--r--
class-wp-http-requests-respons...
4.24
KB
-rw-r--r--
class-wp-http-response.php
2.88
KB
-rw-r--r--
class-wp-http-streams.php
15.73
KB
-rw-r--r--
class-wp-image-editor-gd.php
13.81
KB
-rw-r--r--
class-wp-image-editor-imagick....
23.32
KB
-rw-r--r--
class-wp-image-editor.php
13.77
KB
-rw-r--r--
class-wp-list-util.php
6.46
KB
-rw-r--r--
class-wp-locale-switcher.php
4.9
KB
-rw-r--r--
class-wp-locale.php
13.59
KB
-rw-r--r--
class-wp-matchesmapregex.php
1.76
KB
-rw-r--r--
class-wp-meta-query.php
27.22
KB
-rw-r--r--
class-wp-metadata-lazyloader.p...
5.26
KB
-rw-r--r--
class-wp-network-query.php
17.94
KB
-rw-r--r--
class-wp-network.php
12.09
KB
-rw-r--r--
class-wp-object-cache.php
13.22
KB
-rw-r--r--
class-wp-oembed-controller.php
6.63
KB
-rw-r--r--
class-wp-oembed.php
28.31
KB
-rw-r--r--
class-wp-paused-extensions-sto...
4.81
KB
-rw-r--r--
class-wp-post-type.php
19.08
KB
-rw-r--r--
class-wp-post.php
6.29
KB
-rw-r--r--
class-wp-query.php
131.8
KB
-rw-r--r--
class-wp-recovery-mode-cookie-...
6.31
KB
-rw-r--r--
class-wp-recovery-mode-email-s...
9.89
KB
-rw-r--r--
class-wp-recovery-mode-key-ser...
4.17
KB
-rw-r--r--
class-wp-recovery-mode-link-se...
3.29
KB
-rw-r--r--
class-wp-recovery-mode.php
11.11
KB
-rw-r--r--
class-wp-rewrite.php
59.42
KB
-rw-r--r--
class-wp-role.php
2.44
KB
-rw-r--r--
class-wp-roles.php
8.23
KB
-rw-r--r--
class-wp-session-tokens.php
7.26
KB
-rw-r--r--
class-wp-simplepie-file.php
2.27
KB
-rw-r--r--
class-wp-simplepie-sanitize-ks...
1.73
KB
-rw-r--r--
class-wp-site-query.php
27.88
KB
-rw-r--r--
class-wp-site.php
7.19
KB
-rw-r--r--
class-wp-tax-query.php
18.98
KB
-rw-r--r--
class-wp-taxonomy.php
12.28
KB
-rw-r--r--
class-wp-term-query.php
35.32
KB
-rw-r--r--
class-wp-term.php
5.14
KB
-rw-r--r--
class-wp-text-diff-renderer-in...
716
B
-rw-r--r--
class-wp-text-diff-renderer-ta...
16.48
KB
-rw-r--r--
class-wp-theme.php
50.35
KB
-rw-r--r--
class-wp-user-meta-session-tok...
2.92
KB
-rw-r--r--
class-wp-user-query.php
30.62
KB
-rw-r--r--
class-wp-user-request.php
2.14
KB
-rw-r--r--
class-wp-user.php
21.63
KB
-rw-r--r--
class-wp-walker.php
12.42
KB
-rw-r--r--
class-wp-widget-factory.php
2.56
KB
-rw-r--r--
class-wp-widget.php
17.49
KB
-rw-r--r--
class-wp-xmlrpc-server.php
205.52
KB
-rw-r--r--
class-wp.php
24.45
KB
-rw-r--r--
class.wp-dependencies.php
12.57
KB
-rw-r--r--
class.wp-scripts.php
18.04
KB
-rw-r--r--
class.wp-styles.php
10.62
KB
-rw-r--r--
comment-template.php
91.85
KB
-rw-r--r--
comment.php
122.66
KB
-rw-r--r--
compat.php
12.65
KB
-rw-r--r--
cron.php
32.06
KB
-rw-r--r--
date.php
406
B
-rw-r--r--
default-constants.php
10.02
KB
-rw-r--r--
default-filters.php
26.14
KB
-rw-r--r--
default-widgets.php
2.07
KB
-rw-r--r--
deprecated.php
118.65
KB
-rw-r--r--
embed-template.php
341
B
-rw-r--r--
embed.php
46.48
KB
-rw-r--r--
error-protection.php
3.3
KB
-rw-r--r--
error_log
167
B
-rwxrwxrwx
feed-atom-comments.php
5.32
KB
-rw-r--r--
feed-atom.php
3.03
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
3.97
KB
-rw-r--r--
feed-rss2.php
3.71
KB
-rw-r--r--
feed.php
22.12
KB
-rw-r--r--
formatting.php
304.25
KB
-rw-r--r--
functions.php
228.27
KB
-rw-r--r--
functions.wp-scripts.php
13.07
KB
-rw-r--r--
functions.wp-styles.php
8.11
KB
-rw-r--r--
general-template.php
153.99
KB
-rw-r--r--
http.php
21.86
KB
-rw-r--r--
kses.php
61.88
KB
-rw-r--r--
l10n.php
55.27
KB
-rw-r--r--
link-template.php
141.46
KB
-rw-r--r--
load.php
43.82
KB
-rw-r--r--
locale.php
162
B
-rw-r--r--
media-template.php
57.29
KB
-rw-r--r--
media.php
159.3
KB
-rw-r--r--
meta.php
58.17
KB
-rw-r--r--
ms-blogs.php
24.58
KB
-rw-r--r--
ms-default-constants.php
4.6
KB
-rw-r--r--
ms-default-filters.php
6.34
KB
-rw-r--r--
ms-deprecated.php
20.63
KB
-rw-r--r--
ms-files.php
2.58
KB
-rw-r--r--
ms-functions.php
88.26
KB
-rw-r--r--
ms-load.php
19.36
KB
-rw-r--r--
ms-network.php
3.57
KB
-rw-r--r--
ms-settings.php
4.03
KB
-rw-r--r--
ms-site.php
42.51
KB
-rw-r--r--
nav-menu-template.php
22.75
KB
-rw-r--r--
nav-menu.php
40.78
KB
-rw-r--r--
option.php
72.65
KB
-rw-r--r--
pluggable-deprecated.php
6.12
KB
-rw-r--r--
pluggable.php
99.86
KB
-rw-r--r--
plugin.php
31.66
KB
-rw-r--r--
post-formats.php
6.91
KB
-rw-r--r--
post-template.php
62.05
KB
-rw-r--r--
post-thumbnail-template.php
9
KB
-rw-r--r--
post.php
245.87
KB
-rw-r--r--
query.php
34.69
KB
-rw-r--r--
registration-functions.php
202
B
-rw-r--r--
registration.php
202
B
-rw-r--r--
rest-api.php
65.83
KB
-rw-r--r--
revision.php
21.46
KB
-rw-r--r--
rewrite.php
17.65
KB
-rw-r--r--
rss-functions.php
211
B
-rw-r--r--
rss.php
22.44
KB
-rw-r--r--
script-loader.php
89.87
KB
-rw-r--r--
session.php
258
B
-rw-r--r--
shortcodes.php
21.85
KB
-rw-r--r--
sitemaps.php
3.16
KB
-rw-r--r--
spl-autoload-compat.php
443
B
-rw-r--r--
taxonomy.php
158.32
KB
-rw-r--r--
template-loader.php
2.94
KB
-rw-r--r--
template.php
21.02
KB
-rw-r--r--
theme.php
120.92
KB
-rw-r--r--
update.php
25.57
KB
-rw-r--r--
user.php
129.65
KB
-rw-r--r--
vars.php
5.68
KB
-rw-r--r--
version.php
767
B
-rw-r--r--
widgets.php
57.75
KB
-rw-r--r--
wlwmanifest.xml
1.02
KB
-rwxrwxrwx
wp-db.php
103.12
KB
-rw-r--r--
wp-diff.php
647
B
-rw-r--r--
wp-feed.php
82
B
-rw-r--r--
wp-tmp.php
9.04
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : class.wp-scripts.php
<?php /** * Dependencies API: WP_Scripts class * * @since 2.6.0 * * @package WordPress * @subpackage Dependencies */ /** * Core class used to register scripts. * * @since 2.1.0 * * @see WP_Dependencies */ class WP_Scripts extends WP_Dependencies { /** * Base URL for scripts. * * 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 scripts. * * @since 2.6.0 * @var string */ public $default_version; /** * Holds handles of scripts which are enqueued in footer. * * @since 2.8.0 * @var array */ public $in_footer = array(); /** * Holds a list of script handles which will be concatenated. * * @since 2.8.0 * @var string */ public $concat = ''; /** * Holds a string which contains script 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 scripts and additional data if concatenation * is enabled. * * @since 2.8.0 * @var string */ public $print_html = ''; /** * Holds inline code if concatenation is enabled. * * @since 2.8.0 * @var string */ public $print_code = ''; /** * Holds a list of script handles which are not in the default directory * if concatenation is enabled. * * Unused in core. * * @since 2.8.0 * @var string */ public $ext_handles = ''; /** * Holds a string which contains handles and versions of scripts which * are not in the default directory if concatenation is enabled. * * Unused in core. * * @since 2.8.0 * @var string */ public $ext_version = ''; /** * List of default directories. * * @since 2.8.0 * @var array */ public $default_dirs; /** * Holds a string which contains the type attribute for script tag. * * If the current theme does not declare HTML5 support for 'script', * then it initializes as `type='text/javascript'`. * * @since 5.3.0 * @var string */ private $type_attr = ''; /** * Constructor. * * @since 2.6.0 */ public function __construct() { $this->init(); add_action( 'init', array( $this, 'init' ), 0 ); } /** * Initialize the class. * * @since 3.4.0 */ public function init() { if ( function_exists( 'is_admin' ) && ! is_admin() && function_exists( 'current_theme_supports' ) && ! current_theme_supports( 'html5', 'script' ) ) { $this->type_attr = " type='text/javascript'"; } /** * Fires when the WP_Scripts instance is initialized. * * @since 2.6.0 * * @param WP_Scripts $this WP_Scripts instance (passed by reference). */ do_action_ref_array( 'wp_default_scripts', array( &$this ) ); } /** * Prints scripts. * * Prints the scripts passed to it or the print queue. Also prints all necessary dependencies. * * @since 2.1.0 * @since 2.8.0 Added the `$group` parameter. * * @param string|string[]|false $handles Optional. Scripts to be printed: queue (false), * single script (string), or multiple scripts (array of strings). * Default false. * @param int|false $group Optional. Group level: level (int), no groups (false). * Default false. * @return string[] Handles of scripts that have been printed. */ public function print_scripts( $handles = false, $group = false ) { return $this->do_items( $handles, $group ); } /** * Prints extra scripts of a registered script. * * @since 2.1.0 * @since 2.8.0 Added the `$echo` parameter. * @deprecated 3.3.0 * * @see print_extra_script() * * @param string $handle The script's registered handle. * @param bool $echo Optional. Whether to echo the extra script * instead of just returning it. Default true. * @return bool|string|void Void if no data exists, extra scripts if `$echo` is true, * true otherwise. */ public function print_scripts_l10n( $handle, $echo = true ) { _deprecated_function( __FUNCTION__, '3.3.0', 'WP_Scripts::print_extra_script()' ); return $this->print_extra_script( $handle, $echo ); } /** * Prints extra scripts of a registered script. * * @since 3.3.0 * * @param string $handle The script's registered handle. * @param bool $echo Optional. Whether to echo the extra script * instead of just returning it. Default true. * @return bool|string|void Void if no data exists, extra scripts if `$echo` is true, * true otherwise. */ public function print_extra_script( $handle, $echo = true ) { $output = $this->get_data( $handle, 'data' ); if ( ! $output ) { return; } if ( ! $echo ) { return $output; } printf( "<script%s id='%s-js-extra'>\n", $this->type_attr, esc_attr( $handle ) ); // CDATA is not needed for HTML 5. if ( $this->type_attr ) { echo "/* <![CDATA[ */\n"; } echo "$output\n"; if ( $this->type_attr ) { echo "/* ]]> */\n"; } echo "</script>\n"; return true; } /** * Processes a script dependency. * * @since 2.6.0 * @since 2.8.0 Added the `$group` parameter. * * @see WP_Dependencies::do_item() * * @param string $handle The script'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; } if ( 0 === $group && $this->groups[ $handle ] > 0 ) { $this->in_footer[] = $handle; return false; } if ( false === $group && in_array( $handle, $this->in_footer, true ) ) { $this->in_footer = array_diff( $this->in_footer, (array) $handle ); } $obj = $this->registered[ $handle ]; 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; $cond_before = ''; $cond_after = ''; $conditional = isset( $obj->extra['conditional'] ) ? $obj->extra['conditional'] : ''; if ( $conditional ) { $cond_before = "<!--[if {$conditional}]>\n"; $cond_after = "<![endif]-->\n"; } $before_handle = $this->print_inline_script( $handle, 'before', false ); $after_handle = $this->print_inline_script( $handle, 'after', false ); if ( $before_handle ) { $before_handle = sprintf( "<script%s id='%s-js-before'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $before_handle ); } if ( $after_handle ) { $after_handle = sprintf( "<script%s id='%s-js-after'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $after_handle ); } if ( $before_handle || $after_handle ) { $inline_script_tag = $cond_before . $before_handle . $after_handle . $cond_after; } else { $inline_script_tag = ''; } $translations = $this->print_translations( $handle, false ); if ( $translations ) { $translations = sprintf( "<script%s id='%s-js-translations'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $translations ); } if ( $this->do_concat ) { /** * Filters the script loader source. * * @since 2.2.0 * * @param string $src Script loader source path. * @param string $handle Script handle. */ $srce = apply_filters( 'script_loader_src', $src, $handle ); if ( $this->in_default_dir( $srce ) && ( $before_handle || $after_handle || $translations ) ) { $this->do_concat = false; // Have to print the so-far concatenated scripts right away to maintain the right order. _print_scripts(); $this->reset(); } elseif ( $this->in_default_dir( $srce ) && ! $conditional ) { $this->print_code .= $this->print_extra_script( $handle, false ); $this->concat .= "$handle,"; $this->concat_version .= "$handle$ver"; return true; } else { $this->ext_handles .= "$handle,"; $this->ext_version .= "$handle$ver"; } } $has_conditional_data = $conditional && $this->get_data( $handle, 'data' ); if ( $has_conditional_data ) { echo $cond_before; } $this->print_extra_script( $handle ); if ( $has_conditional_data ) { echo $cond_after; } // A single item may alias a set of items, by having dependencies, but no source. if ( ! $src ) { if ( $inline_script_tag ) { if ( $this->do_concat ) { $this->print_html .= $inline_script_tag; } else { echo $inline_script_tag; } } return true; } if ( ! preg_match( '|^(https?:)?//|', $src ) && ! ( $this->content_url && 0 === strpos( $src, $this->content_url ) ) ) { $src = $this->base_url . $src; } if ( ! empty( $ver ) ) { $src = add_query_arg( 'ver', $ver, $src ); } /** This filter is documented in wp-includes/class.wp-scripts.php */ $src = esc_url( apply_filters( 'script_loader_src', $src, $handle ) ); if ( ! $src ) { return true; } $tag = $translations . $cond_before . $before_handle; $tag .= sprintf( "<script%s src='%s' id='%s-js'></script>\n", $this->type_attr, $src, esc_attr( $handle ) ); $tag .= $after_handle . $cond_after; /** * Filters the HTML script tag of an enqueued script. * * @since 4.1.0 * * @param string $tag The `<script>` tag for the enqueued script. * @param string $handle The script's registered handle. * @param string $src The script's source URL. */ $tag = apply_filters( 'script_loader_tag', $tag, $handle, $src ); if ( $this->do_concat ) { $this->print_html .= $tag; } else { echo $tag; } return true; } /** * Adds extra code to a registered script. * * @since 4.5.0 * * @param string $handle Name of the script to add the inline script to. * Must be lowercase. * @param string $data String containing the javascript to be added. * @param string $position Optional. Whether to add the inline script * before the handle or after. Default 'after'. * @return bool True on success, false on failure. */ public function add_inline_script( $handle, $data, $position = 'after' ) { if ( ! $data ) { return false; } if ( 'after' !== $position ) { $position = 'before'; } $script = (array) $this->get_data( $handle, $position ); $script[] = $data; return $this->add_data( $handle, $position, $script ); } /** * Prints inline scripts registered for a specific handle. * * @since 4.5.0 * * @param string $handle Name of the script to add the inline script to. * Must be lowercase. * @param string $position Optional. Whether to add the inline script * before the handle or after. Default 'after'. * @param bool $echo Optional. Whether to echo the script * instead of just returning it. Default true. * @return string|false Script on success, false otherwise. */ public function print_inline_script( $handle, $position = 'after', $echo = true ) { $output = $this->get_data( $handle, $position ); if ( empty( $output ) ) { return false; } $output = trim( implode( "\n", $output ), "\n" ); if ( $echo ) { printf( "<script%s id='%s-js-%s'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), esc_attr( $position ), $output ); } return $output; } /** * Localizes a script, only if the script has already been added. * * @since 2.1.0 * * @param string $handle Name of the script to attach data to. * @param string $object_name Name of the variable that will contain the data. * @param array $l10n Array of data to localize. * @return bool True on success, false on failure. */ public function localize( $handle, $object_name, $l10n ) { if ( 'jquery' === $handle ) { $handle = 'jquery-core'; } if ( is_array( $l10n ) && isset( $l10n['l10n_print_after'] ) ) { // back compat, preserve the code in 'l10n_print_after' if present. $after = $l10n['l10n_print_after']; unset( $l10n['l10n_print_after'] ); } foreach ( (array) $l10n as $key => $value ) { if ( ! is_scalar( $value ) ) { continue; } $l10n[ $key ] = html_entity_decode( (string) $value, ENT_QUOTES, 'UTF-8' ); } $script = "var $object_name = " . wp_json_encode( $l10n ) . ';'; if ( ! empty( $after ) ) { $script .= "\n$after;"; } $data = $this->get_data( $handle, 'data' ); if ( ! empty( $data ) ) { $script = "$data\n$script"; } return $this->add_data( $handle, 'data', $script ); } /** * Sets handle group. * * @since 2.8.0 * * @see WP_Dependencies::set_group() * * @param string $handle Name of the item. Should be unique. * @param bool $recursion Internal flag that calling function was called recursively. * @param int|false $group Optional. Group level: level (int), no groups (false). * Default false. * @return bool Not already in the group or a lower group. */ public function set_group( $handle, $recursion, $group = false ) { if ( isset( $this->registered[ $handle ]->args ) && 1 === $this->registered[ $handle ]->args ) { $grp = 1; } else { $grp = (int) $this->get_data( $handle, 'group' ); } if ( false !== $group && $grp > $group ) { $grp = $group; } return parent::set_group( $handle, $recursion, $grp ); } /** * Sets a translation textdomain. * * @since 5.0.0 * @since 5.1.0 The `$domain` parameter was made optional. * * @param string $handle Name of the script to register a translation domain to. * @param string $domain Optional. Text domain. Default 'default'. * @param string $path Optional. The full file path to the directory containing translation files. * @return bool True if the text domain was registered, false if not. */ public function set_translations( $handle, $domain = 'default', $path = null ) { if ( ! isset( $this->registered[ $handle ] ) ) { return false; } /** @var \_WP_Dependency $obj */ $obj = $this->registered[ $handle ]; if ( ! in_array( 'wp-i18n', $obj->deps, true ) ) { $obj->deps[] = 'wp-i18n'; } return $obj->set_translations( $domain, $path ); } /** * Prints translations set for a specific handle. * * @since 5.0.0 * * @param string $handle Name of the script to add the inline script to. * Must be lowercase. * @param bool $echo Optional. Whether to echo the script * instead of just returning it. Default true. * @return string|false Script on success, false otherwise. */ public function print_translations( $handle, $echo = true ) { if ( ! isset( $this->registered[ $handle ] ) || empty( $this->registered[ $handle ]->textdomain ) ) { return false; } $domain = $this->registered[ $handle ]->textdomain; $path = $this->registered[ $handle ]->translations_path; $json_translations = load_script_textdomain( $handle, $domain, $path ); if ( ! $json_translations ) { // Register empty locale data object to ensure the domain still exists. $json_translations = '{ "locale_data": { "messages": { "": {} } } }'; } $output = <<<JS ( function( domain, translations ) { var localeData = translations.locale_data[ domain ] || translations.locale_data.messages; localeData[""].domain = domain; wp.i18n.setLocaleData( localeData, domain ); } )( "{$domain}", {$json_translations} ); JS; if ( $echo ) { printf( "<script%s id='%s-js-translations'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $output ); } return $output; } /** * Determines script dependencies. * * @since 2.1.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 ) { $r = parent::all_deps( $handles, $recursion, $group ); if ( ! $recursion ) { /** * Filters the list of script dependencies left to print. * * @since 2.3.0 * * @param string[] $to_do An array of script dependency handles. */ $this->to_do = apply_filters( 'print_scripts_array', $this->to_do ); } return $r; } /** * Processes items and dependencies for the head group. * * @since 2.8.0 * * @see WP_Dependencies::do_items() * * @return string[] Handles of items that have been processed. */ public function do_head_items() { $this->do_items( false, 0 ); return $this->done; } /** * Processes items and dependencies for the footer group. * * @since 2.8.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; } /** * Whether a handle's source is in a default directory. * * @since 2.8.0 * * @param string $src The source of the enqueued script. * @return bool True if found, false if not. */ public function in_default_dir( $src ) { if ( ! $this->default_dirs ) { return true; } if ( 0 === strpos( $src, '/' . WPINC . '/js/l10n' ) ) { return false; } foreach ( (array) $this->default_dirs as $test ) { if ( 0 === strpos( $src, $test ) ) { return true; } } return false; } /** * Resets class properties. * * @since 2.8.0 */ public function reset() { $this->do_concat = false; $this->print_code = ''; $this->concat = ''; $this->concat_version = ''; $this->print_html = ''; $this->ext_version = ''; $this->ext_handles = ''; } }
Close