📁
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-smtp.php
0.45 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-snoopy.php
36.83 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-nav-menu.php
11.76 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-manager.php
198.38 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-dependencies.php
16.61 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-rewrite.php
62.19 KB
0644
🗑️
⬇️
✏️
🔒
📄
class-wp-role.php
2.46 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-url-pattern-prefixer.php
4.69 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-dependencies.php
0.36 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-utf8.php
19.1 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
🗑️
⬇️
✏️
🔒
📄
deprecated.php
188.13 KB
0644
🗑️
⬇️
✏️
🔒
📄
embed.php
38 KB
0644
🗑️
⬇️
✏️
🔒
📄
error-protection.php
4.02 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-atom-comments.php
5.38 KB
0644
🗑️
⬇️
✏️
🔒
📄
feed-atom.php
3.05 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
🗑️
⬇️
✏️
🔒
📄
meta.php
65 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-blogs.php
25.24 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-default-constants.php
4.81 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-default-filters.php
6.48 KB
0644
🗑️
⬇️
✏️
🔒
📄
ms-deprecated.php
21.25 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
🗑️
⬇️
✏️
🔒
📄
ms-settings.php
4.11 KB
0644
🗑️
⬇️
✏️
🔒
📄
nav-menu-template.php
25.38 KB
0644
🗑️
⬇️
✏️
🔒
📄
nav-menu.php
43.33 KB
0644
🗑️
⬇️
✏️
🔒
📄
option.php
102.57 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
🗑️
⬇️
✏️
🔒
📄
rewrite.php
19.03 KB
0644
🗑️
⬇️
✏️
🔒
📄
robots-template.php
5.06 KB
0644
🗑️
⬇️
✏️
🔒
📄
rss-functions.php
0.25 KB
0644
🗑️
⬇️
✏️
🔒
📄
rss.php
22.66 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
🗑️
⬇️
✏️
🔒
📄
sitemaps.php
3.16 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-templates.php
6.09 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-customize-panel.php
<?php /** * WordPress Customize Panel classes * * @package WordPress * @subpackage Customize * @since 4.0.0 */ // Don't load directly. if ( ! defined( 'ABSPATH' ) ) { die( '-1' ); } /** * Customize Panel class. * * A UI container for sections, managed by the WP_Customize_Manager. * * @since 4.0.0 * * @see WP_Customize_Manager */ #[AllowDynamicProperties] class WP_Customize_Panel { /** * Incremented with each new class instantiation, then stored in $instance_number. * * Used when sorting two instances whose priorities are equal. * * @since 4.1.0 * @var int */ protected static $instance_count = 0; /** * Order in which this instance was created in relation to other instances. * * @since 4.1.0 * @var int */ public $instance_number; /** * WP_Customize_Manager instance. * * @since 4.0.0 * @var WP_Customize_Manager */ public $manager; /** * Unique identifier. * * @since 4.0.0 * @var string */ public $id; /** * Priority of the panel, defining the display order of panels and sections. * * @since 4.0.0 * @var int */ public $priority = 160; /** * Capability required for the panel. * * @since 4.0.0 * @var string */ public $capability = 'edit_theme_options'; /** * Theme features required to support the panel. * * @since 4.0.0 * @var mixed[] */ public $theme_supports = ''; /** * Title of the panel to show in UI. * * @since 4.0.0 * @var string */ public $title = ''; /** * Description to show in the UI. * * @since 4.0.0 * @var string */ public $description = ''; /** * Auto-expand a section in a panel when the panel is expanded when the panel only has the one section. * * @since 4.7.4 * @var bool */ public $auto_expand_sole_section = false; /** * Customizer sections for this panel. * * @since 4.0.0 * @var array */ public $sections; /** * Type of this panel. * * @since 4.1.0 * @var string */ public $type = 'default'; /** * Active callback. * * @since 4.1.0 * * @see WP_Customize_Section::active() * * @var callable Callback is called with one argument, the instance of * WP_Customize_Section, and returns bool to indicate whether * the section is active (such as it relates to the URL currently * being previewed). */ public $active_callback = ''; /** * Constructor. * * Any supplied $args override class property defaults. * * @since 4.0.0 * * @param WP_Customize_Manager $manager Customizer bootstrap instance. * @param string $id A specific ID for the panel. * @param array $args { * Optional. Array of properties for the new Panel object. Default empty array. * * @type int $priority Priority of the panel, defining the display order * of panels and sections. Default 160. * @type string $capability Capability required for the panel. * Default `edit_theme_options`. * @type mixed[] $theme_supports Theme features required to support the panel. * @type string $title Title of the panel to show in UI. * @type string $description Description to show in the UI. * @type string $type Type of the panel. * @type callable $active_callback Active callback. * } */ public function __construct( $manager, $id, $args = array() ) { $keys = array_keys( get_object_vars( $this ) ); foreach ( $keys as $key ) { if ( isset( $args[ $key ] ) ) { $this->$key = $args[ $key ]; } } $this->manager = $manager; $this->id = $id; if ( empty( $this->active_callback ) ) { $this->active_callback = array( $this, 'active_callback' ); } self::$instance_count += 1; $this->instance_number = self::$instance_count; $this->sections = array(); // Users cannot customize the $sections array. } /** * Check whether panel is active to current Customizer preview. * * @since 4.1.0 * * @return bool Whether the panel is active to the current preview. */ final public function active() { $panel = $this; $active = call_user_func( $this->active_callback, $this ); /** * Filters response of WP_Customize_Panel::active(). * * @since 4.1.0 * * @param bool $active Whether the Customizer panel is active. * @param WP_Customize_Panel $panel WP_Customize_Panel instance. */ $active = apply_filters( 'customize_panel_active', $active, $panel ); return $active; } /** * Default callback used when invoking WP_Customize_Panel::active(). * * Subclasses can override this with their specific logic, or they may * provide an 'active_callback' argument to the constructor. * * @since 4.1.0 * * @return bool Always true. */ public function active_callback() { return true; } /** * Gather the parameters passed to client JavaScript via JSON. * * @since 4.1.0 * * @return array The array to be exported to the client as JSON. */ public function json() { $array = wp_array_slice_assoc( (array) $this, array( 'id', 'description', 'priority', 'type' ) ); $array['title'] = html_entity_decode( $this->title, ENT_QUOTES, get_bloginfo( 'charset' ) ); $array['content'] = $this->get_content(); $array['active'] = $this->active(); $array['instanceNumber'] = $this->instance_number; $array['autoExpandSoleSection'] = $this->auto_expand_sole_section; return $array; } /** * Checks required user capabilities and whether the theme has the * feature support required by the panel. * * @since 4.0.0 * @since 5.9.0 Method was marked non-final. * * @return bool False if theme doesn't support the panel or the user doesn't have the capability. */ public function check_capabilities() { if ( $this->capability && ! current_user_can( $this->capability ) ) { return false; } if ( $this->theme_supports && ! current_theme_supports( ...(array) $this->theme_supports ) ) { return false; } return true; } /** * Get the panel's content template for insertion into the Customizer pane. * * @since 4.1.0 * * @return string Content for the panel. */ final public function get_content() { ob_start(); $this->maybe_render(); return trim( ob_get_clean() ); } /** * Check capabilities and render the panel. * * @since 4.0.0 */ final public function maybe_render() { if ( ! $this->check_capabilities() ) { return; } /** * Fires before rendering a Customizer panel. * * @since 4.0.0 * * @param WP_Customize_Panel $panel WP_Customize_Panel instance. */ do_action( 'customize_render_panel', $this ); /** * Fires before rendering a specific Customizer panel. * * The dynamic portion of the hook name, `$this->id`, refers to * the ID of the specific Customizer panel to be rendered. * * @since 4.0.0 */ do_action( "customize_render_panel_{$this->id}" ); $this->render(); } /** * Render the panel container, and then its contents (via `this->render_content()`) in a subclass. * * Panel containers are now rendered in JS by default, see WP_Customize_Panel::print_template(). * * @since 4.0.0 */ protected function render() {} /** * Render the panel UI in a subclass. * * Panel contents are now rendered in JS by default, see WP_Customize_Panel::print_template(). * * @since 4.1.0 */ protected function render_content() {} /** * Render the panel's JS templates. * * This function is only run for panel types that have been registered with * WP_Customize_Manager::register_panel_type(). * * @since 4.3.0 * * @see WP_Customize_Manager::register_panel_type() */ public function print_template() { ?> <script type="text/html" id="tmpl-customize-panel-<?php echo esc_attr( $this->type ); ?>-content"> <?php $this->content_template(); ?> </script> <script type="text/html" id="tmpl-customize-panel-<?php echo esc_attr( $this->type ); ?>"> <?php $this->render_template(); ?> </script> <?php } /** * An Underscore (JS) template for rendering this panel's container. * * Class variables for this panel class are available in the `data` JS object; * export custom variables by overriding WP_Customize_Panel::json(). * * @see WP_Customize_Panel::print_template() * * @since 4.3.0 */ protected function render_template() { ?> <li id="accordion-panel-{{ data.id }}" class="accordion-section control-section control-panel control-panel-{{ data.type }}"> <h3 class="accordion-section-title"> <button type="button" class="accordion-trigger" aria-expanded="false" aria-controls="{{ data.id }}-content"> {{ data.title }} </button> </h3> <ul class="accordion-sub-container control-panel-content" id="{{ data.id }}-content"></ul> </li> <?php } /** * An Underscore (JS) template for this panel's content (but not its container). * * Class variables for this panel class are available in the `data` JS object; * export custom variables by overriding WP_Customize_Panel::json(). * * @see WP_Customize_Panel::print_template() * * @since 4.3.0 */ protected function content_template() { ?> <li class="panel-meta customize-info accordion-section <# if ( ! data.description ) { #> cannot-expand<# } #>"> <button class="customize-panel-back" tabindex="-1"><span class="screen-reader-text"> <?php /* translators: Hidden accessibility text. */ _e( 'Back' ); ?> </span></button> <div class="accordion-section-title"> <span class="preview-notice"> <?php /* translators: %s: The site/panel title in the Customizer. */ printf( __( 'You are customizing %s' ), '<strong class="panel-title">{{ data.title }}</strong>' ); ?> </span> <# if ( data.description ) { #> <button type="button" class="customize-help-toggle dashicons dashicons-editor-help" aria-expanded="false"><span class="screen-reader-text"> <?php /* translators: Hidden accessibility text. */ _e( 'Help' ); ?> </span></button> <# } #> </div> <# if ( data.description ) { #> <div class="description customize-panel-description"> {{{ data.description }}} </div> <# } #> <div class="customize-control-notifications-container"></div> </li> <?php } } /** WP_Customize_Nav_Menus_Panel class */ require_once ABSPATH . WPINC . '/customize/class-wp-customize-nav-menus-panel.php';
💾 Save Changes